US 12,456,321 B2
Memory-efficient feature descriptors for localization and classification of identity documents
Daniil Pavlovich Matalov, Moscow (RU); Elena Evgenyevna Limonova, Moscow (RU); Natalya Sergeevna Skoryukina, Moskovskay obl. (RU); and Vladimir Viktorovich Arlazarov, Moscow (RU)
Assigned to Smart Engines Service LLC, Moscow (RU)
Filed by Smart Engines Service LLC, Moscow (RU)
Filed on Nov. 11, 2022, as Appl. No. 17/985,309.
Claims priority of application No. RU2021133778 (RU), filed on Nov. 19, 2021.
Prior Publication US 2023/0162519 A1, May 25, 2023
Int. Cl. G06V 30/413 (2022.01); G06V 10/32 (2022.01); G06V 10/70 (2022.01); G06V 10/764 (2022.01); G06V 10/774 (2022.01); G06V 30/414 (2022.01); G06V 30/418 (2022.01)
CPC G06V 30/413 (2022.01) [G06V 10/32 (2022.01); G06V 10/774 (2022.01); G06V 10/87 (2022.01); G06V 30/414 (2022.01); G06V 30/418 (2022.01)] 16 Claims
OG exemplary drawing
 
1. A method comprising using at least one hardware processor to:
select a plurality of classifiers from a plurality of available classifiers so as not to exceed a maximum threshold number of classifiers, wherein selecting the plurality of classifiers from the plurality of available classifiers so as not to exceed the maximum threshold number of classifiers comprises
computing an accuracy for each of the plurality of available classifiers,
sorting the plurality of available classifiers in order of computed accuracies,
adding one of the plurality of available classifiers having a highest computed accuracy to an output set, and
adding one or more additional ones of the plurality of available classifiers to the output set, based on an evaluation of a correlation to one or more classifiers already in the output set, until either the output set contains the maximum threshold number of classifiers or all of the plurality of available classifiers have been evaluated;
extract a plurality of patches comprising keypoints in an input image of a document;
for each of the plurality of patches,
construct a gradient map for a plurality of gradient orientations within the patch,
apply the plurality of classifiers to a plurality of rectangles in the gradient map,
wherein each of the plurality of classifiers outputs a value, and
generate a feature descriptor based on the values output by the plurality of classifiers; and
compare the generated feature descriptors to each of a plurality of templates to match the document to one of the plurality of templates for document localization and classification.