1. Field of the Invention
Embodiments of the present invention relate to face identification, and more particularly, to a face identification apparatus, medium, and method enhancing the precision of face identification regardless of view variations.
2. Description of the Related Art
Face recognition, which is an application field for face identification technologies, has been widely used for various identification purposes because of its user-friendly characteristics, even though it is considered less precise than fingerprint recognition or iris recognition. One of the biggest advantages of face recognition is that a face recognition system can almost unconsciously, e.g., automatically, recognize people faces, even from a distance. However, face recognition systems may not be able to precisely recognize people's faces when receiving non-frontal face images. Therefore, in order to guarantee superior face recognition capability of the face recognition system, a considerable number of face images, taken from as many views as possible under various conditions should be gathered, and a training face image database (DB) of those face images should be constructed. However, it is difficult to obtain an arbitrary person's face images with such various poses.
Thus, there is a need for a face identification operation that can improve the precision of face identification regardless of view variations.
Embodiments of the present invention set forth a face identification apparatus, medium, and method that can improve the precision of face identification regardless of view variations.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification apparatus, including a plurality of independent face identification units, with each of the face identification units generating a confidence based on a similarity between a rotated face image and a frontal face image, and a confidence combination unit to combine confidences generated by the plurality of face identification units.
The plurality of face identification units may include a first face identification unit, to transform a view of the rotated face image into a frontal image view, and to calculate a first confidence between feature vectors of the frontal face image and feature vectors of the view-transformed rotated face image corresponding to the frontal image view, and a second face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and to calculate a second confidence between the linear transformation function obtained feature vectors of the rotated face image and the linear transformation function obtained feature vectors of the frontal face image.
The first face identification unit may include a subspace transformation unit to transform the rotated face image and the frontal face image on a subspace using a subspace transformation function, a view transformation unit to transform a view of the subspace transformed rotated face image into the frontal view, using a view transformation function, and a discrimination unit to obtain the feature vectors of the view-transformed rotated face image and the feature vectors of the frontal face image using a discrimination function to calculate the first confidence.
The first face identification unit may further include a training unit to analyze training face images to generate the subspace transformation function, the view transformation function, and the discrimination function.
The second face identification unit may include a training unit to analyze training face images to generate the view-specific local linear transformation function, and a discrimination unit to obtain the obtained feature vectors of the rotated face image and the obtained feature vectors of the frontal face image using the view-specific local linear transformation function to calculate the second confidence.
The plurality of face identification units may include a third face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and to calculate a third confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image.
The third face identification unit may further include a training unit to analyze training face images to generate the kernel discrimination function, and a discrimination unit, which obtains the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image, using a kernel discrimination function, to calculate the third confidence.
The plurality of face identification units may further include a fourth face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a fourth confidence between the fourth face identification unit obtained feature vectors of the rotated face image and the fourth face identification unit obtained feature vectors of the view-transformed frontal face image.
The fourth face identification unit may include an average lookup table database, which is a database of view-specific average lookup tables obtained by rotating a plurality of three-dimensional face models by a predetermined angle, generating a plurality of two-dimensional face images having a predetermined view, and averaging coordinates of correspondence points between the two-dimensional face images and the respective frontal face images, a view transformation unit to transform the frontal face image into the rotated face image view with reference to the view-specific average lookup tables, and discrimination unit to obtain the fourth face identification unit obtained feature vectors of the view-transformed rotated face image and the fourth face identification unit obtained feature vectors of the frontal face image using a discrimination function to calculate the fourth confidence.
The fourth face identification unit may further include a training unit to analyze training face images with reference to the view-specific average lookup tables to generate the discrimination function.
The plurality of face identification units may still further include a third face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a third confidence between the third face identification unit obtained feature vectors of the rotated face image and the third face identification unit obtained feature vectors of the view-transformed frontal face image.
Further, the plurality of face identification units may include a first face identification unit to transform a view of the rotated face image into a frontal face image view, and to calculate a first confidence between feature vectors of the frontal face image and feature vectors of the view-transformed rotated face image corresponding to the frontal face image, and a second face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and to calculate a second confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image.
The plurality of face identification units may further include a third face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a third confidence between the third face identification unit obtained feature vectors of the rotated face image and the third face identification unit obtained feature vectors of the view-transformed frontal face image.
In addition, the plurality of face identification units may include a first face identification unit to transform a view of the rotated face image into a frontal face image view, and to calculate a first confidence between feature vectors of the frontal face image and feature vectors of the view-transformed rotated face image corresponding to the frontal face image, and a second face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain the feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a second confidence between the obtained feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image.
Still further, the plurality of face identification units may include a first face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and to calculate a first confidence between the specific local linear transformation function based feature vectors of the rotated face image and the specific local linear transformation function based feature vectors of the frontal face image, and a second face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and to calculate a second confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image.
The plurality of face identification units further may include a third face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a third confidence between the third face identification obtained feature vectors of the rotated face image and the third face identification obtained feature vectors of the view-transformed frontal face image.
In addition, plurality of face identification units may include a first face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and to calculate a first confidence between the local linear transformation function based feature vectors of the rotated face image and the local linear transformation function based feature vectors of the frontal face image, and a second face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a second confidence between the second face identification unit obtained feature vectors of the rotated face image and the second face identification unit obtained feature vectors of the view-transformed frontal face image.
The plurality of face identification units may include a first face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and to calculate a first confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image, and a second face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculate a second confidence between the second face identification unit obtained feature vectors of the rotated face image and the second face identification unit obtained feature vectors of the view-transformed frontal face image.
The confidence combination unit may combine the confidences generated by the plurality of face identification units using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation to perform the combination.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification apparatus, including a subspace transformation unit to transform a rotated face image and a frontal face image on a subspace using a subspace transformation function, a view transformation unit to transform a view of the subspace transformed rotated face image into a frontal view using a view transformation function, and a discrimination unit to obtain feature vectors of the view-transformed rotated face image and feature vectors of the frontal face image using a discrimination function to calculate a confidence based on a similarity between the view-transformed rotated face image and the frontal face image.
The face identification may further include a training unit, to analyze training face images to generate the subspace transformation function, the view transformation function, and the discrimination function.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification apparatus including an average lookup table database, which is a database of view-specific average lookup tables-obtained by rotating a plurality of three-dimensional face models by a predetermined angle, generating a plurality of two-dimensional face images having a predetermined view, and averaging coordinates of correspondence points between the two-dimensional face images and the respective frontal face images, a view transformation unit to transform a view of a frontal face image into a rotated face image view with reference to the view-specific average lookup tables, and a discrimination unit to obtain feature vectors of the view-transformed rotated face image and feature vectors of the frontal face image using a discrimination function to calculate a confidence based on a similarity between the view-transformed rotated face image and the frontal face image.
The face identification apparatus may further include a training unit to analyze training face images with reference to the view-specific average lookup tables to generate the discrimination function.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification apparatus, including a plurality of independent face identification units, with each of the face identification units generating a confidence based on a similarity between a rotated face image and a frontal face image, and a confidence combination unit to combine confidences generated from the plurality of face identification units, wherein the plurality of face identification units include at least two face identification units among: a first face identification unit to transform a view of the rotated face image into a frontal image view, and to calculate a first confidence between feature vectors of the frontal face image and feature vectors of the view-transformed rotated face image corresponding to the frontal view, a second face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and to calculate a second confidence between the local linear transformation function based feature vectors of the rotated face image and the local linear transformation function based feature vectors of the frontal face image, a third face identification unit to obtain feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and to calculate a third confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image, and a fourth face identification unit to transform a view of the frontal face image into a rotated face image view, to obtain feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and to calculates a fourth confidence between the fourth face identification unit obtained feature vectors of the rotated face image and the fourth face identification unit obtained feature vectors of the view-transformed frontal face image.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method, including transforming a view of a rotated face image into a frontal image view, and calculating a first confidence between feature vectors of a frontal face image and feature vectors of the view-transformed rotated face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and calculating a second confidence between the obtained feature vectors of the rotated face image and the obtained feature vectors of the frontal face image, and combining at least the first and second confidences.
In the combining of the at least first and second confidences, the at least first and second confidences may be combined using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation.
The method may further include obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and calculating a third confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image.
In addition, the method may include transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of a view-transformed frontal face image, and calculating a fourth confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image.
Still further, the method may include transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of a view-transformed frontal face image, and calculating a third confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method, including transforming a view of a rotated face image into a frontal image view, and calculating a first confidence between feature vectors of a frontal face image and feature vectors of the view-transformed rotated face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and calculating a second confidence between the obtained feature vectors of the rotated face image and the obtained feature vectors of the frontal face image, and combining at least the first and second confidences.
In the combining the at least first and second confidences, the at least first and second confidences may be combined using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation.
The method may further include transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and calculating a third confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method including transforming a view of a rotated face image into a frontal image view, and calculating a first confidence between feature vectors of a frontal face image and feature vectors of the view-transformed rotated face image, transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of a view-transformed frontal face image, and calculating a third confidence between obtained feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image, and combining a at least the first and second confidences.
In the combining of the at least first and second confidences, the at least first and second confidences may be combined using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method, including obtaining feature vectors of a rotated face image and feature vectors of a frontal face image using a view-specific local linear transformation function and calculating a first confidence between the local linear transformation function based feature vectors of the rotated face image and the local linear transformation function based feature vectors of the frontal face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and calculating a second confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image, and combining at least the first and second confidences.
In the combining of the at least first and second confidences, the first and second confidences may be combined using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation.
The method may further include transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and calculating a third confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method, including obtaining feature vectors of a rotated face image and feature vectors of a frontal face image using a view-specific local linear transformation function and calculating a first confidence between the linear transformation function based feature vectors of the rotated face image and the linear transformation function based feature vectors of the frontal face image, transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and calculating a second confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image, and combining at least the first and second confidences.
In the combining of the first and second confidences, the first and second confidences may be combined using any one of an addition operation, a product operation, a maximum selection operation, a minimum selection operation, a median selection operation, and a weighted summation operation.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a face identification method, including transforming a view of a rotated face image into a frontal image view, and calculating a first confidence between feature vectors of a frontal face image and feature vectors of the view-transformed rotated face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and calculating a second confidence between the local linear transformation function based feature vectors of the rotated face image and the local linear transformation function based feature vectors of the frontal face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and calculating a third confidence between the a kernel discrimination function based feature vectors of the rotated face image and the a kernel discrimination function based feature vectors of the frontal face image, transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and calculating a fourth confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image, and combining at least two confidences among the first, second, third, and fourth confidences.
To achieve the above and/or other aspects and advantages, embodiments of the present invention includes a medium including computer readable code to implement a face identification method including transforming a view of a rotated face image into a frontal image view, and calculating a first confidence between feature vectors of a frontal face image and feature vectors of the view-transformed rotated face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a view-specific local linear transformation function and calculating a second confidence between the linear transformation function based feature vectors of the linear transformation function rotated face image and the linear transformation function based feature vectors of the frontal face image, obtaining feature vectors of the rotated face image and feature vectors of the frontal face image using a kernel discrimination function and calculating a third confidence between the kernel discrimination function based feature vectors of the rotated face image and the kernel discrimination function based feature vectors of the frontal face image, transforming a view of the frontal face image into a rotated face image view, obtaining feature vectors of the rotated face image and feature vectors of the view-transformed frontal face image, and calculating a fourth confidence between feature vectors of the rotated face image and the obtained feature vectors of the view-transformed frontal face image, and combining at least two confidences among the first, second, third, and fourth confidences.
Additional aspects and/or advantages of the invention will be set forth in part in the description which follows and, in part, will be apparent from the description, or may be learned by practice of the invention.
These and/or other aspects and advantages of the invention will become apparent and more readily appreciated from the following description of the embodiments, taken in conjunction with the accompanying drawings of which:
Reference will now be made in detail to embodiments of the present invention, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. Embodiments are described below to explain the present invention by referring to the figures.
Referring to
The first face identification unit 110 may receive vectors of a rotated face image and vectors of a frontal face image and represent the vectors of the rotated face image and the frontal face image on a subspace, e.g., using a subspace transformation function. The first face identification unit 110 may transform a view of the vectors of the rotated face, represented on the subspace, into a frontal view. Thereafter, the first face identification unit 110 may determine a first confidence between vectors of the view-transformed rotated face image and vectors of the frontal face image using a first discrimination function, for example. Here, any of the subspace transformation function, view transformation function, and first discrimination function may be generated in advance, e.g., by computational learning using Principal Component Analysis (PCA), Linear Matrix, and Linear Discriminant Analysis (LDA) methods, respectively.
The second face identification unit 130 may determine a second confidence between vectors of a rotated face image and vectors of a frontal face image using a second discrimination function, for example. Here, the second discrimination function may be generated in advance, e.g., by computational learning using a Locally Linear Discriminant Analysis (LLDA) method.
The third face identification unit 150 may determine a third confidence between vectors of a rotated face image and vectors of a frontal face image-using a third discrimination function, for example. Here, the third discrimination function may be generated in advance, e.g., by computational learning using a generalized discriminant analysis (GDA) method.
The fourth face identification unit 170 may receive vectors of a rotated face image and vectors of a frontal face image and transform a view of vectors of the frontal face image to correspond, e.g., be the same, as a view of vectors of the rotated face image, e.g., with reference to an average lookup table. Thereafter, the fourth face identification unit 170 may determine a fourth confidence between the vectors of the rotated face image and the vectors of the view-transformed frontal face image using a fourth discrimination function, for example. Here, the fourth discrimination function may be generated in advance, e.g., by computational learning using the LDA method.
The confidence combination unit 190 may combine first, second, third, and fourth confidences, for example, provided by the respective first, second, third, and fourth face identification units 110, 130, 150, and 170, and thereby generate a final confidence. When combining the first, second, third, and fourth confidences, the confidence combination unit 190 may use a predetermined combination operation, such as product (prod), summation (sum), maximum selection (max), minimum selection (min), median selection (median), or weighted summation (weight-sum), which will be described in the following in detail, noting that embodiments of the present invention are not limited thereto.
A confidence Cij(x) of one (j) of a corresponding face identification unit 110, 130, 150, and 170, for a predetermined class (i), may be expressed as a normalized Euclidean distance between output vectors of a rotated face image and output vectors of a frontal face image. The confidence Cij(x) can be scaled to have a value between 0 and 1, for example.
As noted above, final confidence Qj(x) (i=1, . . . , c) may be defined through any of product (prod), summation (sum), maximum selection (max), minimum selection (min), median selection (median), and weighted summation (weight-sum), for example, as set forth below in Equations 1-6.
Here, in Equation (6), wj may be a weight value determined, in advance, in consideration of known performance of each of the first, second, third, and fourth face identification units 110, 130, 150, and 170, for example.
If the number of training face images included in a prototype face image DB (e.g., DB 210 of
The prototype face image DB 210 may be a database of frontal face images and rotated versions of the frontal face images, having various views.
The training unit 230 may generate a subspace transformation function Sv, corresponding to the view v, in advance, by performing a computational leaning using PCA on frontal face images, which may be two-dimensional, and respective rotated face images within the predetermined range of the view v. The frontal face images and the respective rotated face images may all be stored in the prototype face image DB 210. Thereafter, the training unit 230 may generate a view transformation function V, which can be used for transforming vectors of each of the rotated face images that are projected onto a view subspace, by the subspace transformation function Sv, to have a frontal view. Thereafter, the training unit 230 may generate a first discrimination function D through computational leaning using LDA. The first discrimination function D may be used for determining the first confidence between frontal face images stored in the prototype face image database 210 and respective view-transformed rotated face images.
The subspace transformation unit 250 may receive vectors of a frontal face image and vectors of a rotated version of the frontal face image and project vectors of the rotated face image and vectors of the frontal face image onto a view subspace, e.g., using the subspace transformation function Sv, as defined by Equation (7) below. The subspace transformation function Sv may be generated by performing PCA on a set of training face images in the prototype face image DB 210, for example.
bv,i=Sv(xv,i,avgv) (7)
In Equation (7), xv,i may be an i-th face among a set of training face images, within a predetermined range of the view v, avgv may be the local mean of the training face images, within the predetermined range of the view v, bv,i may be a face image obtained by projecting xvi onto a subspace, and Sv may be a subspace transformation function for projecting the face images, within the predetermined view v, onto the subspace.
The generation of the subspace transformation function Sv, through PCA, will be described below in greater detail.
An eigenspace may be established using a covariance matrix of training face images stored in the prototype face image DB 210, and a plurality of eigenvectors corresponding to various image sizes may be generated, e.g., PM=[p1, . . . , pM] where PM is a set of M eigenvectors respectively corresponding to M maximum eigenvalues. Face images projected onto a subspace, using Equation (7), may be defined by the below Equations (8) and (9) using view-specific eigenvectors, i.e., an eigenvector PTf,M corresponding to a frontal view f and an eigenvector PTr,M corresponding to a rotated view r.
bf,i=PTf,M·(xf,i−avgf) (8)
br,i=PTr,M·(xr,i−avgr) (9)
Here, xf,i may be an i-th face image among a set of training face images having a frontal view f, xr,i may be an i-th face image of a set of training face images having a predetermined range of a rotated view r, avgf may be a local mean of the training face images having the frontal view f, avgr may be the local mean of the training face images having the predetermined range of the rotated view r, bf,i may be a face image obtained by projecting xf,i onto a subspace, and br,i may be a face image obtained by projecting xr,i onto the subspace. Bf={bf,1,bf,2, . . . ,bf,N}, and Br={br,1,br,2, . . . ,br,N} where N is a total number of training face images having the frontal view f or the rotated view r.
The first view transformation unit 260 may transform a view of a rotated face image from a rotated view r to a frontal view f using a view transformation function V, e.g., as referenced below in Equation (10), and may be generated by computational learning to satisfy a least square error (LSE) condition:
Here, bf,i may be a face image obtained by projecting an i-th frontal face image xf,i onto a subspace, br,i may be a face image obtained by projecting an i-th rotated face image xr,i onto the subspace, and V(br,i) may be a view transformation function for transforming br,i to have the frontal view f.
The view transformation function V(br,i) may be generated using a linear matrix or a neural network, for example. The generation of the view transformation function V(br,i) using a linear matrix will be described in greater detail below.
An M×M linear matrix LM that satisfies Bf=LM·Br can be obtained. An i-th element Bfij of a j-th feature vector Bfj can further be obtained, for example, by the below Equation (11):
bfij=LMi1Br1j+ . . . +LMiMBrMj (11)
A total of N equations for obtaining M unknown parameters LMi1, . . . , LMiM can be obtained using Equation (11). M×M unknown parameters of the linear matrix LM can be determined based on N×M known values. The linear matrix LM may also be obtained, for example, by below Equation (12), which may be obtained by substituting LM for V of Equation (10).
The linear matrix LM may also be defined by below Equation (13):
LM=BfBrT(BrBrT)−1 (13)
A face image X′f, whose view has been transformed into the frontal view f, by the linear matrix LM, may be expressed by the following equation: X′f=Pf,M(LM·Br)+avgf.
The first discrimination unit 270 may generate the first confidence between the view-transformed rotated face image and the frontal face image using the first discrimination function D. To do this, the training unit 230 may generate the first discrimination function D, in advance, functionally mapping the frontal face image and the view-transformed rotated face image to a feature vector df,i and a feature vector dr,i, respectively. The feature vectors df,i and dr,i may be expressed by below Equation (14) using the first discrimination function D:
df,i=D(bf,i,avg), dr,i=D(V(br,i),avg) (14)
Here, avg may be the mean of feature vectors of all face images stored in the prototype face image DB 210.
The generation of the first discrimination function D through LDA will now be described in greater detail.
An LDA operation may be performed on a face image whose view has been transformed so that the volume of objects belonging to different classes can be maximized with the volume of objects belonging to the same class being minimized. The first discrimination function D that satisfies Equation (15), i.e., Uopt, may be obtained as follows:
Here, B may be a between-class scatter matrix for a vector b, and W may be a within-class scatter matrix for the vector b.
The above Equation (14) may be rearranged into the below Equation (16), using Uopt of Equation (15).
df,i=U·(bf,i−avg), dr,i=U·(LM·br,i−avg) (16)
Final face recognition, authentication, and retrieval may be based on a result of performing a nearest neighbor matching operation on feature vectors d, i.e., the frontal view determining feature vector df,i and the rotated view determining feature vector dr,i. Therefore, the first confidence generated by the first discrimination unit 270 may be defined by the below Equation (17):
∥df,i−dr,i∥ (17)
Referring to
PCA and LDA, e.g., as performed by the first face identification unit 110, have been discussed by Peter N. Belhumeur, Joao P. Hespanha, and David J. Kriegman in “Eigenfaces vs. Fisherfaces: Recognition Using Class Specific Linear Projection,” IEEE Trans. on Pattern Analysis and Machine Intelligence, Vol. 19, No. 7, pp. 711-720, July 1997. The linear matrix LM has been discussed by T. Vetter and T. Poggio in “Linear Object Classes and Image Synthesis from a Single Example Image,” IEEE Trans. on Pattern Analysis and Machine Intelligence, Vol. 19, No. 7, pp. 733-742, 1997.
The training unit 420 may generate a second discrimination function Uv, into which subspace transformation, view transformation, and discrimination operations, e.g., by computational learning based on LLDA, are integrated. According to LLDA, local linear functions, such as a subspace transformation function, a view transformation function, and a discrimination function, may be simultaneously searched for each local group. Each of the local linear functions may be dependent on face images within a predetermined range of the view v. Views of face images maybe transformed into a frontal view through the searched local linear functions so that a class that can minimize within-class covariance, and maximize between-class covariance, may be generated through local linear transformation. Solutions Uf and Ur for a frontal face image and a rotated face image, which may be searched for through LLDA, may be defined as follows, corresponding to the PCA-based transformation function, LM-based transformation function, and LDA-based discrimination function used in the aforementioned first discrimination unit 110:
df,i=Uf(xf,i,avgf), dr,i=Ur(xr,i,avgr)
Uf≡D(Sf(•)), Ur≡D(V(Sr(•))) (18)
Here, the solutions Uf and Ur may be optimised for discrimination using second-order statistics.
The second discrimination unit 430 may generate the second confidence between a frontal face image and a rotated face image using the second discrimination function UV. The second confidence may be expressed using the feature vectors df,i and dr,i in the following Equation (18):
∥df,i−dr,i∥ (19)
The generation of the second discrimination function Uv through LLDA performed by the training unit 420, will now be described in greater detail.
According to LLDA, the second face identification unit 130 may be considered to be a simplified framework of the first identification unit 110. As compared with conventional kernel discrimination-based non-linear analysis methods, such as GDA, LLDA can efficiently prevent overfitting problems and can lower computation costs. Supposing that there is a data set X having M data, i.e., x1, x2, . . . , xM, and each of the data has N-dimensional vectors. If data points are classified into C object classes, then X={X1, . . . , Xc, . . . , Xc}. Input vectors can be clustered into k (where k=1, . . . ,K) subsets. The subsets may then be view-specific local groups having different transformation functions from one another. Each of the data points has a posteriori probability P(k|x) and belongs to a corresponding subset. The posteriori probability P(k|x) may be determined as follows. If a data point x belongs to k*-th local group, P(k*|x)=1 and P(k|x)=0 with respect to local groups k other than k*. In addition, Uk=[uk1,uk2, . . . ,ukN] where Uk denotes a local linear transformation matrix and k=1, . . . , K. The local linear transformation matrix Uk can be determined by satisfying the following Equation (20):
Here, μk is a mean vector of a k-th local group. The local linear transformation matrix Uk may also be also determined by maximizing an objective function J of the following Equation (21):
J=log(|B1|/|W|) (21)
Here, B and W denote a between-class scatter matrix and a within-class scatter matrix, respectively, in a local-linear-transformed feature space. A solution of Equation (20) minimizes the within-class scatter of the local-linear-transformed feature space and maximizes the between-class scatter of the local-linear-transformed feature space. In the local-linear-transformed feature space, a global mean vector m is a zero mean vector, and a mean vector mc of class c having Mc samples may be expressed by the following Equation (22):
The between-class scatter matrix B may be expressed by the below Equation (23):
The within-class scatter matrix W may be expressed by below Equation (24):
Here, Wk may be a local structure and Wij may be an interaction term of two local frames.
LLDA, e.g., as applied to the second face identification unit 130, has been discussed by Tae-kyun Kim, Josef Kittler, Hyun-chul Kim, and Seok-cheol Kee in “Discriminant Analysis by Locally Linear Transformations,” British Machine Vision Conference, pp. 123-132, Norwich, UK, 2003.
The third discrimination unit 630 may transform a space of an input face image into a high-dimensional feature space through GDA based on a kernel function Φ, and linearly separate the transformation results. The first and second face identification units 110 and 130 apply different linear functions to face images having different views. However, the third face identification unit 150 may apply a third discrimination function UΦ, which is a non-linear transformation function, to all of the face images having different views. The third discrimination function UΦ may be expressed by the following Equation (25):
df,i=UΦ(Φ(xf,i,avg)), dr,i=UΦ(Φ(xr,i,avg)) (25)
By using the feature vectors df,i and dr,i of Equation (25), the third confidence between the frontal face image and the rotated face image may be expressed by the following Equation (26):
∥df,i−dr,i∥ (26)
The generation of the third discrimination function UΦ, e.g., through GDA performed by the training unit 620, will now be described in greater detail.
GDA is designed for non-linear separation based on the kernel function Φ. X→Z that transforms an input space X into a high-dimensional feature space Z. GDA can be applied to a set of training face images in the prototype face image DB 610 and generate a non-linear subspace, robust even against new classes. A between-class scatter matrix BΦ and a within-class scatter matrix WΦ of non-linearly mapped data may be expressed by the following Equation (27):
Here, Xc may be a data set of class c, M may be a total number of samples, mcΦ may be a mean of class c in the high-dimensional feature space Z, and Mc may be a total number of samples of the data set Xc. The third discrimination function UΦ that satisfies Equation (28) below, i.e., UoptΦ, may be obtained through GDA.
A vector uΦ(εZ) may be obtained as a solution of the following equation: BΦuiΦ=λiWΦuiΦ. According to the reproduction kernel theory focusing on a zero mean and a unit variance, the arbitrary solution uΦ should be within the span of all training vectors in the high-dimensional feature space Z. In other words, the arbitrary solution uΦ should satisfy the following Equation (29):
Here, αc,i may be a real number weight and xc,i may be an i-th sample of class c. A solution of Equation (29) is obtained using the following Equation (30):
Here, a may be a vector satisfying the following equation: α=αc, c=1, . . . , C, αc=αc,i, and i=1, . . . , Mc. A kernel matrix K, which may be an M×M matrix, may include dot products of the nonlinearly mapped data. The Kernel matrix K may be expressed by the following Equation (31):
K=(Kk,i), k=1, . . . ,C, l=1, . . . ,C (31)
A block diagonal matrix D, which may be an M×M matrix, may be expressed by the following Equation (32):
D=(Dc) c=1, . . . ,C (32)
Here, Dc may be a c-th matrix on a diagonal line whose elements all have a value of
A coefficient vector that defines the projection vector uΦ (εZ) may be obtained by solving the following equation: BΦuiΦ=λiWΦuiΦ. Projection of a test vector xtest can be obtained using the following Equation (33):
GDA, e.g., as applied to the third face identification unit 150, has been discussed by G. Baudat and F. Anouar in “Generalized Discriminant Analysis Using a Kernel Approach,” Neural Computation, Vol. 12, pp. 2385-2404, 2000.
The average lookup table DB 710 may be a DB of coordinate values for each view group used for transforming the view of a frontal face image to be the same as a view of a rotated face image.
The training unit 730 may generate a fourth discrimination function D by performing computational learning based on LDA on training face images stored in the prototype face image DB 720, for example.
The second view transformation unit 740 may receive vectors of a frontal face image and transform the view of the frontal face image into a view of a rotated face image by referencing the average lookup table DB 710. Texture mapping, three-dimensional rotation, and graphic rendering operations may be replaced with direct image transformation based on the average lookup table DB 710, for example. Accordingly, it is possible to achieve fast view transformation using the average lookup table DB 710.
The fourth discrimination unit 750 may defines a feature vector df,i corresponding to the view-transformed frontal face image lf,i and a feature vector dr,i corresponding to the rotated face image xr,i using the fourth discrimination function D. The feature vectors df,i and dr,i may be expressed by the following Equation (34):
df,i=U·(Ir,i−avg), dr,i=U·(xr,i−avg) (34)
The fourth discrimination unit 750 may determine the fourth confidence between the view-transformed frontal face image lf,i and the rotated face image xr,i as a difference between feature vectors of Equation (34), as follows in Equation 35:
∥df,i−dr,i∥ (35)
An average lookup table 830, corresponding to the view v, may be obtained by averaging coordinates of each correspondence point in a look up table group 820, corresponding to the view v. In other words, different sets of training face images corresponding to different views may have different average lookup tables.
Specifically, each element (x, y) of each of the first and N-th lookup tables 821 and 823 of an image size has a two-dimensional coordinate and represents a dense correspondence point between two face images having a different view, respectively. A lookup table LUTi(x, y) for an i-th three-dimensional face model may be approximated by the following Equation (36):
(
Here, P is a function that maps a three-dimensional face model onto a two-dimensional plane and has a scale and movement parameters generating face images having fixed eye positions, and Rot is a rotation function of a three-dimensional object. Coordinates of each element (x, y) of the average lookup table 830 may be represented using the following Equation (37):
A rotated face image 850 may be virtually generated from a frontal face image 840 by using the average lookup table 830. Brightness lr(x, y) of a pixel of the rotated face image 850 may be obtained from brightness lf(x, y) of a pixel of the frontal face image 840 by using the following equation: Ir(x, y)=If(
In short, by using the average lookup table 830, it is possible to successfully generate the rotated face image 850, having an arbitrary view, from the frontal face image 850 while maintaining most of the pixel information of the frontal face image 850.
The first, second, and third face identification units 110, 130, and 150 may operate based on statistical computational learning from two-dimensional face images, and the fourth face identification unit 170 may operate based on statistical computational learning from three-dimensional face models and two-dimensional face images. The first and fourth face identification units 110 and 170 may generate a virtual face image having an arbitrary view through view transformation and may use the virtual face image for face identification. The second and third face identification units 130 and 150 may render face images using feature vectors so that the rendered face images are robust against view transformation. Thus, any of the first, second, third, and fourth face identification units 110, 130, 150, and 170 may guarantee face recognition with higher precision than conventional PCA or LDA-based face identification units. Obviously, two or more of the first, second, third, and fourth face identification units 110, 130, 150, and 170 may considerably improve the precision of face recognition.
Face identification algorithms, according to embodiments of the present invention, were implemented by the inventor, resulting in the following findings. According to an embodiment of the present invention, various transformation functions were computationally learned from the face identification algorithms using a set of training face images. The various transformation functions were applied to a new class of face images, i.e., a test set of face images. Among the test set of face images, frontal face images were used as gallery images, and rotated face images were used as query images. An XM2VTS DB, which includes face images with various pose group labels attached thereto, was further used. It will be assumed that views of the face images were precisely determined. Specifically, the XM2VTS DB included 2,950 face images obtained by taking 295 people's face images in 5 different poses over two sessions S1 and S2 that were 5 months apart from each other. The 2,950 face images were divided into 5 pose groups, i.e., a frontal view group F, two ±30° horizontally rotated view groups R and L, and two ±20° vertically rotated view groups U and D. Each of the 5 pose groups of face images may not have had the same view due to unexpected errors, but may be within a predetermined view range. The 2,950 face images had fixed eye positions and were normalized to have a 46×56 resolution. Data samples included 5 pairs of face images respectively labeled with F1, R1, L1, U1, and D1 and 5 pairs of face images respectively labeled with F2, R2, L2, U2, and D2, as shown in
Thus, 125 people's 1,250 face images, 45 people's 450 face images, and 125 people's 1,250 face images were used as training face images, evaluation face images, and test face images, respectively. Further, classes of the training face images, classes of the evaluation face images, classes of the test face images were different from one another. The training face images were used for obtaining transformation functions, used in the first, second, third, and fourth face identification units 110, 130, 150, and 170, the evaluation face images were used for adjusting kernel parameters for GDA and parameters, used in the first, second, third, and fourth face identification units 110, 130, 150, and 170, such as dimensions of vectors output from the first, second, third and fourth face identification units 110, 130, 150, and 170 and a scaling parameter. Identification performance was obtained by using face identification rates for the test face images. A PIE data set included 15 face images (3 poses×5 illumination modes) of each of 66 people, which were evenly divided into two sets, i.e., a set of training face images and a set of test face images. Data samples included face images respectively labeled with F1 through F5, R1 through R5, and L1 through L5, as shown in
Accordingly, a performance of each of the first, second, third, and fourth face identification units 110, 130, 150, and 170 is as follows. The performance of each of the first, second, third, and fourth face identification units 110, 130, 150, and 170 was tested using the XM2VTS DB. The performance of the fourth identification unit 170, which uses the average lookup table DB 710, was tested using 108 3D-scanned face models. The performance of the third face identification unit 150, which uses GDA, was tested using a radial basis function (RBF) kernel with an adjustable width. The first and fourth face identification units 110 and 170 may be identical in terms of generating virtual rotated face images through view transformation. However, the first and fourth face identification units 110 and 170 have different view transformation characteristics from each other, as shown in
The second and third face identification units 130 and 150 render rotated face images that are very similar to their respective frontal counterparts. In other words, the second and third face identification units 130 and 150 generate similar feature vectors for face images of the same kind irrespective of views so that the face identification robust against view variations can be achieved.
Embodiments of the present invention may also be implemented by computer readable code on at least one medium, e.g., a computer readable recording medium, for use on one or more computers. The medium may be any data storage device that can store/transfer data which can be thereafter read/implemented by a computer system. Examples of the medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, optical data storage devices, and carrier waves (such as data transmission through the Internet). The medium may also be distributed over network coupled computer systems so that the computer readable code is stored/transferred and implemented in a distributed fashion. Based on the disclosure herein, programs, codes, and code segments for accomplishing embodiments of the present invention can be easily construed by programmers skilled in the art to which the present invention pertains.
As described above, according to embodiments of the present invention, it is possible to considerably enhance face identification rates regardless of whether input face images that are subjected to face recognition, face authentication, or face retrieval have a frontal view or rotated view by combining confidences provided by at least two independent face identification units.
Although a few embodiments of the present invention have been shown and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the invention, the scope of which is defined in the claims and their equivalents.