IP Library Granted Patent US 9,058,660
Granted Patent B2
US 9,058,660 · App. 13/683,872 · Granted Jun 16, 2015

Feature searching based on feature quality information

Inventors: Benjamin William Hamming (Spokane, WA); Shawn David Poindexter (Coeur d'Alene, ID)
Assignee: GRAVITY JACK, INC.
G06T7/0044G06K9/00671
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,058,660
App. No.
13/683,872
Granted
Jun 16, 2015
Kind
B2
Abstract

Techniques for searching in an image for a particular block of pixels that represents a feature are described herein. The techniques may include generating feature quality information indicating a quality of the feature with respect to blocks of pixels of the image. The feature quality information may be utilized to locate a block of pixels in a subsequent image that corresponds to the feature. For example, the feature quality information may be utilized to determine whether a block of pixels that has a threshold amount of similarity to the feature actually corresponds to the feature.

Claims (41)

1. A method comprising:

under control of a computing device configured with computer-executable instructions,

capturing, with a camera of the computing device, a first image of an environment in which the computing device is located;

detecting a feature in the first image, the feature being represented by a particular block of pixels;

generating a similarity value for each of a plurality of blocks of pixels of the first image, each similarity value indicating a similarity of one of the plurality of blocks of pixels of the first image to the particular block of pixels of the first image;

identifying one or more characteristics of the similarity values for the plurality of blocks of pixels of the first image;

generating a time-invariant value from the one or more characteristics, the time-invariant value indicating a quality of the feature of the first image;

capturing a second image with the camera;

searching the second image to find a block of pixels that has a threshold amount of similarity to the particular block of pixels of the first image; and

upon finding the block of pixels in the second image that has a threshold amount of similarity to the particular block of pixels of the first image, determining whether the block of pixels of the second image corresponds to the block of pixels of the first image based at least in part on the time-invariant value.

2. The method of claim 1 , wherein the one or more characteristics of the similarity values of the plurality of blocks of pixels of the first image comprise an average similarity value of the similarity values of the plurality of blocks of pixels.

3. The method of claim 1 , wherein the one or more characteristics of the similarity values of the plurality of blocks of pixels of the first image comprise a largest similarity value of blocks of pixels of the plurality of blocks of pixels that are located at a predetermined distance to the particular block of pixels.

4. The method of claim 1 , wherein the one or more characteristics of the similarity values of the plurality of blocks of pixels of the first image comprise a second largest similarity value of blocks of pixels of the plurality of blocks of pixels of that are located within a first predetermined distance to the particular block of pixels and that are located outside a second predetermined distance to the particular block of pixels.

5. The method of claim 1 , wherein the one or more characteristics of the similarity values of the plurality of blocks of pixels of the first image comprise an average similarity value of blocks of pixels of the plurality of blocks of pixels that are located along a path in the first image of greatest similarity to the particular block of pixels, the path beginning at the particular block of pixels.

6. The method of claim 1 , wherein generating the time-invariant value comprises utilizing machine learning with the similarity values of the plurality of blocks of pixels of the first image.

7. A method comprising:

under control of a computing device configured with computer-executable instructions,

identifying a similarity of a particular block of pixels of a first image to other blocks of pixels of the first image, the particular block of pixels representing a feature of the first image;

utilizing machine learning to generate feature quality information comprising a time-invariant value that indicates a quality of the feature of the first image, the feature quality information being generated based on the similarity of the particular block of pixels of the first image to the other blocks of pixels of the first image;

searching in a second image to find a block of pixels that has a threshold amount of similarity to the particular block of pixels; and

determining whether the block of pixels of the second image corresponds to the particular block of pixels of the first image based at least in part on the feature quality information.

8. The method of claim 7 , wherein the feature quality information is generated based on an average similarity of the other blocks of pixels of the first image to the particular block of pixels of the first image.

9. The method of claim 7 , wherein the feature quality information is generated based on a largest similarity, to the particular block of pixels, of blocks of pixels of the other blocks of pixels that are located at a predetermined distance to the particular block of pixels.

10. The method of claim 7 , wherein the feature quality information is generated based on a second largest similarity, to the particular block of pixels, of blocks of pixels of the other blocks of pixels that are located within a first predetermined distance to the particular block of pixels and that are located outside a second predetermined distance to the particular block of pixels.

11. The method of claim 7 , wherein the feature quality information is generated based on an average similarity value of blocks of pixels of the first image that are located along a path in the first image of greatest similarity to the particular block of pixels.

12. The method of claim 7 , wherein utilizing machine learning comprises utilizing logistic regression with the similarity of the particular block of pixels of the first image to the other blocks of pixels of the first image.

13. The method of claim 7 , wherein determining whether the block of pixels of the second image corresponds to the particular block of pixels of the first image comprises:

generating a confidence value for the block of pixels of the second image based on the feature quality information and a similarity value of the block of pixels of the second image to the particular block of pixels of the first image; and

determining whether the confidence value satisfies one or more criteria.

14. One or more computer-readable storage media storing computer-readable instructions that, when executed, instruct one or more processors to perform the method of claim 7 .

15. A system comprising:

one or more processors; and

memory, communicatively coupled to the one or more processors, storing executable instructions that, when executed by the one or more processors, cause the one or more processors to perform acts comprising:

identifying a similarity of a particular block of pixels of a first image to other blocks of pixels of the first image, the particular block of pixels representing a feature of the first image;

utilizing machine learning to generate feature quality information comprising a time-invariant value that indicates a quality of the feature of the first image, the feature quality information being generated based on the similarity of the particular block of pixels of the first image to the other blocks of pixels of the first image;

searching in a second image to find a block of pixels that has a threshold amount of similarity to the particular block of pixels; and

determining whether the block of pixels of the second image corresponds to the particular block of pixels of the first image based at least in part on the feature quality information.

16. The system of claim 15 , wherein the feature quality information for the first image is generated based on an average similarity of the other blocks of pixels of the first image to the particular block of pixels of the first image.

17. The system of claim 15 , wherein the feature quality information for the first image is generated based on a largest similarity, to the particular block of pixels, of blocks of pixels of the other blocks of pixels that are located at a predetermined distance to the particular block of pixels.

18. The system of claim 15 , wherein the feature quality information for the first image is generated based on a second largest similarity, to the particular block of pixels, of blocks of pixels of the other blocks of pixels that are located within a first predetermined distance to the particular block of pixels and that are located outside a second predetermined distance to the particular block of pixels.

19. The system of claim 15 , wherein the feature quality information for the first image is generated based on an average similarity value of blocks of pixels of the first image that are located along a path in the first image of greatest similarity to the particular block of pixels.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2013
From: HAMMING, BENJAMIN WILLIAM; POINDEXTER, SHAWN DAVID
To: GRAVITY JACK, INC.
Reel/Frame 030336/0044 →
Continuity (1)
Related Publication 20140140623A1 · May 22, 2014