Eigen Faces and Principle Component Analysis for Face Recognition Systems: A Comparative Study

Face recognition has been largely used in biometric field as a security measure at air ports, passport verification, criminals' list verification, visa processing, and so on. Various literature studies suggested different approaches for face recognition systems and most of these studies have limitations with low performance rates. Eigenfaces and principle component analysis (PCA) can be considered as most important face recognition approaches in the literature. There is a need to develop algorithms and approaches that overcome these disadvantages and improve performance of face recognition systems. At the same time, there is a lack of literature studies which are related to face recognition systems based on EigenFaces and PCA. Therefore, this work includes a comparative study of literature researches related to Eigenfaces and PCA for face recognition systems. The main steps, strengths and limitations of each study will be discussed. Many recommendations were suggested in this study.


INTRODUCTION
Face recognition has a large number of applications such as: security, person verification, Internet communication, and computer entertainment. The problem of face recognition is still unsolved and offers a great challenge to researchers although research in face recognition has been conducted since 1960s. There is a significant progress in the area of face modeling and analysis techniques in the recent years. Many systems have been developed for face detection, tracking and recognition for security; need for identity verification in digital world; and the need for face analysis and modeling techniques in multimedia data management and computer entertainment. Recent advances in automated face analysis, pattern recognition, and machine learning have made it possible to develop automatic face recognition systems to address these applications. A face recognition system can be used to identify faces present in images and videos automatically. It can operate in either or both of two modes: face verification/authentication, and face identification/recognition. Face verification involves one-to-one match that compares a query face image against a template face image whose identity is being claimed. Face identification involves one-to-many matches that compares a query face image against all template images in the database to determine the identity of query face [1]. During the past few years, face recognition has received significant attention in the fields of image analysis and understanding [2]. Tolba, et al (2006) [3] provided an overview of face recognition techniques and its applications. They discussed the face databases which are used to test the performance of these face recognition algorithms [3]. Face recognition can be done in still image and video which has its origin in still image face recognition [4].
Eigenfaces for face recognition can implement an efficient, simple, and accurate face recognition system in a constrained environment such as a household or an office. The system does not depend on 3-D models of the structure of face (eyes, nose, mouth). Classification is performed using a linear combination of characteristic features (eigenfaces) [5]. There are many literature studies related to face recognition systems based Eigenfaces [6..12].
Principal Component Analysis (PCA) is a statistical method that have been used in image recognition. PCA can be used as feature extraction in face recognition to reduce large dimensionality of data space to smaller dimensionality of feature space when there is strong correlation between observed variables. PCA is used for prediction, redundancy removal, feature extraction and data compression. Applications (signal processing, image processing, system and control theory, communications) having linear models are suitable for PCA because PCA is a linear domain technique in biometrics. The PCA can be used for face recognition to express large one dimensional vector of pixels constructed from 2-D facial image into compact principal components of feature space (reduce multidimensional data to lower dimensions). This can be called eigenspace projection. Eigenspace is calculated by identifying eigenvectors of covariance matrix derived from a set of facial images (vectors) [13]. Many literature studies in the past related to face recognition based on PCA [14..23]. Kuldeep and Madan (2013) [24] discussed the performance of face recognition techniques based PCA. They proposed a system which combines various parameters (distance classifier, applying histogram equalization, and selecting number of eigenfaces) into one face recognition system [24]. Whereas, Sasan Karamizadeh, et al (2013) [25] provided a detailed description of the PCA technique for face recognition. Other literature studies which are related to face recognition systems based on Eigenfaces with PCA [26..33].
Face recognition can be regarded as one of the most important topic in biometric studies. There is an important need to improve the performance of current face recognition approaches and algorithms. There is a lack of surveys which are related to face recognition systems based on EigenFace and PCA. Therefore, this work includes a comparative study on literature related to face recognition systems using EigenFace and PCA. This work is organized as follows: section 2 include literature studies related to face recognition based Eigenfaces and PCA. Section 3 describes in details the EigenFaces, Eigenvalues and Eigenvectors for face recognition. Section 4 includes description of PCA. Section 5 includes discussion and comparisons between literature studies. And finally, section 6 concludes this work.

