Implementation and Evaluation of Face Recognition Based Identification System

Face recognition has been widely used and implemented to many systems for the purpose of authentication, identification, finding faces, etc. In this study Yale face database [1] is used which consist of 15 different people. For each of person there are 11 different images with different face expressions. In this study images are categorized as normal, normal and centre light, normal and happy, normal with left light and right light. In order to recognize these faces 4 different face recognition methods namely Eigenface, Fisherface, LBPHface and SURF are utilized in the developed environment. In order to test the mentioned face recognition algorithms a software is developed using EmguCV in .NET environment. After evaluating and comparing the obtained confusion matrix amongst other the LBPHface method was found to be superior method with an average accuracy of 99%, it was ~98% SURF, ~97% for EigenFace and FisherFace. FicherFace was slightly better then the Eigenface method.


Introduction
Face recognition systems have become more popular with the latest technological improvements and growing mobile applications [2] [3]. First of all there is a need for protecting personal sensitive information Which can be solve using face recognition systems [4]. Generally a password and user name is assigned to service consumers to be authenticated. But these password can be forgotten or be compromised by unwanted person. Therefore some mission sensitive environments requires biometric authentication such as finger print, personal vain map, retina scan. One of the most widely used biometric authentication method is face recognition in which the photograph of an official ID card is matched with camera snapshot [4]. There are many face detection and recognition methods which can be implemented in software namely Eigenface, Fisherface, LBPHface and SURF algorithms. These algorithms have some disadvantages and advantages relative to each other. In this study it is aimed to utilize these 4 algorithms to implement an authentication system based of recognized faces. They have been compared with each other regarding their sensitivity and specificity metrics in successfully matching the faces.

Brief introduction to Face Recognition
In the passing last two decades, Face recognition become a popular research area for not only computer scientist but also neuroscientists and psychologists. Computer vision research will provide information how brain works and vice versa.
Face recognition uses the characteristic properties of eyes, eyebrow mouth and nose, to detect faces without being influenced by direction state [4]. Face recognition studies is carried out by Viola and Jones for the first time algorithm of which s based on search and match of Haar figures [5]. In the fallowing subsections aforementioned face recognition methods is described briefly.

EigenFaces
EigenFaces method utilizes PCA (Principle Component analysis) to find principal components of faces in holistic manner not like to a parts-based or feature-based [6] [7]. PCA is a commonly used method of object recognition as its results, when used properly can be fairly accurate and resilient to noise. Eigenfaces are the principal components of a distribution of faces. In other words the eigenvectors of the covariance matrix of the set of face images. With Principal component analysis (PCA) such calculations are performed: For training set T1, T2, …… TM Average face ψ = 1/MΣ TM Difference vector φi = Ti -ψ Covariance matrix A = 1/MΣ φn φ T n In dealing with high dimensional space calculations of eigenvalues and eigenvectors are impractical for images and therefore problems arise. Since for a 256x256 pixel image, covariance matrix A will be 65536x65536 and number of eigenvectors therefore eigenvalues will be 65536. For example First of all data is mapped to a lower dimensionality space to achieve significant improvements.

Fisherfaces
Fisherface somehow enhanced method of EigenFaces utilizes LDA (Linear Discriminant Analysis) to detect face [8]. Fisher LDA is used for statistical pattern recognition and find a linear combination that help us to differ two or more objects or classes characteristic. This combination is used as a linear classifier or for dimension reduction [9]. Fisherface is more successful if the

LBPHfaces
Local Binary Pattern Histograms (LBP) is very effective in pattern images and three main reasons to implement this method is listed below [12]: • Ease of use • Low computation burden • High discrimination power These characteristics makes these method suitable for real time applications. LBP is first proposed by [13]. In [12] some methods is proposed to overcome effects caused by light. LBP is a texture operator which labels the pixels of an image. It thresholds the neighbourhood of each pixel and regards the result as a binary number. Because of its computational simplicity and discriminative power LBP texture operator has become a popular [14].

