IP Library Granted Patent US 12676026
Granted Patent B1
US 12676026 · App. 17/957,317 · Granted Jul 7, 2026

Partial image search

Inventors: Georges Abou-Rjeili (Montreal, CA); Artem Voronin (Montreal, CA)
Assignee: Jumio Corporation
G06V40/394G06V10/761G06V30/413G06V40/33H04L9/3236
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12676026
App. No.
17/957,317
Granted
Jul 7, 2026
Kind
B1
Abstract

The disclosure includes a system and method for partial image search including receiving, using one or more processors, an input image representing a first image of an identification document; preprocessing, using the one or more processors, the input image; determining, using the one or more processors, a signature based on the preprocessed image; obtaining, using the one or more processors, information associated with other images, the information associated with the other images including signatures associated with the other images; and determining, using the one or more processors, whether the input image is similar to one or more of the other images based at least in part on their respective signatures.

Claims (48)

1 . A method comprising:

receiving, using one or more processors, an input image representing a first image of an identification document;

preprocessing, using the one or more processors, the input image, wherein preprocessing the input image includes segmenting the input image into a document portion and a background portion, the document portion representing the identification document in the input image, and the background portion representing a surrounding of the identification document in the input image and nonoverlapping with the document portion;

determining, using the one or more processors, at least one signature based on the preprocessed input image, wherein the at least one signature includes one or more of:

a first signature determined by applying a first set of hash functions to the document portion resulting in a first set of hashes and concatenating the first set of hashes, the first signature including the concatenated first set of hashes, and

a second signature determined by applying a second set of hash functions to the background portion resulting in a second set of hashes and concatenating the second set of hashes, the second signature including the concatenated second set of hashes;

obtaining, using the one or more processors, information associated with other images, the information associated with the other images including signatures associated with the other images;

determining, using the one or more processors, a set of hash-based similarity measures between one or more of:

the concatenated first set of hashes associated with the document portion of the input image and concatenated hashes included in signatures associated with document portions of the other images, and

the concatenated second set of hashes associated with the background portion of the input image and concatenated hashes included in signatures associated with background portions of the other images; and

determining, using the one or more processors, whether one or more of (1) the document portion of the input image is similar to another document portion in the other images and (2) the background portion of the input image is similar to another background portion in the other images, wherein similarity is determined based at least in part on a hash-based similarity measure between concatenated hashes included in their respective signatures.

2 . The method of claim 1 , wherein preprocessing the input image includes:

rectifying the input image; and

applying one or more transforms.

3 . The method of claim 1 further comprising one or more of:

rejecting the input image, flagging the input image as fraudulent, subjecting a user to additional verification, subjecting the user to a higher level of scrutiny, rejecting the user, subjecting a user request to additional verification, subjecting the user request to a higher level of scrutiny, and rejecting the user request.

4 . The method of claim 1 , wherein the first set of hash functions includes one or more of an average hash function, a perceptual hash function, a difference hash function, and a perceptual hash function; and the second set of hash functions includes one or more of the average hash function, the perceptual hash function, the difference hash function, and the perceptual hash function.

5 . The method of claim 1 , wherein the set of hash-based similarity measures includes a cosine similarity.

6 . The method of claim 5 , wherein determining whether the input image is similar to one or more of the other images is based at least in part on the cosine similarity between their respective concatenated hashes satisfying a threshold.

7 . The method of claim 5 , wherein determining whether the input image is similar to one or more of the other images is based at least in part on the cosine similarity between their respective concatenated hashes and a set of other features, wherein the other features include one or more of a number of similar other images and a subtype associated with the identification document in the input image.

8 . The method of claim 1 , wherein the set of hash-based similarity measures includes a hamming distance.

9 . The method of claim 1 , wherein determining the set of hash-based similarity measures is based on a machine learning model.

10 . The method of claim 9 , wherein the machine learning model is based on a random forest or neural network.

11 . A system comprising:

one or more processors; and

a memory, the memory storing instructions that, when executed by the one or more processors, cause the system to:

receive an input image representing a first image of an identification document;

preprocess the input image, wherein preprocessing the input image includes segmenting the input image into a document portion and a background portion, the document portion representing the identification document in the input image, and the background portion representing a surrounding of the identification document in the input image and nonoverlapping with the document portion;

determine at least one signature based on the preprocessed input image, wherein the at least one signature includes one or more of:

a first signature by applying a first set of hash functions to document portion resulting in a first set of hashes and concatenating the first set of hashes, the first signature including the concatenated first set of hashes, and

a second signature determined by applying a second set of hash functions to the background portion resulting in a second set of hashes and concatenating the second set of hashes, the second signature including the concatenated second set of hashes;

obtain information associated with other images, the information associated with the other images including signatures associated with the other images;

determine a set of hash-based similarity measures between one or more of:

the concatenated first set of hashes associated with the document portion of the input image and concatenated hashes included in signatures associated with document portions of the other images, and

the concatenated second set of hashes associated with the background portion of the input image and concatenated hashes included in signatures associated with background portions of the other images; and

determine whether one or more of (1) the background document portion of the input image is similar to another document portion in the other images and (2) the background portion of the input image is similar to another background portion in the other images, wherein similarity is determined based at least in part on a hash-based similarity measure between concatenated sets of hashes included in their respective signatures.

12 . The system of claim 11 , wherein the instructions for preprocessing the input image further cause the one or more processors to:

rectify the input image; and

apply one or more transforms.

13 . The system of claim 11 , wherein the instructions further cause the one or more processors to one or more of:

reject the input image, flag the input image as fraudulent, subject a user to additional verification, subject the user to a higher level of scrutiny, reject the user, subject a user request to additional verification, subject the user request to a higher level of scrutiny, and reject the user request.

14 . The system of claim 11 , wherein the first set of hash functions includes one or more of an average hash function, a perceptual hash function, a difference hash function, and a perceptual hash function; and the second set of hash functions includes one or more of the average hash function, the perceptual hash function, the difference hash function, and the perceptual hash function.

15 . The system of claim 11 , wherein the set of hash-based similarity measures includes a cosine similarity.

16 . The system of claim 15 , wherein determining whether the input image is similar to one or more of the other images is based at least in part on the cosine similarity between their respective concatenated hashes satisfying a threshold.

17 . The system of claim 15 , wherein determining whether the input image is similar to one or more of the other images is based at least in part on the cosine similarity between their respective concatenated hashes and a set of other features, wherein the other features include one or more of a number of similar other images and a subtype associated with the identification document in the input image.

18 . The system of claim 11 , wherein the set of hash-based similarity measures includes a hamming distance.

19 . The system of claim 11 , wherein determining the set of hash-based similarity measures is based on a machine learning model.

20 . The system of claim 19 , wherein the machine learning model is based on a random forest or neural network.