Comparison Of PCA And LDA For Face Recognition

DOI : 10.17577/IJERTV2IS70818

Download Full-Text PDF Cite this Publication

Text Only Version

Comparison Of PCA And LDA For Face Recognition

Prof.Masrath Begum

Associate professor in GNDEC(CSE),Bidar

Savita Sajjan

  1. tech II year student(CSE)

    Abstract

    Face recognition from images is a sub-area of the general object recognition problem. It is of particular interest in a wide variety of applications. Here, the face recognition is based on the new proposed modified PCA algorithm by using some components of the LDA algorithm of the face recognition. The experimental results demonstrate that this arithmetic can improve the face recognition rate. The aim is to show that LDA is better than PCA in face recognition. Face and facial feature detection plays an important role in various applications such as human computer interaction, video surveillance, face tracking, and face recognition. Face recognition not only makes hackers virtually impossible to steal one's " password" but also increases the user-friendliness in human-computer interaction. Apparently the face is the most visible part of human anatomy and serves as the first distinguishing factor of a human being.

    Keywords- PCA, LDA, face recognition

    1. Introduction

Face recognition involves comparing an image with a database of stored faces in order to identify the individual in that input image. The images can be analyzed and faces can then be identified, before they can be recognized. There are different methods of face recognition which involve a series of steps that serve to capturing, analyzing and comparing a face to a database of stored images. This paper covered comparative study of image recognition between Linear Discriminant analysis (LDA) and Principal Component Analysis (PCA).

A.Face recognition

A facial recognition system is a computer application to automatically identifying a person from a digital image or a video frame. One way to achieve this is by comparing selected facial features from the image to a facial database[1]. Currently, developers came up with the design that is capable of extracting and picking up faces from the crowd and have it compared to an image source – database. The software has the ability to know how the basic human face looks like in order for it to work accordingly. Thus, developers designed these programs (by storing commands) to pinpoint a face and measure its features. There are different methods of facial recognition which involve a series of steps that serve to capturing, analyzing and comparing a face to a database of stored images. Some related software was designed to recognize similarities through pattern recognition. Pattern recognition is often used under the names of diagnosis and clarifications. Each of this software varies on how it is designed to work yet the function and concept is still the same that is identifying on facial landmarks. Because of these, facial recognition is hard to fool since it compares specific proportions and angles of the defined facial features.

B.Principle Component Analysis

The PCA method has been extensively applied for the task of face recognition. Approximate reconstruction of faces in the ensemble was performed using a weighted combination of eigenvectors (Eigen pictures), obtained from that ensemble [2]. The weights that characterize the expansion of the given image in terms of Eigen pictures are seen as global facial features. In an extension of that work, Kirby and Sirovich[14] included the inherent symmetry of faces in the Eigen pictures. All images in face image in database are representing in matrix as a very long vector.

There are five steps involved in the system developed by Turk and Pentland. First, the system needs to be initialized by feeding it a set of training images of faces. This is used these to define the face space which is set of images that are face like. Next, when a face is encountered it calculates an eigenface for it. By comparing it with known faces and using some statistical analysis it can be determined whether the image presented is a face or not a face at all. Then, if an image is determined to be a face the system will determine whether it knows the identity of the face or not. The optional final step is that if an unknown face is seen repeatedly, the system can learn to recognize it.

The eigenface technique is simple, efficient, and yields generally good results in controlled circumstances [3]. The system was even tested to track faces on film. There are also some limitations of eigenfaces. There is limited robustness to changes in lighting, angle, and distance [5]. 2D recognition systems do not capture the actual size of the face, which is a fundamental problem [4]. These limits affected the techniques application in security cameras because frontal shots and consistent lighting cannot be relied upon.

C. Linear Discriminant Analysis

Linear Discriminant is a classical technique in pattern recognition [6], where it is used to find a linear combination of features which characterize or separate two or more classes of objects or events. The resulting combination may be used as a linear classifier or, more commonly, for dimensionality reduction before it can be classified.

In computerized face recognition, each face is represented by a large number of pixel values. Linear discriminant analysis is primarily used here to reduce the number of features to a more manageable number before classification. Each of the new dimensions is a linear combination of pixel values, which form a template. The linear combinations obtained using Fisher's linear discriminant are called Fisher faces, while those obtained using the related principal component analysis are called eigenfaces.