Speeded up Robust Features (SURF)
SURF transforms image to coordinates and process these coordinates to identify desired points. With SURF method the image which is going to be processed transformed a copy image with the same size but having low band width. In this process Gauss Pyramid or Laplace Pyramid figures are used [15].

K Nearest Neighbour Algorithm kNN
Stores training samples and predicts a new sample according to a certain number (K) of the nearest neighbours of the sample using voting, calculating weighted sum, and so on. For prediction it looks for the feature vector with a known response that is closest to the given vector [16]. In this study k-NN algorithm is used for classification. k-NN is one of the simplest methods of machine learning better results are obtained if there are abundant level of sample data [17]. In briefly in order to identify with kNN, distances between the queried face image features and data set images feature are taken into account, generally Euclidian distance is utilized with k equal to one.

Brief introduction for face dataset
Relatively new The Yale Face Database composed of contains 165 grayscale images in GIF format. These images are belong to 15 individuals, 11 images per person. The postures are categorised and taken one per different facial expression or configuration: centre-light, w/glasses, happy, left-light, w/no glasses, normal, right-light, sad, sleepy, surprised, and wink. The size of the data set is 6.4MB [1].

Identification system application
In application of the face recognition system EmguCV a wrapper library for OpenCV for .Net environment is utilized. MsSql server is used to store the reference image files. An Application with a user interface shown in Figure 1 is developed. General methodology of test steps are listed below: 1. Image to be compared is loaded to the application interface 2.
Face in the image is found by the algorithms described above and face is cut from the image 3.
Grey scale of cut face image is obtained 4.
It is compared (kNN) with the test set. For matching the grey scale face cut image Eigenface, Fisherface, LBPHface and SURF methods are used. For every method four different set of test set is used namely 1-Normal, 2 Normal-Cental Light, 3 Normal-Happy, 4 Normal-Left and Right Light. For every 15 people confusion matrixes are obtained one of these matrix belonging to LBPHfaces for Normal view is depicted in Fig. 2. From the matrix some metrics are calculated in order to relatively asses the success of the applied methods these are namely,

Evaluation of Utilized Feature Extracting Methodologies
After obtaining confusion matrixes for all 4 of the methods namely Eigenface, Fisherface, LBPHface and SURF methods evaluation metrics are calculated. Table 1-4 shows the result of the average of metrics namely Accuracy, F1 Score, MCC, and Sensitivity for the testes four methods. As could be seen in Table 1, using Eigenface for feature extraction an average of 97% accuracy is obtained however the sensitivity is as low as average 59% which means correctly selecting the true positives. As could be seen in Table 2, using Ficherface for feature extraction an average of 97% accuracy is obtained however the average sensitivity is as low as average 72% which is slightly better then Eigenfaces. As could be seen in Table 3, using SURF for feature extraction an average of 98% accuracy is obtained however the average sensitivity is as low as average 65% which is slightly better then Eigenfaces but lower then Ficherface. As could be seen in Table 4, using LBPHFaces for feature extraction an average of 99% accuracy is obtained also the average sensitivity 94% Which is superior to all other compared method.
Not only accuracy but also other presented metrics are found to be superior regarding for the same dataset. Table 5 shows the some other studies also studied on the same Yale Face database. They have been investigated in the literature review study [18]. As it could be easily assessed from the Table 5 the proposed method either superior or very close to those of studies regarding accuracy metric.

CONCLUSIONS
Despite similar accuracy level for all tested four methods namely EigenFaces, fisherFace SURF and LBPHface, Methods, LBPHFace method have been found more successful then other methods regarding metrics MCC, Sensitivity and F1 Score. Successes of the EigenFace, FisherFace and SURF have increased, as other images with different light angle are included to tests. Success of LPBHFace is increased as different face mimics added to test sets. Even adding images with different light angle to the test set of LPBHface did not get a significant increase in success, it can be easily concluded that this method is more successful with less image datasets. A new identification system is proposed with a more successful implementation of LPBHface. For future work in the shade of the results obtained from the experiments study, the system gives assurance to be employed in many kind of identification system such as school attendance, conference registrant identification, hotel guest identification etc.