Face Recognition Using Back Propagation Neural Network: Siddharth Rawat

Download as pdf or txt
Download as pdf or txt
You are on page 1of 8

International Journal of Innovations in Engineering and Technology (IJIET)

http://dx.doi.org/10.21172/ijiet.104.21

Face Recognition Using Back Propagation


Neural Network
Siddharth Rawat1
1
Graphic Era University

Abstract- Face recognition has gained increasing interest in the recent decade. Over the years there have been several
techniques being developed to achieve high success rate. This includes the identity of the person, the expression of the
person in the image, the orientation of the face in the image and etc and also utilizes the feature of the images of the
people taken with the varying poses and expressions i.e., depend upon the resolution. This face recognition system begins
with image pre processing and then output image is trained using the back propagation algorithm. Back propagation
learns by training the inputs, calculating the error between the real
output and target output, and propagates back the error to the network to modify the weights until the desired output is
obtained. After training the network, the recognition system is tested to ensure that the system is recognize the pattern of
each face image. Now the total number of epochs requires reaching the degree of accuracy is referred to as the
convergence rate. The system will find the database image has a maximum percentage on similarity of the pattern of the
image. Now generally the training process continues of the face recognition till the M.S.E (i.e., Mean Squared Error)
reaches/falls to a value of 0.000100.

I. INTRODUCTION
The technology of face recognition is going to be very important for our daily life. There would be lots of areas such
as remote identification services for security and also in other areas can be used. Now it is generally aimed at the
whole demonstrating facial recognition techniques that should be like as alternative. There would be a computerized
system which is generally equipped with respect to a digital camera generally can identify the face of a person and at
that moment. So this would be seems that, the face recognition are now generally readily available in the market
area, at the vast majority are installed at large open accessed spaces. Now the focus of this work is, thus, compared
with the face database image for the general recognition analysis by using the back propagation neural network.
Now in this face recognition, there would be several successive years and a great number of researchers attempted
for facial recognition systems based on the images like edges, inter-feature spaces, and various neural network
techniques, but significantly there will be directed and the alternative practical problem of vast databases where the
position and scale of the face was not known. So this would happened as the biometric identification as technique of
automatically identifying or verifying an individual by a physical characteristics or personal trait. Now the biometric
identification system must be identify or verify a human characteristic or trait quickly with little or no intervention
from the user. So using the software, a computer is able to locate the human faces in the images and then match
overall facial patterns to record stored in database.

II. LITERATURE SURVEY


Anissa Bouzalmat et al [1] introduced the face recognition system by using the neural network, in which it can
specify or classify the feature or as we can say that feature vector based using Fourier Gabor Filters, which is used
as an input of BPNN. It will extracting the features by using feature vectors of whole face on that image, and also it
will using a detection of skin human faces in images by using an algorithm by introducing the Gabor filters with the
8 different orientations and 5 different resolutions to get maximum information, so it will specify the information in
the form of features vector of whole face in image and detecting the color of skin. So it is generally a fast algorithm
and easy to implement.
Byung-Joo Oh [2] proposed work for face recognition by using the neural network classifier which is generally
based on the PCA (Principle Component Analysis) an also use of LDA (Linear Discriminant Analysis), by which
the feature can be classified from the face images using the PCA and LDA by Multiple layer Neural Network
(MLNN), and generally it can be done in the propose approach with respect to ORL database. The performance will
be checked and it will be of PCA+MLNN which is more superior to the LDA+RBFN. And after that finally, the
comparison between the LDA+RBFN and PCA+MLNN and the resultant technique will be more successfully as
PCA+MLNN which will giving us a performance of 95.29% as recognition rate.
Nawaf Hazim Barnouti et al [3] made a real time based face recognition system, which is firstly detect the faces.
Now after that, the viola jones as to detect face algorithm will be used to make a detection of a cropped face image
area from the image, after that feature will be extracted, which is generally used by the algorithm or method of PCA

Volume 10 Issue 4 July 2018 125 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