EigenFaces Studies
Many techniques for face recognition using EigenFaces were suggested and discussed in the past. Moghaddam, et al (1998) [6] proposed technique for visual matching of images for face recognition. They proposed similarity measure based on Bayesian analysis of image differences. They model two classes of variation between two facial images: intra-personal (variations in appearance of same individual due to different expressions or lighting) and extra-personal (variations in appearance due to difference in identity). The probability density functions for each class are obtained from training data using an Eigenspace density estimation technique and used to compute a similarity measure based on a posteriori probability of membership in intra-personal class, which is used to rank matches in database [6].
And Raphael and Brian (1999) [8] designed of a real-time face recognition system to operate in less constrained environments. The system is capable of single scale recognition with an accuracy of 94% at 2 frames per second. They used Eigenfaces for face recognition.
Also, Zahid R., et al. (2008) [9] described an approach for face recognition that includes two steps: segmenting face region from an image by using an appearance based model; using eigenfaces for person identification for segmented face region. The efficiency lies on combined use of aforementioned techniques and in generation of appearance models which uses approach for shape and texture. Experiments have been performed on Cohn Kanade facial DB using 10 subjects for training and sever for testing purposes. They achieved face recognition rate up to 92.85% with and without facial expressions. Face recognition using PCA is fast and efficient to use, while the extracted appearance model can be further 2 8 F e b r u a r y , 2 0 1 5 used for facial recognition and tracking under lighting and pose variations. This combination is simple to model and apply in real time [9]. And Sudhanshu, et al. (2009) [10] developed an approach to detect and identify of real time face recognition system with Graphical User Interface (GUI). This system takes a snap of a person from camera and store at a predefined place. The image face is treated as a two-dimensional recognition problem. Face images are projected on feature space that encodes the variation among the known face images. The feature space is defined the eigenfaces which are eigenvectors of faces. The Machine vision system designed have the feature that camera can rotate in horizontal and vertical direction [10].
Daniel Georgescu (2011) [11] implemented a real-time system for face detection and recognition in a video stream provided by a surveillance camera. Eigenfaces is used to solve recognition problem for two dimensional representations of faces using PCA. This system take snapshots which representing input images. These images are projected into a face space that defines variation for face images training set. Eigenfaces are used to define face space and represented eigenvectors of the set of faces. These Eigenfaces contribute in reconstruction of a new face image projected onto face space with a weight. The Euclidian distance is used to compare new image projection in this feature space with available projections of training set to identify person [11]. Finally, Tayal, et al, (2013) [12] proposed an Eigen based algorithm for face recognition from the database. This is typical task because face image changes with facial expression, age, viewpoint, illumination conditions and noise. At the same time, facial expression includes important information about mental, emotional and physical states of conversation.

PCA Studies
PCA is a classical feature extraction and data representation technique widely used in pattern and face recognition. But it has drawback of high computational especially for big size database. Jun-ying Gan, et al. (2005) [16] presented a method combined with the characteristics of PCA. This method is based on normalization of within-class average face image and has advantages of enlarging classification distance [16] between class samples. The method is based on computing average of faces training samples within class to normalize training samples. Fig. 1 shows this suggested method. Eigenface space is used later. The average face of all training samples is used to normalize all samples to be compared under same conditions. Training and testing samples are projected into Eigenface space to get feature. Nearest Neighbor Distance (NND) is used in classification. They used ORL (Olivetti Research Laboratory) face database. Results achieved recognition rate equal 98% [16]. Renke P. S. (2010) [17] proposed a methodology for improving face recognition rate. The method is tested using ORL database. Recognition rates for a database of 100 images shows promising results [17]. Fig.2 and Fig3 show the detailed description of this algorithm.

