VIEWS: 0 PAGES: 11 POSTED ON: 5/7/2014 Public Domain
International Journal of JOURNAL OF in Engineering RESEARCH IN ENGINEERING INTERNATIONAL Advanced ResearchADVANCEDand Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME AND TECHNOLOGY (IJARET) ISSN 0976 - 6480 (Print) ISSN 0976 - 6499 (Online) IJARET Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME: www.iaeme.com/ijaret.asp Journal Impact Factor (2014): 7.8273 (Calculated by GISI) ©IAEME www.jifactor.com EFFICIENT FACE RECOGNITION SYSTEM USING HYBRID METHODOLOGY Keyur Shah1, Vijay Ukani2 1, 2 (Computer Science and Technology, Nirma University, Ahmedabad, India) ABSTRACT Recognizing frontal countenance of human beings by a computer system is an interesting and challenging problem. Facial recognition System has emerged as an adorable solution to address many instant needs for identification and the verification of identity claims. It brings together the portend of other biometric systems, which attempt to tie identity to individually distinctive features of the body. Facial feature extraction consists in restraining the most characteristic face countenance such as eyes, nose, and mouth regions within the face images that portray the human faces. In this paper, the two most well-known algorithms i.e. PCA and LBP are introduced and the combination of Local Binary Pattern (LBP) and Principal Component Analysis (PCA) is presented as our proposed approach in which the proposed approach has achieved 93.5% of gain in processing memory. LBP algorithm is used as feature extractor of the face image. LBP is used for their resistance against changing frontal facial expressions. PCA algorithm is used for dimension reduction of the countenance vector. The complete approach has been tested on databases of people under different facial expressions. Keywords: Face Recognition, Local Binary Pattern, Principal Component Analysis, Hybrid Method. I. INTRODUCTION Face recognition is one of the most pertinent applications of image analysis. Face detection is consists of pre-processing step for face recognition, and as an issue by itself, because it presents its own difficulties and challenges, sometimes quite different from face recognition. It is a challenge to build an automated system which commensurate human ability to recognize faces. 179 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME 1.1 Research area of face recognition There are wide ranges of research area for face recognition system, which are focused and implemented by many well-known industries i.e. in automobiles, IT industries, etc. Some known areas are Information Security, Access management, Biometrics, Law enforcement, Personal security, Entertainment industry. 1.2 Motivation The interest for the efficient face recognition algorithm i.e. recognizing faces which is an emerging area of research in applications development, i.e. Recognizing people for various purposes like access control, biometric access, personal security, etc. In such systems the input is taken as an image from the digital devices and after processing the input image the output is in form of relevant personal information about the person. 1.3 Scope of paper Goal of this paper is to present the work on Hybrid approach, by implementing the efficient Face Recognition algorithm which can reduce the use of processing memory. This face recognition system can be used in real world scenario. It can be applied in small scale organizations like Industries, Universities/Colleges, and Hospitals. Implementing face recognition algorithm that can be used with as much ease as possible for recognizing faces. Fig 1: Basic model of Face Recognition System 180 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME II. FACE RECOGNITION DESIGN POINTS OF VIEW The most axiomatic face countenances were used in the dawn of face recognition. It was an intelligent approach to resemble human face recognition ability. There was an effort to try to measure the importance of certain spontaneous features like eyes, cheeks, mouth and geometric measures like eye distance, length ratio, etc. Nowadays it is still a pertinent issue, mostly because eliminating certain facial countenances or features from a face can lead to a better performance [1]. In other words, it is imperative to decide which facial features play an important role to a good recognition and which features are not vital. However, the influx of abstract mathematical tools like Eigen faces created another approach to face recognition. It is possible to gauge the similarities between faces precluding those human-relevant countenances. This new point of view empowered the new abstraction level, leaving the anthropocentric approach behind. There are still some human- relevant features that are being taken into account [2]. For example, skin color is an important countenance for face detection. The region of certain features like mouth and eyes is also used to perform normalization prior to the feature extraction step. To sum up, a designer can apply to the algorithms the knowledge that psychology, neurology or simple observation provide. 2.1 Face recognition methodologies The work done in face recognition was based on the spatial relationships between facial landmarks as a means to capture and extract facial features. This method is obviously highly dependent on the detection of these landmarks which is difficult in variations illumination, shadows as well as the stability of these relationships across pose variation. These problems were and still remain significant faltering blocks for face detection and recognition [1]. This work was followed by a different approach in which the face was treated as a general pattern with the application of more general pattern recognition approaches, which are based on photometric characteristics of the image. To implement these approaches a huge variety of algorithms have been developed. Here we will focus on two of the most powerful streams of work: Principal Components Analysis (PCA) and Local Binary Pattern (LBP). 2.2 Principal Component Analysis One of the most used and cited statistical method is the Principal Component Analysis (PCA) [4] [5] [6]. It is a mathematical procedure that performs a dimensionality reduction by extracting the principal components of the multi-dimensional data. The first principal component is the linear combination of the original dimensions that has the highest variability. The n-th principal component is the linear combination with the maximum variability, being orthogonal to the n-1 first principal components. Usually the mean x is extracted from the data. So, let xn, xm be the data matrix where x1,..., xm are the image vectors (vector columns) and n is the number of pixels per image. T C x= Λ (1) Where cx is the covariance matrix of the data. C x= (2) Φ=[ 1,……., n] is the eigenvector matrix of cx. Λ is a diagonal matrix, the eigenvalues λ1,…… λn n of cx are located on its main diagonal. λi is the variance of the data projected on i 181 Engineering International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME 2.3 Local Binary Pattern The original LBP operator, introduced by Ojala et al [7], is a powerful means of texture 3x3 description. The operator labels the pixels of an image by thresholding the 3x3- neighbourhood of each pixel with the centre value and considering the result as a binary number. Then the histogram ls of the labels can be used as a texture descriptor. See Figure 2 for an illustration of the basic LBP operator. Later the operator was extended to use neighbourhoods of different sizes [8]. Using allow circular neighbourhoods and bilinear interpolating the pixel values allow any radius and number of pixels in the neighbourhood. For neighbourhoods we will use the notation (P, R) which means P sampling points on a circle of radius of R. See Figure 3 for an example of the circular (8, 2) neighbourhood. Another extension to the original operator uses so called uniform patterns [8]. A Local Binary Pattern is called uniform if it contains at most two bitwise transitions from 0 to 1 or vice versa when the binary string is considered circular. For example, 00000000, 00011110 and 0011 10000011 are uniform patterns. Ojala et al. Noticed that in their experiments with texture images, uniform patterns account for a bit less than 90% of all patterns when using the (8,1) neighbourhood and for around 70% in the (16,2) neighbourhood. 2 Fig 2: The basic LBP operator [7] Fig 3: The circular (8,2) neighbourhood. The pixel values are bi-linearly interpolated whenever the bi linearly sampling point is not in the centre of a pixel [7] We use notation for the LBP operator LBPu2p,r The subscript represents using the operator us in a (P, R) neighbourhood. Superscript u2 stands for using only uniform patterns and labelling all remaining patterns with a single label. A histogram of the labelled image fl(x, y) can be defined as 182 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME Hi= I {fl(x, y) = i} , i = 0, . . . , n − 1, (3) in which n is the number of different labels produced by the LBP operator and I {A} = 1, A is true 0, A is false. This histogram contains information about the distribution of the local micro-patterns, such as edges, spots and flat areas, over the whole image. For efficient face representation, one should retain also spatial information. For this purpose, the image is divided into regions R0,R1, . . . Rm-1 and the spatially enhanced histogram is defined as Hij= I {fl(x, y) = i} I {(x, y) Rj}, i = 0, . . , n−1, j = 0, . . . , m−1 (4) In this histogram, we effectively have a description of the face on three different levels of locality: the labels for the histogram contain information about the patterns on a pixel-level, the labels are summed over a small region to produce information on a regional level and the regional histograms are concatenated to build a global description of the face. 2.4 Hybrid Face Recognition System LBP is suitable for feature vector needed for fast processing. In the past ten years, the operator has been widely used in texture classification, image retrieval and other areas such as facial image analysis. Because of the direct and simple calculation, insensitivity to the light and rotation, capability for capturing image detail, the operator can extract the patterns of local region which are more favorable. The image can be considered as a sample of a stochastic process, if the image elements are of random variables type [8]. The PCA basis vectors are defined as the eigenvectors of the scatter matrix. PCA technique allows the system to represent the necessary information for comparing the faces using the little information once the mathematical representation accomplished which it is need to have a lot of faces to be store. PCA is useful in linear regression in several ways Identification and elimination of multi-collinearities in the data. PCA projects the data along the directions where the data varies the most. The eigenvectors calculated from the covariance matrix corresponds to the largest Eigen values. The magnitude of the Eigen values corresponds to the variance of the data along the eigenvector directions [9]. TABLE 1: Comparison table based on various parameters [5][6][7][8][9] PARAMETERS PCA LBP HYBRID METHOD Binary Patterns No Yes Yes Computational No Yes Yes Simplicity Time Required Less Moderate Very Less Effect of Facial High Less Less Expressions Different Lighting Moderate Less Less Conditions Effect of High Less Less Orientation 183 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME III. PROPOSED METHOD Combination of Local Binary Pattern and Principal Component Analysis for the face recognition. LBP helps to recognize face image with small orientation, illumination variances and expression. PCA will reduce the length of the feature vector. LBP operator works with 8 neighbours of pixel, using value of centre pixel as a threshold. All neighbours that have values higher than the value of central pixel will be given value 1 and all those that have lower or equal to value of central pixel will be given value 0.The eight binary numbers associated with 8 neighbours are then read sequentially in the clockwise direction to form a binary number. This binary number or its equivalent in decimal system may be assigned to central pixel. The LBP feature vector, in its simplest form, Divide the examined window to cells (e.g. 33×28 pixels for each cell). For each pixel in a cell, compare the pixel to each of its 8 neighbours. Where the centre pixel's value is greater than the neighbour, write "1". Otherwise, write "0". This will give an 8-digit binary number (which is usually converted to decimal for convenience). This binary number will be considered in clockwise direction. Compute the histogram, over the cell, of the frequency of each "number" occurring (i.e., each combination of which pixels are smaller and which are greater than the centre). Optionally normalize the histogram. Concatenate normalized histograms of all cells. This will give the feature vector for the window. Local Binary Pattern has been applied to normalize images under varying illuminations and expression. PCA has been considered as a simple, efficient linear subspace method, many nonlinear techniques such as kernel PCA can be used. Certain nonlinear methods with certain classifiers do yield better performances consistently than others. The following works can be carried out in future to improve the face recognition. In this approach we used Training dataset consists of 760 images of dimension 180×200 of 152 different faces with 5 variations in expressions. Test dataset which is used as input consists of 304 images of dimension 180×200 of 152 different faces with 2 variations in expressions. Facial features are extracted from the LBP face image and then image is divided into 10 regions LBP histograms are generated for each window region. The generated vector values is inputted to PCA for dimension reduction. The input test image will be checked with set of train images After matching the test image, the results are shown in Ranking order, i.e. first best match will be shown first. IV. IMPLEMENTATION 4.1 Local Binary Pattern By dividing the examined window into cells (e.g. 16×16 pixels for each cell). For each pixel in a cell, compare the pixel to each of its 8 neighbours (on its left-top, left-middle, left-bottom, right-top, etc.). Follow the pixels along a circle, i.e. clockwise or counter-clockwise. Where the centre pixel's value is greater than the neighbour’s value, write "1". Otherwise, write "0". This gives an 8-digit binary number (which is usually converted to decimal for convenience). Compute the histogram, over the cell, of the frequency of each "number" occurring (i.e., each combination of which pixels are smaller and which are greater than the centre). Optionally normalize the histogram. Concatenate (normalized) histograms of all cells. This gives the feature vector for the window. The algorithm for LBP is as, where I is number of images, neigh is neighbouring cell, WHT is the weight of neighbouring pixels to generate the histogram Histo. 184 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME input : I,WHT output: Histo INIT Histo[] to 0; INIT t[] to 0; foreach pixel in I do foreach element k in neigh do if neigh[k] is greater than pixel then SET t[k] to 1; End End SET LBPCode to sumof(WHT*t); ADD 1 to hist[LBPCode] ; End Algorithm for LBP 4.2 Principal Component Analysis Dimension Reduction Technique is the first step of PCA. In this we will create a matrix of no. of Images arranged in Columns(n) and the no. of pixels of image in arranged in Row(m) as an input I. After this in second step we will calculate the mean, finding covariance matrix i.e. C=A*A(T). Center portion of image is calculated by subtracting the covariance from column (pixel of original image). Eigen value is equals to no. of image × no. of pixels. It will create matrix of [E,V] Eigen matrix. Eigen Faces is equal to Centered * Vectors. We have to calculate the ratio of centered value by vector. The largest value of the ratio will be selected and the Eigen face matrix is calculated. The algorithm for PCA is as, where I is number of images, N is the output, STR is the string which stores the converted image number as string, M is for calculating mean value. input : I output : N foreach image-no in train-number do STR = Convert integer-to-string(image-no); STR = Concatenate (Str, image-type); STR = Concatenate (train-database-path, Str); I = image-read(STR); I = Convert( rgb-to-gray(I)); [image-no-row, image-no-col] = size(image); temp = Reshape(image, image-row*image-col); T = [T temp]; end M = MEAN(I) A = A-M C = TRANSPOSE(A)*A [U,S,V]=Eigen(C) Ureduce =U(:,1:K); Z=TRANSPOSE(Ureduce)*TRANSPOSE(I); N=TRANSPOSE(Z); End Algorithm for PCA 185 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME 4.3 Hybrid Method Selecting dataset to Train and Test the images. Applying LBP to get the frontal facial feature and extracting facial countenance then applying PCA to extracted features this will generate reduced dimension feature vector of the images. Comparing the test input image to the trained dataset and the result is shown in ranked order. The algorithm for Hybrid method is as, where I is number of images, WHT is the weight of neighboring pixels to generate the histogram Histo, STR is the string which stores the converted image number as string, M is for calculating mean value. Here the input to the PCA is the generated histogram Histo. input : I,WHT output : Histo INIT Histo[] to 0; INIT t[] to 0; foreach pixel in I do foreach element k in neigh do if neigh[k] is greater than pixel then SET t[k] to 1; end end SET LBPCode to sumof(WHT*t); ADD 1 to histo[LBPCode] ; I=Histo M = MEAN(I) A = A-M C = TRANSPOSE(A)*A [U,S,V]=Eigen(C) Ureduce =U(:,1:K); Z=TRANSPOSE(Ureduce)*TRANSPOSE(I); N=TRANSPOSE(Z); MIN=999; foreach i=1 to no-of-images do Dist(i)=N(i)-Query(i) if Dist(i) less than MIN then MIN=Dist(i) POS=i end end End Algorithm for Hybrid Method This work implemented the proposed Hybrid approach in Matlab Version 7.12.0.635 (R2011a) 64-bit (win64), for image database, we used ESSEX database which consists of 152 individual images of person [9] female (20), male (132) with little variations in frontal face expressions. In this we have selected 304 images as input of 152 individual images with 2 variations each to test against trained database of 760 images of 152 individual images with 5 variations each, and after processing the result is shown in ranked order i.e. first best match will show at first position as: 186 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME Fig 4: Output of result in ranking order using hybrid method V. RESULT ANALYSIS Principal Component analysis (PCA) is a worthy method for finding patterns in data with ability to express it in a way that similarities and differences are focused. As the dimensionality of data increases finding patterns in data become more difficult, PCA is a great tool for this purpose. Local Binary Pattern (LBP) is a simple and very efficient texture operator. It creates the binary pattern of every pixel of an image. The most important property of LBP operator in real-world applications is its robustness to monotonic gray scale changes. It is also computationally simple. In PCA Eigen faces, we need rows × columns i.e. if image sizes 256 × 256 then 65535 pixels have to be stored. In LBP an image is represented by a feature vector of length 768. PCA require 1572840 bytes of processing memory for single image, LBP requires 116736 bytes of processing memory for single image. In hybrid approach the output of LBP i.e. 768 values is compressed using PCA to 50 values. So using hybrid approach an image can be represented using a feature vector of length 50 and the result is also not compromised. Using hybrid approach by implementing first LBP in our algorithm we need 116736 bytes of processing memory, after applying the PCA to this input we now need only 60800 bytes, 93.5% gain in processing memory is achieved. TABLE 2: Required processing memory by different algorithms Algorithm Processing Memory PCA 1572840 Bytes LBP 116736 Bytes HYBRID METHOD 60800 Bytes 187 Engineering International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME Fig 5: Comparison of processing memory required by LBP, PCA, and Hybrid method VI. CONCLUSION This work has presented the different algorithms, the proposed approach and various algorithms with their efficiency. The algorithms PCA, LBP and Hybrid approach are studied and implemented the results were analysed and from that we can conclude that though the LBP requires less processing memory, and if we have large number of image database the required processing ry memory as compare to PCA would be less. The hybrid approach will make some good difference in terms of reduction to processing memory (i.e. 93.5% gains) as compare to these existing algorithms. constrained Face recognition systems used today work very well under constrained conditions, although all systems work much better with frontal images and constant lighting. VII. REFERENCES [1] Ion Marques Face Recognition Algorithms, Proyecto Fin de Carrera June 2010. [2] Study of Different Algorithms http://ethesis.nitrkl.ac.in/1701/2/B.pdf. [3] W. Zhao, R. Chellappa, A. Rosenfeld, and P. Phillips Face recognition: A literature survey 399 ACM Computing Surveys, pages 399-458 2003 [4] loeve M. Kirby and L. Sirovich Application of the karhunen-loeve procedure fo the for characterization of human faces IEEE Transactions on Pattern Analysis and Machine 108, Intelligence, 12(1):103-108, 1990 [5] M. Turk and A. Pentland Eigenfaces for recognition Journal of Cognitive Neuroscience, 3(1):71-86, 1991. [6] irby Low dimensional L. Sirovich and M. Kirby Low-dimensional procedure for the characterization of human A faces Journal of the Optical Society of America A- Optics, Image Science and Vision, 4(3):519-524, March 1987. 188 International Journal of Advanced Research in Engineering and Technology (IJARET), ISSN 0976 – 6480(Print), ISSN 0976 – 6499(Online) Volume 5, Issue 4, April (2014), pp. 179-189 © IAEME [7] Timo Ahonen, Abdenour Hadid, and Matti Pietikainen Face Recognition with Local Binary Patterns Machine Vision Group, Infotech Oulu,FIN-90014 University of Oulu, Finland. [8] L.I. Smith A tutorial on Principal Component Analysis Cornell University, USA, 2002. [9] Etemad, K., Chellappa Discriminant analysis for recognition of human face images Journal of the Optical Society of America 14 1997. [10] Computer Vision Science Research Projects http://cswww.essex.ac.uk/mv/allfaces/faces94.html [11] Abhishek Choubey and Girish D. Bonde, “Face Recognition Across Pose With Estimation of Pose Parameters”, International Journal of Electronics and Communication Engineering &Technology (IJECET), Volume 3, Issue 1, 2012, pp. 311 - 316, ISSN Print: 0976- 6464, ISSN Online: 0976 –6472. [12] S. K. Hese and M. R. Banwaskar, “Appearance Based Face Recognition by PCA and LDA”, International journal of Computer Engineering & Technology (IJCET), Volume 4, Issue 2, 2013, pp. 48 - 57, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375. [13] Sambhunath Biswas and Amrita Biswas, “Fourier Mellin Transform Based Face Recognition”, International Journal of Computer Engineering & Technology (IJCET), Volume 4, Issue 1, 2013, pp. 8 - 15, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375. [14] Prof. B.S Patil and Prof. A.R Yardi, “Real Time Face Recognition System using Eigen Faces”, International Journal of Electronics and Communication Engineering & Technology (IJECET), Volume 4, Issue 2, 2013, pp. 72 - 79, ISSN Print: 0976- 6464, ISSN Online: 0976 –6472. [15] U.K.Jaliya and J.M.Rathod, “A Survey on Human Face Recognition Invariant to Illumination”, International journal of Computer Engineering & Technology (IJCET), Volume 4, Issue 2, 2013, pp. 517 - 525, ISSN Print: 0976 – 6367, ISSN Online: 0976 – 6375. [16] J. V. Gorabal and Manjaiah D. H., “Texture Analysis for Face Recognition”, International Journal of Graphics and Multimedia (IJGM), Volume 4, Issue 2, 2013, pp. 20 - 30, ISSN Print: 0976 – 6448, ISSN Online: 0976 –6456. 189