which will acquire the process of dimensionality reduction and feature extraction. RBF will consider result of BPNN
output layer as input. Testing process will be done and the result of recognition rate will be going high, and
information of individuals will be stored in the database. So the BPNN is giving us a lot of acceptable results.
N.Revathy et al [4] used face recognition, it is finding the best suitable match of unknown image against database,
by using the BPNN for implementation. It will train the input pattern and adjust the weight with associated error, by
which input pattern receives input signal and propagates into each hidden neuron, which is computing the activation
to net output. It can implemented in the MATLAB by using the required toolbox i.e., Neural Network Toolbox. So
by this, we can generally transform different inputs and compared with unknown face with that given is in database
or not. This system performs an invariant to changes in background and illumination conditions also. So this will
also indicates the results in the form of Eigen faces. So this proposed system performs well in the lighting variations.
Rajath Kumar M.P. et al [5] the method and algorithm will be used of the PCA with the BPNN. Now the data set in
the form multivariate is generally reduced with the algorithm of PCA technique, which is implemented with the
BPNN. Generally, this whole experimentation with the ORL face database. So the process of face recognition is
done, then it will quiet seems to be faster execution will at process of accuracy suffers and vice-versa for BPNN.
Now generally describe solely implementation of PCA for the faster execution time, but the accuracy of recognition
exponentially suffers from increasing the number of subjects as linearly forms. After that Euclidean distance is also
computed and that has not been pre processed due to this accounts for uncontrolled lighting and other variations in
subject image.
Ravi Prakash [6] represented fast evolving technology which can detect unauthorized access on system and it is
implemented based on the robust face recognition systematic approach is proposed for the image decomposition by
using Haar Wavelet Transform and for the generalized feature extraction using the eigen values by PCA and also it
can classify by using the BPNN (Back Propagation Neural Network), so in this way it will generalize the effect of
comparison of face to show the effectiveness of this algorithm. It reduces time and recognizes the image from the
database. Haar wavelet transform has been applied over an image to decompose it into 2-level sub images bands and
applying the eigen values to these bands, and finally the BPNN is used for the image classification and recognition.

III. BACK PROPAGATION NEURAL NETWORK ALGORITHM


3.1. Introduction
BPNN algorithm is a very widely used and well known learning algorithm in training multilayer perceptron (MLP).
The MLP network is composed by a set of sensory mathematical units which form the input layer, hidden layer(s)
and a single output layer. The input signal follows a unidirectional flow, from left to right, through the multiple
layers of the network. Now the BPNN algorithm is MLN using weight adjustment based sigmoidal function, like
with the delta rule. It is generally a fully feed forward network connection. The activation travels in a direction from
input layer to the output layer and its units in one layer are all connected to every unit in the next layer. It generally
consists of two sweeps of the network which are forward sweep and backward sweeps. Forward sweeps defines the
network from the input layer to the output layer, in which it propagates the inputs vectors through the network to
provide outputs at the output layer in the end. During the forward sweep, the weights of the networks are all fixed.
The backward sweep hence defines network from the output layer to the input layer, except that the error values are
propagate back through the network.
This is done in order to determine how the weights are to be changed during the training, in which the weights are
all adjusted in accordance of an error correction rule where the actual response of the network is subtracted from the
target response to produce an error signal. BPNN algorithm used as supervised learning approach that incorporates
the gradient descent learning rule (Δ or δ).

Figure 3.1 Representation of Multi Layer Perceptron (MLP) as input layer, hidden layer and output layer

Volume 10 Issue 4 July 2018 126 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

3.2. BPNN Algorithm


BPNN algorithm according to mathematical formulae wise will be described or defined as,
Step 1: Input for hidden layer, netm :
netm = Σz=1n xz wmz
Step 2: The output of the hidden layer will be given as, h:
h = 1÷ 1 + exp(-netm)
Step 3: Input for output layer is, netk:
netk = Σz=1m hz wkz
Step 4: Updating weights based on error. Error „E‟ is generally calculated by,
E = ½ Σi=1k (oi - ot)2
If error E falls below a predefined threshold, the training process will stop, until which the weights will continue to
be updated. The change in weights between the input layer and hidden layer is given by,
ΔWij = αδihj
Where „α‟ is the training rate coefficient and „δ‟ is given by,
δi = (ti - oi)oi(l - oi)
The change in weights between the hidden layer and the output layer is given by,
ΔWij = βδHixj
And the equation value of δHi is,
δHi = xi (l - xi) Σj=1k δj Wij
Now, after computing the weight change in all the layers, the new weights are simply given by,
Wij (new) = Wij (old) + ΔWij
Now the process is iterated until the error reaches its minima.

3.2.1 Weights
Now at randomly the adjustable weights will be lies between the values of -0.3 to 0.3 and is assigned for each node.
By this, it can randomly assigned value decides, when the network will reach its minima or negligible error i.e.,
(MSE).

3.2.2 Training Neural Network