Linear Discriminant Analysis easily handles the case where the within-class frequencies are unequal and their performance has been examined on randomly generated test data. This method maximizes the ratio between-class variance to the within-class variance in any particular data set thereby guaranteeing maximal separability. The prime difference between LDA and PCA is that PCA does more of feature classification and LDA does data classification. In PCA, the shape and location of the original data sets changes when

transformed to a different space whereas LDA doesnt change the location but only tries to provide more class separability and draw a decision region between the given classes [7].

  1. Implementation

    On the field of face Detection most of the common methods employ Principal Component Analysis. Principal Component Analysis is based on the Karhunen-Loeve (K-L), or Hostelling Transform, which is the optimal linear method for[9] reducing redundancy, in the least mean squared reconstruction error sense.

    PCA became popular for face Detection with the success of eigenfaces. The idea of principal component analysis is based on the identification of linear transformation of the co ordinates of a system. The three axes of the new co-ordinate system coincide with the directions of the three largest spreads of the point distributions. In the new co- ordinate system that we have now the data is uncorrected with the data we had in the first co ordinate system. [8] For face Detection, given dataset of N training images, we create N d-dimensional vectors, where each pixel is a unique dimension. The principal components of this set of vectors is computed in order to obtain a d x m projection matrix, W. Approximates the original image where is the mean, of the i and the reconstruction is perfect when m = d. For the comparison we are going to use two different PCA algoithms. The first algorithm[11] is computing and storing the weight of vectors for each persons image in the training set, so the actual training data is not necessary. In the second algorithm each weight of each image is stored individually, is a memory-based algorithm. For that we need more storing space but the performance is better. In order to implement the Principal component analysis in MATLAB we simply have to use the command prepca. The syntax of the command is ptrans,transMat = prepca(P,min_frac) Prepca pre processes the network input training set by applying a principal component analysis. This analysis transforms the input data so that the elements of the input vector set will be uncorrected. In addition, the size of the input vectors may be reduced by retaining[10] only those components, which contribute more than a specified fraction (min_frac) of the total variation in the data set. Prepca takes these inputs the matrix of centred input (column) vectors, the minimum fraction variance component to keep and as result returns the transformed data set and the transformation matrix.

    A.Algorithm

    Principal component analysis uses singular value decomposition to compute the principal components. A matrix whose rows consist of the eigenvectors of the input covariance matrix multiplies the input vectors. This produces transformed input vectors whose components are uncorrected and ordered according to the magnitude of their variance.

    Those components, which contribute only a small amount to the total variance in the data set, are eliminated. It is assumed that the input data set has already been normalised so that it has a zero mean.

    In our test we are going to use two different versions of PCA. In the first one the centroid of the weight vectors for each persons images in the training set is computed and stored. On the other hand in PCA-2 a memory based variant ofPCA, each of the weight vectors in individually computed and stored.

    B.Eigenfaces

    Human face Detection is a very difficult and practical problem in the field of pattern Detection. On the foundation of analysis of the present methods on human face Detection, [12]a new technique of image feature extraction is presented. And combined with the artificial neural network, a new method on human face Detection is brought up. By extraction

    the sample pattern's algebraic feature, the human face image's eigenvalues, the neural network classifier is trained for Detection. The Kohonen network we adopted can adaptively modify its bottom up weights in the course of learning. Experimental results show that this method not only utilizes the feature aspect of eigenvalues but also has the learning ability of neural network. It has better discriminate ability compared with the nearest classifier. The method this paper focused on has wide application area. The adaptive neural network classifier can be used in other tasks of pattern Detection. In order to calculate the eigenfaces and eigenvalues in we have to use the command eig.

    The syntax of the command is d = eig(A)

    V,D = eig(A)

    V,D = eig(A,'nobalance') d = eig(A,B)

    V,D = eig(A,B)

    d = eig(A) returns a vector of the eigenvalues of matrix A. V,D = eig(A) produces matrices of eigenvalues (D) and eigenvectors (V) of[13] matrix A, so that A*V = V*D. Matrix D is the canonical

    form of A, a diagonal matrix with A's eigenvalues on the main diagonal. Matrix V is the modal matrix, its columns are the eigenvectors of A. The eigenvectors are scaled so that the norm of each is 1.0. Then we use W,D = eig(A'); W = W' in order to compute the left eigenvectors, which satisfy W*A = D*W. V,D = eig(A,'nobalance') finds eigenvalues and eigenvectors without a preliminary balancing step. Ordinarily, balancing improves the conditioning of the input matrix, enabling more accurate computation of the eigenvectors and eigenvalues. However, if a matrix contains small elements that are really due to round off error, balancing may scale them up to make them as significant as the other elements of the original matrix, leading to incorrect eigenvectors. We can use the no balance option in this event. d = eig(A,B) returns a vector containing the generalized eigenvalues, if A and B are square matrices. V,D = eig(A,B) produces a diagonal matrix D of generalised eigenvalues and a full matrix V whose columns are the corresponding eigenvectors so that A*V = B*V*D. The eigenvectors are scaled so that the norm of each is 1.0.

    C.Euclidean distance

    One of the ideas on which face Detection is based is the distance measures, between to points. The problem of finding the distance between two or more point of a set is defined as the Euclidean distance. The Euclidean distance is usually referred to the closest distance between two or more points.

  2. Result

    Database taken here is created by own which consist of 100 images of 10 different persons. 10 different expressions of each person is taken. LDA recognizes

    97 persons out of 100 and PCA recognizes 89 persons out of 100. This shows that efficiency is more for LDA compared to PCA

    The graph is plotted by taking efficiency versus number of persons. In PCA for first person efficiency is 1. For second person it is 0.7 which means 7 persons have been detected out of 10 and so on. For LDA all persons taken on real time basis have been detected.

    Approach

    No. of correct outputs out of 100

    Accura cy Rate (%)

    PCA

    82

    82

    Proposed PCA

    along with linear distance

    100

    100

  3. Conclusion