Fig 2: Construction of sub-image sets [17]
Hussein Rady (2011) [18] proposed face recognition system for personal identification/verification using PCA with different distance classifiers. The ORL face database is used to test system. Different classifiers (city-block distance; Euclidian distance; squared Euclidian Distance; and Squared Chebyshev distance) were used to match image of a person to a class obtained from training data. The Euclidian Distance Classifier produces a recognition rate higher than the City-Block Distance Classifier which gives a recognition rate higher than the Squared Chebyshev Distance Classifier. Fig.4 shows Schematic diagram of a face recognizer. 2 8 F e b r u a r y , 2 0 1 5 At the same time, Vinay and Ashutosh (2012) [19] developed a face recognition system using an extended PCA algorithm to deal with the problem of orientation and lightening conditions present in original PCA. The preprocessing phase of the proposed algorithm emphasize the efficiency of the algorithm even when number of images per person or the orientation is very different [19].  [20] conducted study to optimize the time complexity of PCA that does not affects the recognition performance. They minimized the participated eigenvectors which consequently decreases the computational time. A comparison is done to compare the differences between the recognition time in original and enhanced algorithms. The performance of the original and the enhanced proposed algorithm is tested on face94 face database. Experimental results showed that the proposed enhanced algorithm reduced recognition time by 35%.
Gunjan D.and Cyril Raj (2012) [21] conducted PCA for face recognition by projecting face image onto a feature space that spans the significant variations among known face images. The significant features are known as Eigen faces because they are the eigenvectors of the set of faces they do not correspond to the features (eyes, ears, and noses). The projection operation characterize an individual face by a weighted sum of Eigen faces features and so to recognize a particular face it is necessary only to compare these weights to those individuals. The results showed accuracy of singleface detection better than 92% with simple background and sufficient light source.
Marijeta and Dubravka (2012) [22] implemented face recognition system using the PCA based on an eigenfaces approach in which a small set of significant features are used to describe the variation between face images. They conducted many experimental results for different numbers of to verify the viability of the proposed method. They computed Euclidean Distance as recognition rate and the results vaeied from 77.5 % to 97.5 %. 2 8 F e b r u a r y , 2 0 1 5 And Abhishek and Saurabh (2012) [23] treated face recognition as a two-dimensional recognition problem and adopted Eigenface approach that uses PCA. Their system projected pre extracted face images onto a face space that encodes/represents best variation among known face images . Eigenface is used to define face space and these eigenfaces are eigenvectors of the set of faces. After matching with the present database, face will be categorized as known or unknown face. If the user is new to face recognition system then his template will be stored in database otherwise, matched against database templates.

