IP Library Granted Patent US 9,690,979
Granted Patent B2
US 9,690,979 · App. 14/153,867 · Granted Jun 27, 2017

Techniques for enabling or establishing the use of face recognition algorithms

Inventors: Salih Burak Gokturk (Mountain View, CA); Dragomir Anguelov (San Francisco, CA); Lorenzo Torresani (San Francisco, CA); Vincent O. Vanhoucke (San Francisco, CA); Munjal Shah (Los Altos Hills, CA); Diem Thanh Vu (Mountain View, CA); Kuang-chih Lee (Mountain View, CA)
Assignee: Google Inc.
G06K9/00281G06K9/6255G06T7/75G06T2200/04G06T2207/30201
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,690,979
App. No.
14/153,867
Granted
Jun 27, 2017
Kind
B2
Abstract

Embodiments described herein facilitate or enhance the implementation of image recognition processes which can perform recognition on images to identify objects and/or faces by class or by people.

Claims (64)

1. A computer implemented method comprising:

identifying an object in an image;

obtaining, from a database of predetermined object models, an object model for the object identified in the image, the object model comprising a plurality of three dimensional points from which a three dimensional surface may be computed;

determining, using the image and the object model, an orientation and one or more occluded features of the object in the image;

augmenting the object model to compensate for the one or more occluded features of the object in the image, wherein augmenting the object model comprises:

augmenting an intensity value associated with at least one of the plurality of three dimensional points; and

rotating the object model; and

providing the augmented object model as output.

2. The method of claim 1 , wherein identifying an object in an image comprises:

identifying one or more image markers included in the image, each image marker comprising one or more predetermined image features;

determining that at least some of the one or more image markers match predefined markers of the object model; and

identifying the object in the image as an object represented by the object model.

3. The method of claim 2 , wherein determining an orientation of the object in the image comprises:

determining, for each of the one or more image markers, a relationship between the image marker and a matching predefined marker matched by the image marker; and

using each relationship to determine the orientation of the object in the image.

4. The method of claim 1 , wherein augmenting an intensity value associated with at least one of the plurality of three dimensional points comprises:

using one or more intensity values of points in the image to augment intensity values of respective three dimensional points.

5. The method of claim 1 , further comprising:

prior to augmenting the object model, orienting the object model to pose the object model at an orientation that matches the orientation of the object in the image.

6. The method of claim 1 , wherein rotating the object model comprises rotating the object model to a predefined orientation.

7. The method of claim 1 , wherein providing the augmented object model as output comprises providing the augmented object model as output to an object recognition system.

8. A system comprising:

one or more data processing apparatus; and

a data storage device storing instructions that, when executed by the one or more data processing apparatus, cause the one or more data processing apparatus to perform operations comprising:

identifying an object in an image;

obtaining, from a database of predetermined object models, an object model for the object identified in the image, the object model comprising a plurality of three dimensional points from which a three dimensional surface may be computed;

determining, using the image and the object model, an orientation and one or more occluded features of the object in the image;

augmenting the object model to compensate for the one or more occluded features of the object in the image, wherein augmenting the object model comprises:

augmenting an intensity value associated with at least one of the plurality of three dimensional points; and

rotating the object model; and

providing the augmented object model as output.

9. The system of claim 8 , wherein identifying an object in an image comprises:

identifying one or more image markers included in the image, each image marker comprising one or more predetermined image features;

determining that at least some of the one or more image markers match predefined markers of the object model; and

identifying the object in the image as an object represented by the object model.

10. The system of claim 9 , wherein determining an orientation of the object in the image comprises:

determining, for each of the one or more image markers, a relationship between the image marker and a matching predefined marker matched by the image marker; and

using each relationship to determine the orientation of the object in the image.

11. The system of claim 8 , wherein augmenting an intensity value associated with at least one of the plurality of three dimensional points comprises:

using one or more intensity values of points in the image to augment intensity values of respective three dimensional points.

12. The system of claim 8 , wherein the operations further comprise:

prior to augmenting the object model, orienting the object model to pose the object model at an orientation that matches the orientation of the object in the image.

13. The system of claim 8 , wherein rotating the object model comprises rotating the object model to a predefined orientation.

14. The system of claim 8 , wherein providing the augmented object model as output comprises providing the augmented object model as output to an object recognition system.

15. A non-transitory computer readable medium storing instructions that, when executed by one or more data processing apparatus, cause the one or more data processing apparatus to perform operations comprising:

identifying an object in an image;

obtaining, from a database of predetermined object models, an object model for the object identified in the image, the object model comprising a plurality of three dimensional points from which a three dimensional surface may be computed;

determining, using the image and the object model, an orientation and one or more occluded features of the object in the image;

augmenting the object model to compensate for the one or more occluded features of the object in the image, wherein augmenting the object model comprises:

augmenting an intensity value associated with at least one of the plurality of three dimensional points; and

rotating the object model; and

providing the augmented object model as output.

16. The non-transitory computer readable medium of claim 15 , wherein identifying an object in an image comprises:

identifying one or more image markers included in the image, each image marker comprising one or more predetermined image features;

determining that at least some of the one or more image markers match predefined markers of the object model; and

identifying the object in the image as an object represented by the object model.

17. The non-transitory computer readable medium of claim 16 , wherein determining an orientation of the object in the image comprises:

determining, for each of the one or more image markers, a relationship between the image marker and a matching predefined marker matched by the image marker; and

using each relationship to determine the orientation of the object in the image.

18. The non-transitory computer readable medium of claim 15 , wherein augmenting an intensity value associated with at least one of the plurality of three dimensional points comprises:

using one or more intensity values of points in the image to augment intensity values of respective three dimensional points.

19. The non-transitory computer readable medium of claim 15 , wherein the operations further comprise:

prior to augmenting the object model, orienting the object model to pose the object model at an orientation that matches the orientation of the object in the image.

20. The method of claim 1 , wherein determining the one or more occluded features of the object in the image comprises identifying one or more surface-ray intersections in the image.

Assignments (5)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY DATA PREVIOUSLY RECORDED ON REEL 032494 FRAME 0175. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Mar 28, 2014
From: GOKTURK, SALIH BURAK; ANGUELOV, DRAGOMIR; TORRESANI, LORENZO; VANHOUCKE, VINCENT; SHAH, MUNJAL; VU, DIEM; LEE, KUANG-CHIH
To: RIYA, INC.
Reel/Frame 032553/0812 →
CHANGE OF NAME Recorded Mar 24, 2014
From: RIYA, INC.
To: LIKE.COM
Reel/Frame 032504/0033 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2014
From: LIKE.COM
To: GOOGLE INC.
Reel/Frame 032504/0061 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2014
From: GOKTURK, SALIH BURAK; ANGUELOV, DRAGOMIR; TORRESANI, LORENZO; VANHOUCKE, VINCENT O.; SHAH, MUNJAL; VU, DIEM THANH; LEE, KUANG-CHIH
To: RIYA, INC.
Reel/Frame 032494/0175 →
Continuity (6)
Continuation 12962494 · Dec 7, 2010
Division 11685106 · Mar 12, 2007
Provisional Application 60781691 · Mar 12, 2006
Provisional Application 60781690 · Mar 12, 2006
Provisional Application 60781966 · Mar 12, 2006
Related Publication 20150199560A1 · Jul 16, 2015