Now generally to achieve a balance between generalization and memorization is the main motive for applying the
BPNN. Now the MSE is respectively set/reaches/falls to the range of 0.000100. So neural network is training, until
the error is reduced to set error 0.000100. Now the number of iterations is directly proportional to the execution time
and also depend on the hidden layers will be iterated until the error equals the acceptable error margins. The training
patterns influence the weight adjustments. Training is done until the error for validation degrades. With an increase
in error, the net begins to learn the training patterns and hence training is stopped.

3.2.3 Hidden Layers


Now if the activation function can vary with the function, then it can be seen that an n-input, m-output function
requires at most (2n+1) hidden units. Now with increase in each hidden layer, the partial derivative for error
function (δ) is calculated for each layer and is summed for nodes in the entire previous layer when a particular layer
is under consideration. This procedure is repeated for all the hidden layers. This might not necessarily increase the
execution time. Now it rather depends on the initial weights that are generally set. Hence the training will be
terminated as and when the specified MSE is reached i.e., at 0.000100.

Volume 10 Issue 4 July 2018 127 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

IV. METHODOLOGY

Pre processing of
image

ORL

Database

Train Test
Database Database

Face Recognized

Image to be Equivalent
tested Image

Back Propagation
Neural Network
Algorithm
Figure 5.1 Generic block diagram of face recognition system

4.1. Pre processing of image


The image pre processing is the significant step before applying any other technique on images. So the image pre
processing can be of different kinds, for noise removal, smoothing, thresh holding, background removal etc. Now
generally in this module, face images are normalized and if desired, they enhanced to improve the recognition
performance of the system. Now in many applications involving face recognition, the inputs are first binarized to
form two level images based on the threshold value. It is usual to pre process the scanned images to do the image
enhancement in the presence of noise and other type of distortions that occur during the scanning process. So in this
process of pre processing stage, is generally enhanced, resized, and binarized to make the image clear and very
accurate. It also reduced the complexity of the system by removing redundant data. Now the face verification system
depends on various conditions. So, one of the most problematic is varying illumination, apart from changes in
appearance such as facial expression. The ORL face database that is available freely is essential pre processed. The
only pre processing that was done here was to crop the images in the length of 92 x 112 of the subjects as per
requirement. Now, the following steps which can be included in pre processing stage may be implemented in this
system.

4.1.1. Gray scale Conversion


The inputs are first binarized to form a two level image based on the threshold value. It is usual to pre process the
scanned images to do the image enhancement in the presence of noise and other types of distortions that occur
during the scanning process. In this pre processing stage, the image is enhanced, resized and binarised to make the
image clear and very accurate. Now after that, it is necessary to employ the nonlinear technique for processing the
face images prior to binarization. So the global image threshold using Otsu‟s method will be chosen as the technique
to binarize the face images. This method finds the global threshold t that minimizes the infraclass variance of the
resulting black and white pixels of the image.
So the threshold method will be derived as,

Volume 10 Issue 4 July 2018 128 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

bi = 1, if xi ≥t
0, if xi<t
Now where the,
xi = input grayscale pixel
bi = output binarization pixel

4.1.2. Image Size Normalization


It is usually done to change the acquired image size to a default image size approximately such as 92 x 112 on which
the face recognition system is generally operates. This is mostly encountered in systems where face images are
treated as a whole.

V. IMPLEMENTATION OF PROPOSED ALGORITHM


Now generally, this design and implementation of the face recognition system (FRS) will be sub divided and
considered basically into so many parts to decide and describe the whole execution of the proposed algorithm which
can make a better and effectiveness in this system. So the algorithm is as,
Training the images

Sub windows feature extraction

Normalization feature values between 0 to 1

Assign feature values to input neurons

Initialize weights randomly between -0.3 to 0.3

Calculating output from hidden (S1) and output (S2) neurons

Calculating delta = d*S2*(1-S2)

Updating weights as Who = Who+(n*delta*S1) and Wih = Wih+(n*delta*k)

Perform steps till target output is equal to desired output

Training images results

Testing NN and applying test image to NN

Testing image result

Testing the images

Select train and test database path

Image to be tested Equivalent image

Figure 5.1 Implementation of Proposed Algorithm

Volume 10 Issue 4 July 2018 129 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

VI. SIMULATED RESULT & ANALYSIS


1. Now firstly, when we execute the program or programming code or evaluating the cell of MATLAB editor
window which is appear on the screen, there would be a appearance of message dialog box or generally we can say
that it is a browsing dialog box appear on the screen before the running of program like as,

Figure 6.1 Select the path of training images

2. Now after that the images of ORL training database is read after the compilation of the programming code, then
the next step would be the reducing the MSE error which is going through the number of iterations which is
executed with respect to time, and it can be done for the destination folder of test database path for the comparison
and recognition process like as,

