ECAI 2019 – International Conference 11th Edition [630609]
ECAI 2019 – International Conference – 11th Edition
Electronics, Computers and Artificial Intelligence
27 June -29 June, 2019, Pitesti, ROMÂNIA
978-1-7281-1624-2/19/$31.00 ©2019 IEEE
Biometric System Based On Facial
Recognition
Miruna Elena Trufasila
Department of Electronics, Communications and
Computers
University of Pitesti
Pitesti, Romania
[anonimizat] Petre Anghelescu
Department of Electronics, Communications and
Computers
University of Pitesti
Pitesti, Romania
[anonimizat]
Abstract – This paper describes an efficient face
detection and recognition algorithm that can be used as
a plug-in for security systems. The facial detection
technique is based on "Haar Cascade", a machine
learning object detection algorithm used to identify
objects in an image or video. The facial recognition
technique is based on “Principal Component Analysis”
(PCA), a mathematical procedure that transforms a
number of (possibly) correlated variables into a
(smaller) number of uncorrelated variables called
principal components. All the algorithms and results
obtained in this paper are developed and tested using
the C# programming language and using the wireless IP
camera of type SM6203.
Keywords- Biometric system; face detection, HAAR
features; face recognition, PCA
I. INTRODUCTION
The problem of face detection and recognition has
a wide variety of uses for obtaining the complex
information regarding an image. A facial recognition
system is a technology capable of identifying or
verifying a person from a digital image or a video
frame from a video source.
The most important question is “what technology
is best suited to supply the information about people's
identity? “The most common person verification and
identification methods today are Password/PIN
systems, and Token systems. Because such systems
have trouble with forgery, theft, there has developed
an interest for biometric identification systems, which
use pattern recognition techniques to identify people
using their physiological characteristics like iris
recognition, fingerprint or facial recognition.
First attempts for face recognition were made in
early 1970-ies, but a real version was around 1988,
parallel with a large increase in computational power.
The first widely accepted algorithm of that time was
the PCA (Principal Component Analysis), the same
method that was used in this paper. For face detection,
in this paper we are using Haar classifier which
process image in gray scale. The Haar classifier is pre-
trained in the OpenCV bundle and the location should
be in the directory where the main program file is
stored.
The document is structured as follows. An
overview of the algorithms used in each step of the
facial detection and recognition and, also, we describe
the basics of Haar cascade and PCA in the section II.
The next section presents the functionality of the entire algorithm proposed by this paper. Section IV contains
experimental results of the facial detection and
recognition. In the last section, concludes the paper
and presents future research directions of the work.
II. BASICS OF FACE DETECTION AND
RECOGNITION ALGORITHMS
In this section, we present some basic theoretical
foundations of the proposed work. We describe also
some basics of Haar Cascade and PCA.
A. Haar Cascade
Object Detection using Haar feature-based cascade
classifiers is an effective object detection method
proposed by Paul Viola and Michael Jones [1]. It is a
machine learning based approach where a cascade
function is trained from a lot of positive and negative
images. It is then used to detect objects in other
images.
This procedure classifies images based on the
value of simple features. The value of a two-rectangle
feature is the difference between the sum of the pixels
within two rectangular regions. The regions have the
same size and shape and are horizontally or vertically
adjacent (Figure 1). A three-rectangle feature
computes the sum within two outside rectangles
subtracted from the sum in a center rectangle. Finally,
a four-rectangle feature computes the difference
between diagonal pairs of rectangles [2].
(a) Edge Features
(b) Line Features
(c) Four-rectangle Features
Figure 1. Example rectangle features shown relative to the
enclosing detection window
Using the integral image any rectangular sum can
be computed in four array references. For example, for
the Figure 2 the sum of the pixels within rectangle can
be computed with four array references. As presented
in [2], the value of the integral image at location 1 is
the sum of the pixels in rectangle A, the value at
location 2 is A+B, the value at location 3 is computed
as A+C and the corresponding value at location 4 is
computed as A+B+C+D.
Figure 2. The sum of the pixels
For the task of face detection, the initial rectangle
features selected by AdaBoost and the first feature
selected seems to focus on the property that the region
of the eyes is often darker than the region of the nose
and cheeks. The second feature selected relies on the
property that the eyes are darker than the bridge of the
nose. (Figure3)
Figure 3. Haar Cascade detection
The first feature measures the difference in
intensity between the region of the eye who is often
darker than the cheeks region and the second feature
selected relies on the property that the eyes are darker
than the bridge of the nose.
B. Principal Component Analysis
Face detection and recognition is used in many
places nowadays especially the websites hosting
images [3]. The operations for face recognition system
are presented in Fig. 4.
AQUIRE
VIDEO FRAME
FACE
DETECTION
FACE
RECOGNITION
PERSON
IDENTITY
Figure 4. Face Recognition System
One of the simplest and most effective PCA
approaches used in face recognition systems is the so-
called eigenface approach. This approach transforms faces into a small set of essential characteristics,
eigenfaces, which are the main components of the
initial set of learning images [4]. Principal Component
Analysis (PCA) is used to generate the feature vector
of face and nonface image in Eigen Face method.
Also, PCA is used to compress the given information
vector. Face detection algorithm gives location of face
or face area with facial features (eye, nose, lips etc.).
The face is our primary focus of attention in social life
playing an important role in conveying identity. PCA
is used to compress the given information vector [3].
FACE ACQUISITION
IMAGE
PROCESSING
APPLYING PCA
MEDIAN FILTERING
GET SOME DATA
SUBSTRACT MEAN
CALCULATE
COVARIANCE
MATRIX
CALCULATE EIGEN
VECTOR AND
EIGEN VALUE
CHOOSING COMPONENTS AND FORMING FEATURE
VECTOR
Figure 5. Block Diagram of PCA
The image is treated as the 2-D matrix and as a
single vector. The first step is to load the training
images. The images must be grayscale image with a
consistent resolution. If the image includes
background the face recognition approach will not
work properly. Each image is converted into column
vector by concatenating the row and the images one
loaded into a matrix of size M*N, where N is the
number of pixel s in each image and M is the number
of images. The average image has to calculate and
then the deviation is called by subtracting the mean
from each original image. Calculate the covariance
matrix and then calculate the Eigen vector and the
Eigen values of the covariance matrix. These Eigen
vectors are called Eigen faces [5].
III. THE PROPOSED ALGORITHM
The proposed algorithm is devised into two steps
named facial detection and facial recognition and the
application has two modes of operation:
Client: has rights viewing images and
facial detection of already registered
faces.
Admin: has, certainly, the client's rights
but in addition it can add images of
people’s faces to the database and
supplementary data about them.
The diagram of the proposed facial detection and
recognition algorithm is presented in Fig. 6.
ECAI 2019 – International Conference – 11th Edition
Electronics, Computers and Artificial Intelligence
27 June -29 June, 2019, Pitesti, ROMÂNIA
978-1-7281-1624-2/19/$31.00 ©2019 IEEE
START
LOGIN
REGISTER
FACE DETECTION
DETECTING THE
CAMERA
FACE RECOGNITION
ARE YOU
REGISTERED?
SUCCESSFUL
DETECTION ?
SUCCESSFUL
RECOGNITION ?
REGISTER FACE IN
DATABASE
RETURN DATA
OTHER
DETECTION?
STOPNOYES
NO YES
YES
YESNO
NO
ADMIN ACCOUNT?YES
FACE DETECTION
DETECTING THE
CAMERA
FACE RECOGNITION
SUCCESSFUL
DETECTION ?
SUCCESSFUL
RECOGNITION ?
RETURN DATA
OTHER
DETECTION?
STOPNO YES
YES
YES NO
RETURN MESSAGENONO
Figure 6. The diagram for facial detection and recognition
The first step is face detection realized with the
Haar Cascade who analyzes first the region of the
eyes and after that other parts of the face as the nose
and the mouth. During the detection phase, a
window of the target size is moved over the input
image, and for each subsection of the image the
Haar features are calculated. A large number of
Haar features are necessary to describe an object
with enough accuracy and therefore these are
organized into cascade classifiers to form a strong
classifier. The cascade classifier consists of a
collection of stages, where each stage is an
ensemble of weak learners. Each stage is trained
using a technique called boosting. Boosting provides
the ability to train a highly accurate classifier by
taking a weighted average of the decisions made by
the weak learners [6].
The second step is recognition of the detected
face at the first step, who is realized using the
Principal Component Analysis. All detected faces
are stored in a database, which is interrogated to
achieve recognition of the desired faces.
We have to mention that, in the beginning, all
the images are transformed from color to grayscale.
In this way we preserve only the information about
the shape of the objects included in the image. For recognition we calculate the covariance matrix,
and after that we calculated the Eigen Values and
the Eigen Vectors. Eigen Vectors are called Eigen
faces. The main difference between the users with
admin rights and client rights is adding images in
the database with the data about them.
IV. TESTING AND RESULTS
The proposed method for facial detection and
recognition was implemented in software using C#
programming language. The main interface of the
application is presented in Fig. 7.
Figure 7. Application main interface
The algorithm will start when after we will set
the camera. For example, in Fig. 8 is presented a
test with a person who doesn’t exist in database. In
this case just the detection is possible, and the
algorithm doesn’t return data about the person, it
returns a specific message.
Figure 8. First Test
For the registration face in database we will use
the button “REGISTER” from the Fig. 8. The
interface for register data about a face is present in
Fig. 9. We can add Name, First name, Email and the
picture. If we want, we can add another picture,
maxim five for the same data, or we can return to
main menu.
Figure 9. Registration Test
Another test we can see in Fig. 10. If the person is
registered in database, our algorithm will return the
name of the person with the id associated, because
if we have more people, all will be detected.
Figure 10. Second Test
Another test is presented in Fig. 11 in which we
have two people in the image. The first face exists
in database and the algorithm will return the name
of the person. The second face doesn’t exist in
database, so the algorithm will return a suitable
message. For an easy interpretation of the obtained
results, the relation between the image (right side of
the picture) and the message (left side of the
picture), each face has a specific ID.
Figure 11. Results on a picture with two faces
The last test is presented in Fig.12. There we
have more people in the image, all faces are
detected but not all of them are recognized, because
they aren’t registered in database.
Figure 12 – Result on a picture with many faces
V. CONCLUSION
The paper presents a biometric system used for
facial detection and recognition, developed using
two efficient algorithms, Haar Cascade for facial
detection and Principal Component Analysis for
facial recognition.
In the near future we want to develop the
application so that it can capture in real time the
detected faces and record them in the database
automatically. The database being subsequently
interrogated, additional data will be added about
each person, by an administrator.
REFERENCES
[1] Paul Viola and Michael Jones, “Rapid Object Detection
using a Boosted Cascade of Simple Features”, Conference
On Computer Vision And Pattern Recognition, 2001.
[2] Paul Viola and Michael Jones, “Robust Real-time Object
Detection”, Second International Workshop On Statistical
And Computational Theories Of Vision – Modeling,
Learning, Computing, And Sampling, Vancouver, 2001.
[3] Pushapk Dave, Jation Agarwal and Tarun Metta, “Face
Detection using Principal Component Analysis(PCA)”,
International Journal of Computer Applications (0975 –
8887) Volume 95– No.17, pag. 37-40, 2014.
[4] Liton Chandra Paul and Abdulla Al Sumam, “Face
Recognition Using Principal Component Analysis
Method”, International Journal of Advanced Research in
Computer Engineering & Technology (IJARCET), Volume
1, Issue 9, ISSN: 2278-1223, 2012.
[5] Firoz Mahmud, Md. Enamul Haque, Syed Tauhid Zuhori,
Biprodip Pal, ”Human Face Recognition Using PCA based
Genetic Algorithm”, International Conference on Electrical
Engineering and Information & Communication
Technology, DOI: 10.1109/ICEEICT.2014.6919046, 2014.
[6] http://www.willberger.org/cascade-haar-explained/
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: ECAI 2019 – International Conference 11th Edition [630609] (ID: 630609)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
