IP Library › Granted Patent US 11,080,316
Granted Patent B1
US 11,080,316 · App. 15/607,199 · Granted Aug 3, 2021

Context-inclusive face clustering

Inventors: Ranju Das (Seattle, WA); Wei Xia (Seattle, WA); Meng Wang (Seattle, WA); Xiaofeng Ren (Seattle, WA)
Assignee: AMAZON TECHNOLOGIES, INC.
G06F16/337G06F16/164G06F16/434
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 11,080,316
App. No.
15/607,199
Granted
Aug 3, 2021
Kind
B1
Abstract

People represented in multiple images can be recognized using accurate facial similarity metrics, where the accuracy can be further improved using contextual information. A set of models can be trained to process image data, and facial features can be extracted from a face region of an image and passed to the trained models. Resulting feature vectors can be concatenated and the dimensionality reduced to generate a highly accurate feature vector that is representative of the face in the image. The feature vector can be used to locate similar vectors in a multi-dimensional vector space, where similarity can be determined based at least in part upon the distance between the endpoints of those vectors in the vector space. Context information from the image can be used to adjust the similarity determination. Similar vectors can be clustered together such that the faces represented by those images are associated with the same person.

Claims (69)

1. A computer-implemented method, comprising:

determining, in an input image, a face region containing a representation of a face of a person;

identifying a set of facial features from the face region of the input image;

processing the set of facial features using a set of trained face recognition models to generate individual feature vectors that are multi-dimensional and that are representative of the face;

concatenating the individual feature vectors to generate a representative feature vector;

generating a facial feature vector by reducing dimensionality of the representative feature vector;

determining an existing feature vector, for a face of an identified user, that is within a similarity threshold distance of the facial feature vector in a multi-dimensional vector space;

adjusting a similarity value between the facial feature vector and the existing feature vector based at least in part upon context information obtained with the input image;

clustering, using a hierarchical agglomerative clustering algorithm, the facial feature vector with the existing feature vector as corresponding to the identified user; and

providing information for the identified user based on the clustering.

2. The computer-implemented method of claim 1 , further comprising:

generating a respective individual feature vector of the individual feature vectors using an individual one of the trained face recognition models; and

performing principal component analysis (PCA) on the representative feature vector to reduce the dimensionality of the representative feature vector and arrive at the facial feature vector.

3. The computer-implemented method of claim 1 , further comprising:

clustering the facial feature vector with the existing feature vector using a k-nearest neighbors (kNN)-based search in the multi-dimensional vector space.

4. The computer-implemented method of claim 1 , further comprising:

determining at least one identity annotation included with the context information to reduce a search space in the multi-dimensional vector space.

5. The computer-implemented method of claim 1 , further comprising:

determining the context information for the input image, the context information including at least one of a timestamp, a geo-location, an estimated age of the person, an estimated gender of the person, hair color or shape information, clothing information, or user annotation; and

adjusting the similarity value using a weighted combination of values from the context information.

6. A computer-implemented method, comprising:

generating a representative feature vector by a concatenation of the individual feature vectors corresponding to a face region of an input image;

determining a facial feature vector from the representative feature vector by reducing dimensionality of the representative feature vector;

locating at least one existing feature vector in a multi-dimensional feature space that is within a threshold distance from the facial feature vector;

comparing contextual information for the input image and the at least one existing feature vector;

correlating the facial feature vector with the at least one existing feature vector based at least in part upon the facial feature vector satisfying at least one similarity criterion with respect to the at least one existing feature vector as determined using the contextual information; and

providing identity information for a person represented in the input image based at least in part upon the identity information being associated with the at least one existing feature vector.

7. The computer-implemented method of claim 6 , further comprising:

processing the input image using a face detection algorithm; and

determining, with at least a minimum confidence, that the input image includes a representation of a human face before determining the facial feature vector.

8. The computer-implemented method of claim 6 , further comprising:

identifying a set of facial features in a face region of the input image using a set of trained face recognition models; and

generating the individual feature vectors for the set of facial features using each of the trained face recognition models.

9. The computer-implemented method of claim 6 , further comprising:

performing dimensionality reduction on the representative feature vector, using principal component analysis (PCA), to arrive at the facial feature vector for the face represented in the input image.

10. The computer-implemented method of claim 8 , wherein each of the trained face recognition models uses a different face recognition function.

11. The computer-implemented method of claim 6 , further comprising:

determining an identifying user annotation associated with the input image; and

reducing a search space in the multi-dimensional feature space based at least in part upon the identifying user annotation.

12. The computer-implemented method of claim 6 , further comprising:

determining the context information for the input image, the context information including at least one of a timestamp, a geo-location, an estimated age of the person, an estimated gender of the person, hair color or shape information, clothing information, or user annotation; and

adjusting the similarity value using a weighted combination of values from the context information.

13. The computer-implemented method of claim 6 , further comprising:

determining a bounding box for the face region of an input image, wherein at least a portion of the context information is determined using pixel data outside the bounding box in the input image.

14. The computer-implemented method of claim 6 , further comprising:

clustering the facial feature vector with the at least one existing feature vector using a k-nearest neighbors (kNN)-based search in the multi-dimensional vector space.

15. The computer-implemented method of claim 6 , further comprising:

exposing an application programming interface (API) for obtaining the identity information for the input image.

16. A system, comprising:

at least one processor; and

memory including instructions that, when executed by the at least one processor, cause the system to:

generate a representative feature vector by a concatenation of the individual feature vectors corresponding to a face region of an input image;

determine a facial feature vector from the representative feature vector by reducing dimensionality of the representative feature vector;

locate at least one existing feature vector in a multi-dimensional feature space that is within a threshold distance from the facial feature vector;

compare contextual information for the input image and the at least one existing feature vector;

correlate the facial feature vector with the at least one existing feature vector in response to the facial feature vector satisfying at least one similarity criterion with respect to the at least one existing feature vector based at least in part upon the contextual information; and

provide identity information for a person represented in the input image based at least in part upon the identity information being associated with the at least one existing feature vector.

17. The system of claim 16 , wherein the instructions when executed further cause the system to:

process the input image using a face detection algorithm; and

determine, with at least a minimum confidence, that the input image includes a representation of a human face before determining the facial feature vector.

18. The system of claim 16 , wherein the instructions when executed further cause the system to:

identify a set of facial features in a face region of the input image using a set of trained face recognition models;

generate the individual feature vectors for the set of facial features using each of the trained face recognition models; and

perform dimensionality reduction on the representative feature vector, using principal component analysis (PCA), to arrive at the facial feature vector for the face represented in the input image.

19. The system of claim 16 , wherein the instructions when executed further cause the system to:

determine the context information for the input image; and

adjust the similarity value using a weighted combination of values from the context information.

20. The system of claim 16 , wherein the instructions when executed further cause the system to:

cluster the facial feature vector with the at least one existing feature vector using a k-nearest neighbors (kNN)-based search in the multi-dimensional vector space.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 7, 2017
From: DAS, RANJU; XIA, WEI; WANG, MENG; REN, XIAOFENG
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 042639/0758 →
Cited By (5)
US 12,235,822 US 12,579,779 US 12,640,904 US 12,664,817 US 12,711,808