Figure 6.2 Number of iterations falls or reaches MSE up to 0.000100

3. Now after the number of iterations to reaches down or reduced the MSE in the minima value of point as
0.000100, so it will show the next prompt of dialog box which can be of same destination folder of training or train
database path, but there is a test database folder which can be selected for the recognition of the facial images to the
original images which will be given as,

Figure 6.3 Select the path of testing images

4. Now after that the destination folder of the testing images has been founded then there would be a prompt
message dialog box for entering the image number which is going to be compare with the training database for
checking the similarity with faces for recognition then we will enter the number in dialog box which is generally
seen like “Enter the test image name (a number between 1 to 10):” like,

Volume 10 Issue 4 July 2018 130 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

Figure 6.4 Enter test image name (a number between 1 to 10):

5. So after that, the number which is same with respect to the training database and test database which is in the
form of ORL will be entered. So by this doing, it will gives the results in the form of two particular type of sub
windows in which the characterization, illumination, brightness, contrast, nature like (facial expression) of that
particular image will be executed and gives us the respective similar expressible image with that two particular sub
window which will be given as like, now when we given „1‟ to that prompt dialog box it will be gives the result in
the form of like this,

Figure 6.5 Image to be tested and Equivalent image

VII. CONCLUSION
Now the study shows that the face recognition using back propagation neural network for the recognition of face
image has been designed. It will also give the better results for face recognition of images by choosing the algorithm
of back propagation neural network. By using the back propagation neural network algorithm selection technique it
will give better performance, which can be showed by the number of, face images of each individual in the train and
test database. It is a fast algorithm for recognize the human face images and easy to implement and also BPNN is
generally applied to perform recognition task. So it can achieve the good results by using the proposed algorithm of
BPNN.

VIII. ACKNOWLEDGEMENT
Siddharth Rawat received his B.Tech degree in Instrumentation Engineering from Hemwati Nandan Bahuguna
Garhwal University, Srinagar Garhwal, Uttarakhand, India and done M.Tech. in Instrumentation and Control
Engineering from Graphic Era University Dehradun, Uttrakhand, India.

IX. REFERENCES
[1] Anissa Bouzalmat, Naouar Belghini, Arsalane Zarghili and Jamal Kharroubi, “FACE DETECTION AND RECOGNITION USNG BACK
PROPAGATION NEURAL NETWORK AND FOURIER GABOR FILTERS”, Signal & Image Processing : An International Journal
(SIPIJ) Vol.2, No.3, September 2011, Page No. 15-20
[2] Byung-Joo Oh, “Face Recognition by Using Neural Network Classifiers Based on PCA and LDA”, IEEE International Conference January
2006, ISBN 0-7803-9298-1, ISSN 1062-922X

Volume 10 Issue 4 July 2018 131 ISSN: 2319-1058


International Journal of Innovations in Engineering and Technology (IJIET)
http://dx.doi.org/10.21172/ijiet.104.21

[3] Nawaf Hazim Barnouti, Sinan Sameer Mahmood Al-Dabbagh, Muhammed Hazim Jaafer Al-Bamarni, “REAL-TIM E FACE DETECTION
AND RECOGNITION USING PRINCIPAL COMPONENT ANALYSIS (PCA) – BACK PROPAGATION NEURAL NETWORK
(BPNN) AND RADIAL BASIS FUNCTION (RBF)”, Journal of Theoretical Applied Information Technology Vol.91, No.1, 15 September
2016, ISSN 1992-8645, E-ISSN 1817-3195, Page No. 28-34
[4] N. Revathy, T. Guhan, “FACE RECOGNITION SYSTEM USING BACK PROPAGATION ARTIFICIAL NEURAL NETWORKS”,
International Journal of Advanced Engineering Technology Vol.III, Issue I, January-March 2012, E-ISSN 0976-3945, Page No. 321-324
[5] Rajath Kumar M. P., Keerthi Sravan R., K. M. Aishwarya, “Artificial Neural Networks for Face Recognition using PCA and BPNN”, IEEE
Region 10 Conference 07 January 2016, Page No. 1-6
[6] Ravi Prakash, “An Efficient Back Propagation Neural Network Based Face Recognition System Using Haar Wavelet Transform and PCA”,
International Journal of Research Review in Engineering Science & Technology Volume 2, Issue 2, June 2013, ISSN 2278-6643, Page No.
5-11

Volume 10 Issue 4 July 2018 132 ISSN: 2319-1058

You might also like