For identifying a similarity of a facial image to a textual description or another facial image, the inventors herein utilize a master feature vector descriptor which is an encoding of the attributes and features present in the facial image.
The inventors herein have conceived determining an improved error distance value utilizing a multi-attribute loss module. As result, the error distance is back-propagated through neural networks in a computer vision neural network system to update weight values in the neural networks to improve the accuracy of an encoding/determination of a master feature vector descriptor.
A computer vision neural network system in accordance with an exemplary embodiment is provided. The computer vision neural network system includes a computer having a facial segmentation module, a feature extraction module, a semantic segmentation masking module, a facial features vectors module, a normalization module, and a multi-attribute loss module. The facial segmentation module receives a facial image and predicts a plurality of facial regions in the facial image. The facial segmentation module generates a plurality of masks based on the plurality of facial regions. Each mask of the plurality of masks is associated with a respective facial region of the plurality of facial regions. The feature extraction neural network receives the facial image having the face therein, and applies a plurality of learned filter banks to the facial image to generate a plurality of feature maps. The semantic segmentation masking module applies each mask of the plurality of masks to the plurality of feature maps to obtain at least a first plurality of feature maps corresponding to a first facial region, and a second plurality of feature maps corresponding to a second facial region. The plurality of facial regions include the first and second facial regions. The facial features vectors module has at least first and second neural networks that receive the first and second plurality of feature maps, respectively, from the semantic segmentation masking module. The first neural network performing dimensionality reduction of the first plurality of feature maps associated with the first facial region to generate a first feature vector descriptor associated with the first facial region. The second neural network performing dimensionality reduction of the second plurality of feature maps associated with the second facial region to generate a second feature vector descriptor associated with the second facial region. The normalization module normalizes the first and second vector descriptors to generate first and second normalized feature vector descriptors. The multi-attribute loss module concatenates the first and second normalized feature vector descriptors to generate a master feature vector descriptor. The multi-attribute loss module estimates an error distance between the master feature vector descriptor and a plurality of class center vector descriptors. Each class center vector descriptor is a mean of a plurality of master feature vector descriptors associated with a soft-biometric class in a plurality of faces in a plurality of facial images.
Referring to
The computer 30 is operably coupled to the input device 50, the display device 60, and image database 40. The computer 30 includes a facial segmentation module 350, a feature extraction neural network 360, a semantic segmentation masking module 370, a facial features vectors module 380, a normalization module 390, a multi-attribute loss module 400, and a localizer and classifier module 410.
The input device 50 is provided to receive user selections for controlling operation of the computer 30. The display device 60 is provided to display images in response to instructions received from the computer 30. The image database 40 is provided to store a plurality of facial images therein.
An advantage of the computer vision neural network system 20 is that the system 20 determines an error distance utilizing a novel multi-attribute loss function. As a result, the system 20 can utilize the error distance to update weighting values in neural nodes in neural networks in the system 20 to more accurately determine master feature vector descriptors that describe the attributes and features in facial images.
For purposes of understanding, a few technical terms used herein will now be explained.
The term “dimensionality reduction” is a process of reducing the number of random variables under consideration, by obtain a set of principle variables.
The term “feature” is a recognizable pattern that is consistently present in a facial image. An exemplary feature is a hair style.
The term “attribute” is an aggregate of a set of features determined by a plurality of features in a facial image. An exemplary attribute is hair.
The term “class” is a subset or value of an attribute. An exemplary soft-biometric class is black hair.
Referring to
At step 200, the facial segmentation module 350 (shown in
At step 202, the facial segmentation module 350 generates a background mask 500 (shown in
At step 204, the facial segmentation module 350 sends the background mask 500, the hair mask 502, the face-skin mask 504, the eyes mask 506, the eyebrows mask 508, the lips mask 510, and the nose mask 512 associated with the facial image 340 to the semantic segmentation masking module 370 (shown in
At step 206, the feature extraction neural network 360 (shown in
At step 208, the feature extraction neural network 360 sends the plurality of feature maps 460 associated with the facial image 340 to the semantic segmentation masking module 370 (shown in
At step 210, the semantic segmentation masking module 370 applies the background mask 500 (shown in
At step 212, the semantic segmentation masking module 370 applies the hair mask 502 (shown in
At step 220, the semantic segmentation masking module 370 applies the face-skin mask 504 (shown in
At step 222, the semantic segmentation masking module 370 applies the eyes mask 506 (shown in
At step 224, the semantic segmentation masking module 370 applies the eyebrows mask 508 (shown in
At step 226, the semantic segmentation masking module 370 applies the lips mask 510 (shown in
At step 228, the semantic segmentation masking module 370 applies the nose mask 512 (shown in
At step 230, the semantic segmentation masking module 370 (shown in
At step 232, the first neural network 700 (shown in
At step 240, the second neural network 702 (shown in
At step 242, the third neural network 704 (shown in
At step 244, the fourth neural network 706 (shown in
At step 246, the fifth neural network 708 (shown in
At step 248, the sixth neural network 710 (shown in
At step 250, the seventh neural network 712 (shown in
At step 252, the normalization module 390 normalizes the first, second, third, fourth, fifth, sixth, and seventh feature vector descriptors 750, 752, 754, 756, 758, 760, 762 to generate first, second, third, fourth, fifth, sixth, and seventh normalized feature vector descriptors 800, 802, 804, 806, 808, 810, 812, respectively (shown in
At step 254, the multi-attribute loss module 400 concatenates the first, second, third, fourth, fifth, sixth, and seventh normalized feature vector descriptors 800, 802, 804, 806, 808, 810, 812 to generate a master feature vector descriptor 900 (shown in
At step 256, the multi-attribute loss module 400 estimates an error distance between the master feature vector descriptor 900 and a plurality of class center vector descriptors. Each class center vector descriptor is a mean of a plurality of master feature vector descriptors associated with a soft-biometric class in a plurality of faces in a plurality of facial images. The error distance is calculated utilizing the following equation:
LMAL=Σi=1NΣj=1M(√{square root over ((fi−cj))}2
wherein:
At step 258, the computer 30 has a plurality of neural nodes. Each neural node has at least a first weight value. The computer 30 determines an error derivative for the first weight with respect to the error distance utilizing a chain rule equation. After step 258, the method advances to step 260.
At step 260, the computer 30 determines an updated first weight value utilizing a fraction of the error derivative and the first weight value, wherein the updated weight value allows the computer 30 to more accurately determine subsequent master feature vector descriptors. After step 260, the method advances to step 262.
At step 262, the localizer and classifier module 410 predicts a plurality of probability values for a plurality of classes belonging to respective soft biometric attributes present in the face of the facial image 340.
Referring to
The backpropagation process takes place in a backward pass and is complementary to a forward pass. The process for updating weight values in a neural network 1000 includes the following steps (i), the forward pass, (ii) calculating the error distance, (iii) calculating the error derivative at each neural node, and (iv) updating the weight values with the error derivative.
The forward pass involves the processing of the input data by passing it through a series of computations. The results or prediction of the neural network 1000 is calculated at the end of the forward pass.
The error distance is calculated utilizing the equation in step 256 discussed above.
The neural network 1000 includes an input layer, one hidden layer, and an output layer. The input layer includes a neural node 1002. The hidden layer includes neural nodes 1004, 1006 having weight values W12, W13, respectively. The output layer includes a neural node 1008 having weight values W24, W34.
Each layer performs the following computation:
yj=f(xj)
xj=Wijyt+Bij
Where,
The error derivative or the gradient of the loss function at each neural node is calculated by using the chain rule of differential equations. The chain rule allows the system 20 to determine the error derivative for a weight value wij with respect to the error distance E. The chain rule is explained as follows:
Consider two functions Z and M for some input such that:
Z=f(M)
M=f(x)
The derivative
could be calculated by the chain rule as follows:
With respect to the backpropagation diagram shown in
Once the error derivatives are calculated the weight values are updated by the following rule:
where
is an error derivative/gradient of weight values wif with respect to the error distance E.
While the claimed invention has been described in detail in connection with only a limited number of embodiments, it should be readily understood that the invention is not limited to such disclosed embodiments. Rather, the claimed invention can be modified to incorporate any number of variations, alterations, substitutions or equivalent arrangements not heretofore described, but which are commensurate with the spirit and scope of the invention. Additionally, while various embodiments of the claimed invention have been described, it is to be understood that aspects of the invention may include only some of the described embodiments. Accordingly, the claimed invention is not to be seen as limited by the foregoing description.
This application claims priority to U.S. Provisional Patent Application No. 62/729,194 filed on Sep. 10, 2018, the entire contents of which are hereby incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
8571332 | Kumar | Oct 2013 | B2 |
20150125049 | Taigman | May 2015 | A1 |
20160307071 | Perronnin | Oct 2016 | A1 |
20190318156 | Wu | Oct 2019 | A1 |
20190347388 | Jiang | Nov 2019 | A1 |
Number | Date | Country | |
---|---|---|---|
20200082154 A1 | Mar 2020 | US |
Number | Date | Country | |
---|---|---|---|
62729194 | Sep 2018 | US |