The proposed work shows the robust performance. for the given test images the achieved output is 100% in our case. Threshold may vary based on images but

efficiency is more in case of LDA.The system performance may vary machine to machine. In our system, we perform the test on 4GB Ram in less than

5 sec. The speed performance and accuracy outperforms the available methods till date. Our system is better than the all available methods of face recognition In this project two type of feature extraction for face recognition algorithms, PCA and LDA were studied.

References

[1] [Online]. Available: http://en.wikipedia.org/wiki/Facial_recognition_system [2]L. Sirovich and M. Kirby, Low-dimensional procedure for the characterization of the human face, J. Opt. Soc. Am. A4, 519524 (1987). [3][Online].Available: http://www.animetrics.com/technology/frapplications.html

  1. R. Duda and P. Hart, Pattern Classification and Scene Analysis. New York: Wiley, 1973.

  2. K. Etemad and R. Chellappa, Discriminant Analysis for Recognition of Human Face Images, Journal of the Optical Society of America, Vol 14, pp 1724-1733, 1997 [6] R. Duda and P. Hart, Pattern Classification and Scene Analysis. New York: Wiley, 1973.

  1. S. Balakrishnama, A. Ganapathiraju,Linear Discriminant Analysis.

  2. A modified Hausdorff distance for object matching:

M.P. Dubuisson and A.K. Jain, In ICPR94, pages A:566 568, Jerusalem, Israel, 1994.

[9]View-Based and Modular Eigenspaces for Face Recognition: Alex Pentland, Baback Moghaddam, and Thad Starner, IEEE Conf. on Computer Vision and Pattern Recognition, MIT Media Laboratory Tech. Report No. 245 1994

  1. Mechanisms of human facial recognition: R. Baron, International Journal of Man- Machine Studies, pp. 137- 178, 1981.

  2. Familiarity and recognition of faces in old age: J. C. Bartlett and A. Fulton, Memory and Cognition, Vol. 19, No. 3, pp. 229-238, 1991.

  3. Eigenfaces vs fisherfaces: Recognition using class specific linear projection: P. N. Belhumeur, J. P. Hespanha, and D. J. Kriegman, IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 19, No. 7, pp. 711- 720, 1997.

  4. Survey: Face recognition systems: C. Bunney, Biometric Technology Today, Vol. 5, No. 4, pp. 8-12, [14]L. Sirovich and M. Kirby, Low-dimensional procedure for the characterization of the human face, J. Opt. Soc. Am. A4, 519524 (1987). 1997.

Leave a Reply