IP Library Granted Patent US 9,946,932
Granted Patent B2
US 9,946,932 · App. 14/968,524 · Granted Apr 17, 2018

Systems and methods for image-feature-based recognition

Inventors: Philipp Holzschneider (Berlin, DE); Thorsten Otto Wolfgang Magers (Berlin, DE); Hannes Priehn (Berlin, DE)
Assignee: Geenee GmbH
G06K9/00671G06F17/3028G06F17/30256G06K9/00013G06K9/6215G06K9/6232G06T11/60
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 9,946,932
App. No.
14/968,524
Granted
Apr 17, 2018
Kind
B2
Abstract

Methods and systems are described herein that allow a user to capture a single image snapshot from video, print, or the world around him or her, and obtain additional information relating to the media itself or items of interest displayed in the snapshot. A fingerprint of the snapshot is used as a query and transmitted to the server. Image Feature-Based Recognition, as described herein, uses a feature index to identify a smaller set of candidate matches from a larger database of images based on the fingerprint. Novel methods and systems using a distance metric and a radical hash table design exploit probabilistic effects and allow distinct image features to be preferred over redundant ones, allowing only the more distinctive data points to remain resident within the index, yielding a lean index that can be quickly used in the identification process.

Claims (75)

1. A server for determining information relating to an image captured by a mobile device, the server comprising a processor for executing one or more modules comprising:

a query receiving module for receiving, from the mobile device, a query including a plurality of query image feature descriptors associated with the captured image;

a candidate feature descriptors retrieval module for:

determining, for at least one of the query image feature descriptors, a plurality of first addresses using a plurality of functions, and

determining, within an address space associated with the plurality of first addresses at a reference image database, a number of duplicate reference image feature descriptors, wherein a plurality of duplicates of at least one reference image feature descriptor is mapped using the plurality of functions to at least one second address at the reference image database;

a candidate images retrieval module for selecting one or more reference image feature descriptors based on the determined number of duplicate reference image feature descriptors;

wherein, based on the selected reference image feature descriptors, the server is further configured to perform the steps of:

determining information associated with the selected reference image feature descriptors, and

providing the information associated with the selected reference image feature descriptors to the mobile device.

2. The server of claim 1 , wherein the processor is further configured to execute a hash table management module for:

providing, for each of the plurality of first addresses, one or more references to one or more of the reference image feature descriptors based on a relationship between each of the plurality of first addresses and the least one second address;

and wherein the number of duplicate reference image feature descriptors is determined based on the relationship.

3. The server of claim 2 , wherein the hash table management module further comprises a collision resolving module for:

using a random function to calculate the at least one second address.

4. The server of claim 2 , wherein the hash table management module further comprises an overflowing handling module for:

determining whether the at least one second address is associated with a first reference image feature descriptor when the at least one second address is calculated;

responsive to determining that the at least one second address is associated with the first reference image feature descriptor:

disassociating the at least one second address from the first reference image feature descriptor; and

associating the at least one second address with a second reference image feature descriptor.

5. The server of claim 1 , wherein the processor is further configured to execute the candidate images retrieval module for:

ranking one or more sets of reference image descriptors, each set being associated with a combination of the determined numbers of duplicate reference image feature descriptors; and

selecting the set of reference image feature descriptors based on a result of the ranking.

6. The server of claim 1 , wherein the processor is further configured to execute the candidate images retrieval module for:

excluding, from the selection of the one or more reference image feature descriptors, reference image feature descriptors associated with a calculated number of duplicate reference image feature descriptors that is below a predefined threshold.

7. The server of claim 1 , wherein the reference image descriptors are stored within the reference image database based on a hash table including a plurality of hash buckets, each hash bucket being associated with an address within the address space; wherein the plurality of functions are configured to map one or more feature descriptors to one or more hash buckets out of the same set of hash buckets.

8. The server of claim 1 , wherein the processor is further configured to execute a replicable query cache module for:

determining whether the query image feature descriptors included in the query matches with one or more prior query image feature descriptors received at a prior time;

if the query feature descriptors included in the query do not match with the one or more prior query image feature descriptors:

storing the query feature descriptors as part of the one or more prior query image feature descriptors, and

providing the query feature descriptors to the candidate feature descriptors retrieval module;

and

if the query feature descriptors included in the query matches with the one or more prior query image feature descriptors, providing information associated with the matching one or more prior query image feature descriptors to the mobile device.

9. The server of claim 1 , wherein the processor is further configured to perform the steps of:

receiving data associated with media material through an interface; and

providing the data to the mobile device as part of the information associated with the selected reference image feature descriptors.

10. A computer-implemented method for determining information relating to an image captured by a mobile device, the method comprising:

receiving, from the mobile device, a query including a plurality of query image feature descriptors associated with the captured image;

determining, for at least one of the query image feature descriptors, a plurality of first addresses using a plurality of functions;

determining, within an address space associated with the plurality of first addresses at a reference image database, a number of duplicate reference image feature descriptors, wherein a plurality of duplicates of at least one reference image feature descriptor is mapped using the plurality of functions to at least a second address at the reference image database;

