Facial Recognition Using Eigan Face
Face is an important biometric feature for personal identification. This paper describes a brief idea about face verification method based on principal component analysis, eigenface technology because it is widely implemented and well known for its simplicity and computational efficiency.
How it works?
The task of facial recognition is discriminating input image data into several classes (persons). The input images are highly noisy (e.g. the noise is caused by differing lighting conditions, pose etc.), yet the input images are not completely random and in spite of their differences there are patterns which occur in any input image. Such patterns, which can be observed in all images, could be in the domain of facial recognition the presence of some objects (eyes, nose, and mouth) in any face as well as relative distances between these objects. These characteristic features are called eigenface in the facial recognition domain (or principal components generally). They can be extracted out of original image data by means of a mathematical tool called Principal Component Analysis (PCA).
We can represent a training image as a two dimensional image having MxN dimensions. We can represent the same image as a vector having MN coordinates. A vector having MN coordinates can be thought as a point in a MN dimensional space. Now if we find the distance between two points in MN dimensional space, which is the representation of the image then we will find that the similar images are placed in the nearer location in that space. The problem with this technique is that the input images are very noisy. So, there is a chance that a different image is placed in the closer location. Principal component analysis solves this problem.
An eigenvector of a matrix is a vector such that, if multiplied with the matrix, the result is always an integer multiple of that vector. This integer value is the corresponding eigen value of the eigenvector. This relationship can be described by the equation M u = ? u, where u is an eigenvector of the matrix M and ? is the corresponding eigen value. Eigen values are the characteristic features of a matrix, we can reconstruct the original matrix from its eigen value and eigen vectors. The eigen vector having maximum eigen value represents the maximum characteristic features of the matrix. So, if we take the eigen vectors having larger eigen values and reject the eigen vectors having lower eigen values we construct an approximation of the original matrix having maximum characteristic features. In principal component analysis the eigen vectors are called as eigenface. By selecting the eigenface having larger eigen values we can construct a space having lower dimension from the higher dimensional training set where the maximum characteristics feature is present. Thus we can eliminate the unwanted features, which are not the part of the object. For example we can calculate MN eigenface from a MN dimensional space. If we take first T eigenface having larger eigen values, where MN>>T, then we can construct a space having T dimensions. This space is called as eigen space. So, the eigen space is constructed from the maximum characteristic features of the training image set.
As the images are represented as a point in a MN dimensional space, we can find the co-ordinates of a test image into the eigen space by projecting the image into the eigen space. Then we can find the distance between the two projected points on the eigen space projected from two different image by Euclidean distance.
We can set a threshold value theta, which will decide the classification of the test image.
Flowchart of face recognition is as follows..

