Nothing Special   »   [go: up one dir, main page]

Face Recognition System Using Deep Learning

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 12

FACE RECOGNITION SYSTEM USING DEEP

LEARNING

TEAM MEMBERS:
● Jatin P
ENG19CS0126
● Likith Ram Verma ENG19CS0136
● Sumanth Reddy
ENG19CS0138
● Karthik Reddy
ENG19CS0056
Introduction
Human brain is trained for face detection and recognition. Face detection and recognitions is an easy task for humans.
Experimentally, it has been found that even one to three days old babies are able to distinguish between known faces.

In the field of computer science, Face recognition identifies faces in digital images, identifies the pixels that represent
the face in a given image, which is referred to as the pre – processing phase, and finally, identifying a face match.

Face Recognition is the task of identifying an already detected face as a ‘known’ or ‘unknown’ face, and in more
advanced cases, displaying the name of the person or telling exactly whose it is.

It is used to verify and identify information for secure transactions, for surveillance and security tasks, and for access
control to buildings. Face Recognition applications such as Aurora Imaging & Recognition is used in airports which
claims to validate a person’s identity quickly and efficiently using biometrics and facial recognition technology. It is also
used in tech companies like Google which has Cloud Vision API and Firebase, Microsoft uses Azure Face service,
Facebook uses face recognition to tag people un the photos using its tag suggestion tools and Apple uses Face ID
which is a 3D facial recognition system.
Problem Statement

Given an image, to identify as a face, extract face images from it and to retrieve similar images from the
given database of face images, recognize the face labelling them as ‘known’ or ‘unknown’.
Literature Survey
i. Illumination-robust face recognition based on deep convolutional neural networks
architectures
Author Techniques Result Limitations Published by

Ridha Ilyas VGG16 (Visual Robustness and Background Indonesian


Benjilali Geometry Group) effectiveness of noise level is Journal of
the proposed difficult to be Electrical
Mohammed ResNet50 method on removed. Engineering and
Beladgham (Residual Neural databases. Computer
Khaled Merit
Network) The algorithm Science - Vol.
Abdel malik Taleb Inception-v3 is difficult to be 18, No. 2
Ahmed Inception-v3 architecture modified and
produced accuracy works on only Year - 2020
rate of 99.44% and particular use
99.89% cases.
respectively.
ii. A Proposed Framework: Face Recognition With Deep Learning

Author Techniques Result Limitations Published by

Michael SIANN (Space The proposed Appropriate International


Farayola: Invariant) method can training is Journal of
train on a very needed to Scientific &
Aman Dureja ANN (Artificial large dataset achieve a Technology
Neural Network) with little deserving Research
processing. result.
CNN Year - 2020
(Convolutional Detecting
Neural Network) complex
Metric Learning interactions.
iii. Face Detection and Recognition Based on Visual Attention Mechanism Guidance Model in
Unrestricted Posture

Author Techniques Result Limitations Published by

Zhenguo YOLO-V3 Face detection Proposed Scientific


Yuan problem method is Programming
R-CNN (Region simplified through sensitive to Towards a Smart
Based improved parameters. World 2020
Convolutional analytical
Neural Networks) network. Generalization Year-2020
is not high.
K-means clustering Better balance
between
ResNet (Residual accuracy and
Neural Network) speed of the
method
Requirements

i) Software Requirements:- ii) Hardware Requirements:-

• Operating System : Windows 10/Ubuntu latest • Processor : Pentium processor of 400 MHz or
version for faster processing. higher
• Programming language – : Python
• RAM : Minimum 4GB primary memory,
• IDE – PyCharm/ Spyder preferably 8GB.

• Front – End tools : Numpy (library used for working • Hard Disk : Minimum 1GB hard disk space.
with arrays); OpenCV Python (library of Python
bindings designed to solve computer vision problems). • Inbuilt webcam

• Back – End tool : LFW dataset


Objectives
The project is divided into three main phases. They are Dataset Collection, Model Training and Face
Recognition.

i. Dataset Collection

This is the first step. OpenCV is used for real-time face detection via the webcam. We will be applying
the Haar Cascade algorithm to detect the face. Haar Cascade is a machine learning based-approach
where many positive and negative images are used to train the classifier. Positive images indicate the
images which we want the classifier to identify and negative images are those that do not contain
objects to be detected. A green rectangle boundary is drawn along the cropped face from the total
image. Up to 100 face samples will be collected and stored in a folder. Each face is resized and cropped
here.
ii. Model Training

In this step, we import OS library modules to access the previous files and to append that to the current datapath. We
create arrays for training data and labels. Then, read the images using cv2.imread() from the specified file path which here
is the image path. We use numpy array for both training data and labels and append the same using numpy. LBPH (Local
Binary Pattern Histogram) face recognizer is used to detect and define a particular value from a binary coded image.

iii. Face Recognition

We copy the previous files dataset.py and training.py. Then, load the Haar face classifier from the given path. If no face is
found, return empty space, else using a for loop, we extract the face having parameters x coordinate, y coordinate, width
and height. We declare the region of interest of the image. Detects the face from the frame and compares it with the
dataset samples. We predict the face and match it with the dataset and store it in the result variable. We use a random
value like 500, and to get a threshold value perform type conversion for the confidence value which we get in the
percentage form. IF confidence > 82, display the user name under the image else display unknown. When a try block
raises an error, the except block will be executed which prints the statement “Face Not Found”. Then, we close all the
windows.
Design Methods

Algorithm:
Haar Cascade Algorithm - It is an Object Detection Algorithm used to identify faces in an image or a real time
video. The algorithm uses edge or line detection features proposed by Viola and Jones in their research paper
“Rapid Object Detection using a Boosted Cascade of Simple Features” published in 2001. The algorithm is given
a lot of positive images consisting of faces, and a lot of negative images not consisting of any face to train on
them.

LBPH (Local Binary Pattern Histogram) - Local Binary Pattern (LBP) is a simple yet very efficient texture
operator which labels the pixels of an image by thresholding the neighborhood of each pixel and
considers the result as a binary number. It was first described in 1994 (LBP) and has since been found
to be a powerful feature for texture classification.
Flow Of The Algorithm
Step 1 : import opencv-python, numpy, and opencv-contrib-python libraries

Step 2 : Haar face classifier for face detection.


Step 3 : face_extractor function for extracting face image property and converting it into grayscale. Position the rectangular
boundary around the face and return a cropped face.
Step 4 – Capture 100 face samples and store it in a specified path.
Step 5 – Create numpy arrays for training data and labelling. Load the image from the specified path using read function, then
append both training data and labels.
Step 6 – LBPH algorithm for detecting and defining a particular value from a binary coded image.
Step 7 – Train the model.
Step 8 – Compare the face in frame with the dataset collection.
Step 9 – Predict the face and match with the dataset images and store in result variable.
Step 10 – If confidence value is greater than 82, display user name, else display face as ‘unknown’.
THANK YOU

You might also like