Face detection using division-generated haar-like features for illumination invariance
First Claim
1. A method for determining whether a portion of an image contains a face, comprising:
- determining a first value for a first region of an image, wherein the first region is within a particular portion of the image;
determining a second value for a second region of the image, wherein the second region is within the particular portion of the image and is adjacent to the first region;
generating a first feature value for a first feature, wherein generating the first feature value comprises determining a first ratio based at least in part upon the first value for the first region and the second value for the second region;
obtaining a first value range that is associated with the first feature, wherein first feature values within the first value range indicate a likelihood that a face is present;
determining whether the first feature value falls within the first value range;
in response to determining that the first feature value does not fall within the first value range, storing data that indicates that the particular portion of the image does not contain a face;
in response to determining that the first feature value does fall within the first value range;
determining a third value for a third region of the image, wherein the third region is within the particular portion of the image;
determining a fourth value for a fourth region of the image, wherein the fourth region is within the particular portion of the image and is adjacent to the third region;
generating a second feature value for a second feature, wherein generating the second feature value comprises;
determining a second ratio by dividing a first sum of a first subset of more than two region values computed for the image by a second sum of a second subset of the more than two region values computed for the image, wherein the first subset of the more than two region values is computed for different regions of the image than the second subset of the more than two region values is computed for and;
determining the second feature value based on the second ratio;
obtaining a second value range that is associated with the second feature, wherein the second value range is different from the first value range, and wherein second feature values within the second value range indicate a likelihood that a face is present;
determining whether the second feature value falls within the second value range; and
in response to determining that the second feature value does not fall within the second value range, storing data that indicates that the particular portion of the image does not contain a face;
wherein the method is performed by one or more computing devices.
3 Assignments
0 Petitions
Accused Products
Abstract
Faces in images are quickly detected with minimal memory resource usage. Instead of calculating a Haar-like feature value by subtracting the average pixel intensity value in one rectangular region from the average pixel intensity value in another, adjacent rectangular region, a face-detection system calculates that Haar-like feature value by dividing the average pixel intensity value in one such rectangular region by the average pixel intensity value in the other such adjacent rectangular region. Thus, each Haar-like value is calculated as a ratio of average pixel intensity values rather than as a difference between such average pixel intensity values. The feature values are calculated using this ratio-based technique both during the machine-learning procedure, in which the numerical ranges for features in known face-containing images are learned based on labeled training data, and during the classifier-applying procedure, in which an unlabeled image'"'"'s feature values are calculated and compared to the previously machine-learned numerical ranges.
117 Citations
28 Claims
-
1. A method for determining whether a portion of an image contains a face, comprising:
-
determining a first value for a first region of an image, wherein the first region is within a particular portion of the image; determining a second value for a second region of the image, wherein the second region is within the particular portion of the image and is adjacent to the first region; generating a first feature value for a first feature, wherein generating the first feature value comprises determining a first ratio based at least in part upon the first value for the first region and the second value for the second region; obtaining a first value range that is associated with the first feature, wherein first feature values within the first value range indicate a likelihood that a face is present; determining whether the first feature value falls within the first value range; in response to determining that the first feature value does not fall within the first value range, storing data that indicates that the particular portion of the image does not contain a face; in response to determining that the first feature value does fall within the first value range; determining a third value for a third region of the image, wherein the third region is within the particular portion of the image; determining a fourth value for a fourth region of the image, wherein the fourth region is within the particular portion of the image and is adjacent to the third region; generating a second feature value for a second feature, wherein generating the second feature value comprises; determining a second ratio by dividing a first sum of a first subset of more than two region values computed for the image by a second sum of a second subset of the more than two region values computed for the image, wherein the first subset of the more than two region values is computed for different regions of the image than the second subset of the more than two region values is computed for and; determining the second feature value based on the second ratio; obtaining a second value range that is associated with the second feature, wherein the second value range is different from the first value range, and wherein second feature values within the second value range indicate a likelihood that a face is present; determining whether the second feature value falls within the second value range; and in response to determining that the second feature value does not fall within the second value range, storing data that indicates that the particular portion of the image does not contain a face; wherein the method is performed by one or more computing devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer readable storage medium storing instructions which, when executed by or more processors, cause the one or more processors to perform operations comprising:
-
determining a first value for a first region of an image, wherein the first region is within a particular portion of the image; determining a second value for a second region of the image, wherein the second region is within the particular portion of the image and is adjacent to the first region; generating a first feature value for a first feature, wherein generating the first feature value comprises determining a first ratio based at least in part upon the first value for the first region and the second value for the second region; obtaining a first value range that is associated with the first feature, wherein first feature values within the first value range indicate a likelihood that a face is present; determining whether the first feature value falls within the first value range; in response to determining that the first feature value does not fall within the first value range, storing data that indicates that the particular portion of the image does not contain a face; in response to determining that the first feature value does fall within the first value range; determining a third value for a third region of the image, wherein the third region is within the particular portion of the image; determining a fourth value for a fourth region of the image, wherein the fourth region is within the particular portion of the image and is adjacent to the third region; generating a second feature value for a second feature, wherein generating the second feature value comprises; determining a second ratio by dividing a first sum of a first subset of more than two region values computed for the image by a second sum of a second subset of the more than two region values computed for the image, wherein the first subset of the more than two region values is computed for different regions of the image than the second subset of the more than two region values is computed for and; determining the second feature value based on the second ratio; obtaining a second value range that is associated with the second feature, wherein the second value range is different from the first value range, and wherein second feature values within the second value range indicate a likelihood that a face is present; determining whether the second feature value falls within the second value range; and in response to determining that the second feature value does not fall within the second value range, storing data that indicates that the particular portion of the image does not contain a face. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A device comprising:
-
one or more storages capable of storing one or more images and other data; and a face detector configured to perform operations comprising; accessing an image stored in the one or more storages; determining a first value for a first region of the image, wherein the first region is within a particular portion of the image; determining a second value for a second region of the image, wherein the second region is within the particular portion of the image and is adjacent to the first region; generating a first feature value for a first feature, wherein generating the first feature value comprises determining a first ratio based at least in part upon the first value for the first region and the second value for the second region; obtaining from the one or more storages a first value range that is associated with the first feature, wherein first feature values within the first value range indicate a likelihood that a face is present; determining whether the first feature value falls within the first value range; in response to determining that the first feature value does not fall within the first value range, storing data into the one or more storages that indicates that the particular portion of the image does not contain a face; in response to determining that the first feature value does fall within the first value range; determining a third value for a third region of the image, wherein the third region is within the particular portion of the image; determining a fourth value for a fourth region of the image, wherein the fourth region is within the particular portion of the image and is adjacent to the third region; generating a second feature value for a second feature, wherein generating the second feature value comprises; determining a second ratio by dividing a first sum of a first subset of more than two region values computed for the image by a second sum of a second subset of the more than two region values computed for the image, wherein the first subset of the more than two region values is computed for different regions of the image than the second subset of the more than two region values is computed for and; determining the second feature value based on the second ratio; obtaining from the one or more storages a second value range that is associated with the second feature, wherein the second value range is different from the first value range, and wherein second feature values within the second value range indicate a likelihood that a face is present; determining whether the second feature value falls within the second value range; and in response to determining that the second feature value does not fall within the second value range, storing data into the one or more storages that indicates that the particular portion of the image does not contain a face. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28)
-
Specification