EigenFaces with PCA Studies
The main challenge in face recognition systems is related to images taken in non ideal illumination conditions. There has been significant progress in improving the performance of computer-based face recognition algorithms over the last decade. Although algorithms have been tested and compared extensively with each other, there has been remarkably little work comparing the accuracy of computer-based face recognition systems with humans [29]. Quintiliano et, al. (2001) [26] conducted Eigenfaces and PCA for face recognition for poorly illuminated faces from Yale Face Database. The obtained recognition rates are above 72% [26].
And, Tsalakanidou, et al (2003) [27] developed face recognition technique based on the implementation PCA and the extraction of depth and colour eigenfaces (depth and colour information). They evaluated three approaches (colour, depth, combination of colour and depth) for face recognition and quantify the contribution of depth. They applied their suggested approach on XM2VTS database which contains (720×576) images of 295 persons each with 12images.
Nupoor M. Yawale (2013) [29] proposed a face recognition system based on Eigen faces. Face detection is to detect a human face in any given image and face recognition algorithm is to match it against a known face database. This face detection algorithm works by locating eyes in the image and the face recognition algorithm uses PCA to calculate eigenvalues and eigenvectors of the face images. This paper discusses a generic framework for the face recognition system, and the variants that are frequently encountered by the face recognizer. It also discusses the requirements of a robust face recognition system. Also face detection algorithm based on eye-analogue segmentation and recognition algorithm based on Eigen-space have been developed by us. And Rajib and Debotosh (2013) [30] used Eigenfaces using PCA for face recognition. They discussed the features that are important for classification to reduce the dimensionality of training set. Their experimental results have shown that face images can be successfully recognize with the rate of 96%. Rajkiran and Vijayan (2004) [33] proposed technique for face recognition by dividing the face images into smaller sub images. Then they applied PCA approach to each of these sub images. They evaluated the accuracy of conventional PCA and proposed PCA method under conditions of varying expression, illumination and pose using standard face databases. They used two image databases (UMIST and Yale.Their proposed algorithm has an improved recognition rate with large variations in lighting direction and facial expression when compared with conventional PCA [33].

FACE RECOGNITION USING EIGENFACES
Face recognition can be categorized into three approaches: Feature based; Holistic; and Hybrid. In holistic approach, the input data into face detection system is a whole face region. Many methods of holistic approach: Eigenfaces; probabilistic Eigenfaces; fisherfaces; support vector machines; nearest feature lines (NFL); and independent component analysis. These approaches are based on PCA techniques to simplify a dataset into lower dimension with maintaining the characteristics of dataset. In feature based approaches, local face features (nose, eyes) are segmented and used as input data for the structural classifier. Many methods related to this approach: pure geometry; dynamic link architecture; and hidden Markov. The hybrid approach perceives local feature and whole face. There are modular Eigenfaces; hybrid local feature; shape normalized; component based methods in hybrid approach [4].

EigenFaces
Facial recognition is discriminating input image into several classes (persons). Eigenfaces are a set of standardized face component (eigenvectors) based on statistical analysis (covariance matrix) of various face images (high dimensional vector that represents faces of humans). The human face can be represented by linear combination of Eigenface images (matrix). The eigenvector represents component. A matrix has a set of eigenvectors that represent the principal components of the matrix.
A new face image is projected onto face space (set of Eigenface features in face recognition system) by multiplying the difference between the image and average. The result is multiplied by each eigenvector. The eigenvectors corresponding to these features are weighted. The sum of these weights is a good representation of a given face. Euclidean distance is calculated between the mean adjusted input image and projection onto face space. Euclidean distance taken from each face class determines the class that best matches the input image [

4][20][22][23]
The Eigenfaces can be extracted out of original image by PCA [4]. PCA transforms each original image of training set into Eigenface. PCA can reconstruct any original image from training set by combining Eigenfaces. Each Eigenface represents certain features of face that may or may not be present in original image. The share of corresponding Eigenface in the sum of Eigenfaces should be greater if the feature is present in original image to a higher degree. The corresponding Eigenface should contribute a smaller part to sum of Eigenfaces if the particular feature is not present in original image. Weighted sum is computed of all Eigenfaces to reconstruct original image from Eigenfaces. The reconstructed original image is equal to sum of all Eigenfaces with each Eigenface having a certain weight. This weight specifies to what degree the specific Eigenface is present in original image. We can reconstruct original images from Eigenfaces if we use all Eigenfaces extracted from original images. The reconstructed image is an approximation of original image if we use only 2 8 F e b r u a r y , 2 0 1 5 part of Eigenfaces. Similar faces are faces which have similar weights. Similar faces possess similar Eigenfaces to similar degrees (weights). Images could be grouped to clusters if one extracts weights from all images available. Fig.5 describes face recognition algorithm using Eigenfaces [4][20] [22] [23].

Eigenvectors and Eigenvalues
An eigenvector of matrix is a vector that if is multiplied with this matrix, the result is an integer multiple of that vector. This integer value is named eigenvalue of eigenvector. Eigenvectors can be determined only for square matrices. There are n eigenvectors (and their eigenvalues) in n × n matrix. All eigenvectors are perpendicular. This relationship can be described by the equation [

Mathematical Foundations of Eigenface
The mathematical equations related to face recognition using Eigenfaces as described in details as follows: [4]

PRINCIPAL COMPONENT ANALYSIS (PCA)
PCA is a statistical analysis method based on Karhunen Loeve's transformation. PCA can reduce the high dimensionality of face image (vector project) to low-dimensional vector space. This is done by a specific feature vector matrix. Finally, we can reconstruct the corresponding original high-dimensional vector. PCA can retain its key identifying information [31] [32].

PCA Training Algorithm
The PCA training algorithm for face recognition can be summarized by the following steps [4] 1. Each face in training set of images is represented using s-dimension vector.
2. Create the transformation matrix using the training images.
3. The training images are projected onto the matrix columns. PCA finds t-dimension subspace whose basis vectors correspond to maximum variance direction in original image space. Where t subspace is lower dimensional (t<<s).
4. PCA vectors are defined as eigenvectors of scatter matrix if image elements are considered as random variables.
5. The Eigenface algorithm uses PCA for dimension reduction to find vectors which best account for distribution of face images within entire image space.
6. These vectors define subspace (face space) of face images.
7. Find a set of weights that describes contribution of each vector in face space, all faces in training set are projected onto face space.

PCA Testing Algorithm
The PCA algorithm for identifying/testing any face image can be summarized by the following steps [ Each test image should be mean centered Projection of test image onto same face space (subspace) Eigenspace as defined during the training phase. This is done to obtain the corresponding set of weights.
Comparing weights of test image (projected image) with the set of weights of faces in training set (eigenspace). This is done identify the test face image.
Images are compared with similarity measures.
The training image that is closest to the test image will be matched as used to identify.

COMPARATIVE ANALYSIS
Many studies related to face recognition systems were suggested in the past few years. In this paper, a comparative analysis of exiting face recognition methods was presented to examine the performances of these studies in terms of face recognition rates. It is important to suggest method to reduce dimensionality, feature extraction and classification for face recognition system. Many of these provided studies [6..12] were based on Eigenfaces. Other studies were based on PCA [14..23]. Finally other studies [26..33] were based on Eigenfaces with the using of PCA. Each one of these studies were focused essentially on performing face recognition process with good performance measures. But each with some limitations related to required time and memory, poor recognition rate, inability to recognize faces with different pose and illumination, and so on. There is always a need to improve the algorithms and approaches related to face recognition systems by studying the advantages and limitations of current algorithms and approaches.
At the same time, there is a need for general data base with large number of persons that includes many poses and illuminations. Because this is essential for better evaluations of face recognition approaches. Many large available databases for faces have been collected during the past years (FERET [34], Cohn-Kanade [35], Extended Yale DB [36], ORL DB [37], CASIA [38], and so on).
Most of literature studies that related to face recognition systems made decisions according to distance measure. These approaches were based on projecting images to lower dimension feature space. Other literature studies based on Eigenfaces were concerned with one pose. In order to estimate the actual face, we need for the same person a collection of different pictures of different angles and emotions. Better recognition rate will be found to recognize the person if we give more sample pictures of that person. Table 1 shows the characteristics of many of literature studies which related to face recognition systems. These characteristics include: approach used, database used, sample size of training and testing images, recognition rate, and required time.
From  [11]. Finally, these methods have been successfully applied for face recognition but each with its advantages and disadvantages.

Problems and Lessons learned
During the analysis of the literature related to face recognition which were based on Eigenface and PCA, we noticed the following points: 1. Most of literature studies were based on still images and very few studies were based on video. Video based face recognition systems showed good results in controlled environments.
2. Recognition of faces from video sequence is a challenging problem because video is of low quality and images are small.
3. One of the difficulties in literature studies is how to obtain database with good quality gallery images.
4. It is difficult to build robust face recognition because there are many challenges such as: 100% recognition rate, algorithm complexity, illumination, pose, and recognition in outdoor imagery. We presented review of approaches proposed in literature to solve these. Many of these problems remain to be unsolved such as: accurate pose estimation is hard. .Lack of face recognition studies which consider illumination and pose problems.

5.
Another difficulty related to face recognition systems is recognition of a person from images taken before many years.
7. There are few evaluations and benchmarking techniques of face recognition approaches and algorithms. This is lead to significant impact on progress in proposition of face recognition algorithms.
This lower performance of face recognition approaches in literature has motivated to suggest new effective face recognition method that take the following conditions in consideration: 1. Develop an algorithm that is based on database of face images with different face pose and illumination conditions.
2. Develop real time face recognition algorithm that take a sequence of images (frames) from digital video camera.
3. Develop algorithm that is not affected by the background of the face image.
4. Develop algorithm that take the advantages of Eigenfaces with the advantages of other artificial intelligence algorithm such as artificial neural networks (ANN) as a good classifier.

5.
Develop an algorithm that based on medium image dimension size and not very small.

CONCLUSION
Different approaches for face recognition systems based on EigenFaces and PCA were briefly listed and discussed in this work. We have been considered 3 types of face recognition studies (Eigenfaces; PCA; and Eigenfaces with PCA) and discussed their characteristics. Also, we discussed the Eigenfaces algorithm and PCA algorithm for face recognition.
Comparisons between different literature studies for face recognition systems based on Eigenfaces and PCA were discussed also.
We provided a summary of literature studies for face recognition systems with different: databases; number of training samples; number of testing samples; image size; classifiers; and performance measures (such as recognition rate, error, or required time). Many problems in literature studies were discussed. And finally, lessons and recommendations based on these problems were suggested in this work. In our future research, an improved real time face recognition system will be suggested and developed based on Eigenfaces algorithm.