selecting one or more reference image feature descriptors based on the determined number of duplicate reference image feature descriptors;

determining information associated with the selected reference image feature descriptors; and

providing the information associated with the selected reference image feature descriptors to the mobile device.

11. The method of claim 10 , further comprising:

providing, for each of the plurality of first addresses, one or more references to one or more of the reference image feature descriptors based on a relationship between each of the plurality of first addresses and the least one second address;

and wherein the number of duplicate reference image feature descriptors is determined based on the relationship.

12. The method of claim 11 , further comprising:

using a random function to calculate the at least one second address.

13. The method of claim 11 , further comprising:

determining whether the at least one second address is associated with a first reference image feature descriptor when the at least one second address is calculated;

responsive to determining that the at least one first address is associated with the first reference image feature descriptor:

disassociating the at least one first address from the first reference image feature descriptor; and

associating the at least one first address with a second reference image feature descriptor.

14. The method of claim 10 , further comprising:

ranking one or more sets of reference image descriptors, each set being associated with a combination of the determined numbers of duplicate reference image feature descriptors; and

selecting the set of reference image feature descriptors based on a result of the ranking.

15. The method of claim 10 , further comprising:

excluding, from the selection of the one or more reference image feature descriptors, reference image feature descriptors associated with a calculated number of duplicate reference image feature descriptors that is below a predefined threshold.

16. The method of claim 10 , wherein the reference image descriptors are stored within the reference image database based on a hash table including a plurality of hash buckets, each hash bucket being associated with an address within the address space; wherein the plurality of functions are configured to map one or more feature descriptors to one or more hash buckets out of the same set of hash buckets.

17. The method of claim 10 , further comprising:

determining whether the query image feature descriptors included in the query matches with one or more prior query image feature descriptors received at a prior time;

if the query feature descriptors included in the query do not match with the one or more prior query image feature descriptors:

storing the query feature descriptors as part of the one or more prior query image feature descriptors, and

providing the query feature descriptors to the candidate feature descriptors retrieval module;

and

if the query feature descriptors included in the query matches with the one or more prior query image feature descriptors, providing information associated with the matching one or more prior query image feature descriptors to the mobile device.

18. The method of claim 10 , further comprising:

receiving data associated with media material through an interface; and

providing the data to the mobile device as part of the information associated with the selected reference image feature descriptors.

19. A non-transitory computer-readable storage medium having stored thereon a program containing instructions that, when executed by a computer, cause the computer to execute a method for determining information relating to an image captured by a mobile device, the method comprising:

receiving, from the mobile device, a query including a plurality of query image feature descriptors associated with the captured image;

determining, for at least one of the query image feature descriptors, a plurality of first addresses using a plurality of functions;

determining, within an address space associated with the plurality of first addresses at a reference image database, a number of duplicate reference image feature descriptors, wherein a plurality of duplicates of at least one reference image feature descriptor is mapped using the plurality of functions to at least a second address at the reference image database;

selecting one or more reference image feature descriptors based on the determined number of duplicate reference image feature descriptors;

determining information associated with the selected reference image feature descriptors; and

providing the information associated with the selected reference image feature descriptors to the mobile device.

Assignments (10)
CHANGE OF ADDRESS Recorded Jul 10, 2025
From: IRDB HOLDINGS, INC.
To: IRDB HOLDINGS, INC.
Reel/Frame 071913/0236 →
NUNC PRO TUNC ASSIGNMENT Recorded May 30, 2025
From: GEENEE HOLDINGS, INC.
To: GEENEE, INC.
Reel/Frame 071272/0912 →
NUNC PRO TUNC ASSIGNMENT Recorded May 30, 2025
From: GEENEE GMBH
To: GEENEE HOLDINGS, INC.
Reel/Frame 071272/0875 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2025
From: GEENEE INVESTORS, LLC
To: GEENEE, INC.
Reel/Frame 071272/0919 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2025
From: GEENEE, INC.
To: IRDB LLC
Reel/Frame 071272/0923 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2025
From: IRDB LLC
To: IRDB HOLDINGS, INC.
Reel/Frame 071272/0938 →
RELEASE OF SECURITY INTEREST Recorded Oct 18, 2022
From: ROGAL, ANDREW
To: GEENEE, INC.
Reel/Frame 062967/0319 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2022
From: HOLZSCHNEIDER, PHILIPP; MAGERS, THORSTEN OTTO WOLFGANG; PRIEHN, HANNES
To: GEENEE UG
Reel/Frame 058675/0337 →
CHANGE OF NAME Recorded Mar 6, 2018
From: GEENEE UG
To: GEENEE GMBH
Reel/Frame 046358/0746 →
SECURITY INTEREST Recorded Jan 12, 2016
From: GEENEE, INC.
To: ROGAL, ANDREW
Reel/Frame 037460/0645 →
Continuity (4)
Continuation 14692234 · Apr 21, 2015
Continuation 14619045 · Feb 10, 2015
Provisional Application 61937859 · Feb 10, 2014
Related Publication 20160110605A1 · Apr 21, 2016