Monday, 26 May 2014

MATLAB Implementation of Face Recognition using PCA and Eigen Face Approach.

Face is a complex multidimensional structure and needs a good computing techniques for recognition. Our approach treats face recognition as a two-dimensional recognition problem. In this scheme face recognition is done by Principal Component Analysis (PCA). Face images are projected onto a face space that encodes best variation among known face images. The face space is defined by Eigen face which is eigen vectors of the set of faces, which may not correspond to general facial features such as eyes, nose, and lips. The Eigen face approach uses the PCA for recognition of the images.
The system performs by projecting pre extracted face image onto a set of face space that represents significant variations among known face images. Face will be categorized as known or unknown face after matching with the present database. If the user is new to the face recognition system then his/her template will be stored in the database else matched against the templates stored in the database. The variable reducing theory of PCA accounts for the smaller face space than the training set of face.

The Face is a complex multidimensional structure and needs good computing techniques for recognition. The face is our primary and first focus of attention in social life playing an important role in identity of individual. We can recognize a number of faces learned throughout our lifespan and identify that faces at a glance even after years. There may be variations in faces due to aging and distractions like beard, glasses or change of hairstyles. Face recognition is an integral part of biometrics. In biometrics basic traits of human is matched to the existing data and depending on result of matching identification of a human being is traced. Facial features are extracted and implemented through algorithms which are efficient and some modifications are done to improve the existing algorithm models. Computers that detect and recognize faces could be applied to a wide variety of practical applications including criminal identification, security systems, identity verification etc. Face detection and recognition is used in many places nowadays, in websites hosting images and social networking sites. Face recognition and detection can be achieved using technologies related to computer science. Features extracted from a face are processed and compared with similarly processed faces present in the database. If a face is recognized it is known or the system may show a similar face existing in database else it is unknown. In surveillance system if a unknown face appears more than one time then it is stored in database for further recognition. These steps are very useful in criminal identification. In general, face recognition techniques can be divided into two groups based on the face representation they use appearance-based, which uses holistic texture features and is applied to either whole-face or specific regions in a face image and feature-based, which uses geometric facial features (mouth, eyes, brows, cheeks etc), and geometric relationships between them.

Fig.1. Block Diagram of Face Recognition with PCA

Face Image Representation:
Each face is represented by

Feature vector of a face is stored in a NxN matrix. Now, this two dimensional vector is changed to one dimensional vector.
Mean and Mean Centered Image:

Average Face Image is calculated by
Covariance Matrix
A covariance matrix is constructed as:
Size of covariance matrix will be NxN (4x 4 in this case). Eigen vectors corresponding to this covariance matrix is needed to be calculated, but that will be a tedious task therefore, for simplicity we calculate A Transpose A which would be a 2 x 2 matrix in this case.

Recognition Steps:
MATLAB Implementation: 
 Fig.2. MATLAB Main GUI

 Fig.3. Data Base Store GUI

Fig.4. Face Matching with PCA GUI

if you want this code then contact us on....
Mobile Number: +91-9637253197
Whatsup Number: +91-9637253197
Email ID:


  1. dear sir give me a your matlab code my mail is

  2. dear sir
    my email: