Face Recognition Based Attendance System Using OpenCV
Face Recognition Based Attendance System Using OpenCV
2
INTRODUCTION
4
LITERATURE REVIEW
PROPOSED WORKS METHODOLOGY LIMITATION
TITLE Principle component analysis (PCA), The standard PCA algorithm has
A STATISTICAL PCA METHOD FOR also known as Karhune-Loeve two mainly disadvantages: one is
FACE RECOGNITION expansion, PCA to efficiently computing complexity.
represent pictures of human faces
And in pattern recognition
IEEE -2019 advantages of simple computation the 2D face image matrices must
and high recognition rate. It can be previously transformed into 1D
also process the faces have image vectors
different expression, the
recognition rate is up to 95.08%
5
LITERATURE REVIEW
PROPOSED WORKS METHODOLOGY LIMITATION
TITLE
Facial recognition system based on The Haar cascade classifier the algorithm may have difficulty
the Haar cascade classifier method method renowned for its efficiency detecting faces underchallenging
and accuracy in face detection. lighting conditions, or when the
faces are partially occluded
AUTHOR It functions by analyzing a set of
features, such as edges, lines, and Usually longer training time
Nazar Karpiuk , Halyna Klym ,Ivanna corners, which are used to create a Because of complex computations
Vasylchychyn cascade of classifiers
6
LITERATURE REVIEW
PROPOSED WORKS METHODOLOGY LIMITATION
TITLE Deep metric learning is based on deep learning needs a high size of data to
Discriminative Deep Metric the principle of similarity between achieve successful results, since it is not
Learning for Face Verification samples. successful enough in low data size
AUTHORS Aiming to bring the samples from The time complexity of network training may
Mamut kaya , the same classes closer to each exponentially increase
And Hasan sakir bilge other and pushed the samples
from different classes apart from
each other
When the scope of deep metric The metric loss function might not provide
MDPI -2019 learning is considered, it has a fast convergence between the samples for
wide range from video some specific datasets.
understanding to others including
person re-identification, medical
problems, three-
dimensional modelling
7
OUTLINE
The proposed system aims to utilize face recognition technology to accurately and
efficiently record the attendance of students by detecting their arrival and departure
times through cameras installed at classroom entrances.
The system will further use database management for record-keeping, and a user
interface for interaction with administrators.
The system will be implemented using a two-module architecture to handle the
management and monitoring tasks separately. A management module for class and
student enrollment and attendance exporting, and a monitoring module that performs
real-time monitoring of student movements using two cameras to log IN and OUT times
8
PROPOSED METHODOLOGY
Functionality,
9
• Implementation,
1. Class creation feature,
• Input values such as Class name, time table structure from administrator and store in
database according to the schema.
2. Student enrollment feature,
• Input values such as Student name, Class name, Face image of the student and store in
database according to the schema.
3. Attendance export feature,
• Input Class name, Date from administrator, Load IN and OUT log registry from database
and find the intersection between the time table of the class time table and each student’s
IN time and export the attendance in required file format .CSV, .PDF .
10
Module 2: Monitoring module
• Functionality,
1. Face Detection in real-time with two cameras installed at classroom
entrances.
2. Face recognition to compare detected faces with enrolled student images and
logging in IN and OUT time of recognized student in database.
3. Feature for handling cases where a student’s face is not recognized.
11
• Implementation,
Face detection,
• Face detection is implemented with the Haar cascades classifiers.
• What are Haar cascades classifiers and Why to use them?
It is a Haar Cascade is a feature-based object detection algorithm to detect objects from
images. The algorithm can be explained in four stages:
• Calculating Haar Features
• Creating Integral Images
• Using Adaboost
• Implementing Cascading Classifiers
12
13
• Process,
1. Load the Pre-trained Haar Cascade Model for face detection from
OpenCV
2. Get the real-time video stream input from camera with OpenCV
3. Prepare the frames -> Grayscale conversion
4. Applying the model to the prepared frames
5. The model detects the face and gives us the coordinates of the
rectangle that contains the larger part of the object.
14
• Implementation,
2. Face Recognition,
• Face recognition is implemented using deep metric learning.
• What is deep metric learning? And how it is different from deep learning?
In deep learning based face recognition, we accept a single input image
and output a classification label, whereas, here we instead outputting a real-
valued feature vector. The algorithm can be explained in :
• Dataset preparation
• Training the model with a defined Loss function -> Triplet loss
• Comparing extracted embedding from frames of real-time streams with all the registered
faces’ embedding
• Recognizing the face with comparison results -> using KNN
15
16
• Process ,
1. Import the face recognition library in python, This library offers a pre-trained model
which is trained on a dataset of ≈3 million images, reaching 99.38% accuracy.
2. Dataset Preparation, Compute the embedding for all the training data(Student Face
images)
3. Normalize the Face detection output and compute embedding for it
4. Compute Euclidian distance between all the training dataset images’ embedding and
detected image’s embedding
5. Generate a Boolean list with a threshold value for the Euclidian distances
6. Find the person with most Trues(Votes) in the Boolean list
7. Log the recoginized data with Time stamp in database
17
BLOCK DIAGRAM
MANAGEMENT MODULE
ADMINISTRATOR STUDENT
ENROLLMENT DATABASE
18
MONITORING MODULE
STUDENT DATA
19
DATABASE SCHEMA
Tables:
Student_list
Timetable
Student_data
Log_data_date_xyz
20
SOFTWARE/HARDWARE REQUIREMENTS
Python : serves as the scripting language and installed up-to-date considering the
dependencies of the face_recognition library and OpenCV.
MySQL: For storing and managing data related to both management and
monitoring module.
OpenCV: Used for Real-time live input feed, image processing tasks,
including using Haar Cascades for initial face detection.
21
SOFTWARE/HARDWARE REQUIREMENTS
22
REFERENCES
A. Ahmedi and S. Nandyal, “An Automatic Attendance System Using Image processing,” pp. 1–8,
2015.
V. Shehu and A. Dika, “Using real time computer vision algorithms in automatic attendance
management systems,” Inf. Technol. Interfaces (ITI), 2010 32nd Int. Conf., pp. 397–402, 2010.
J. Kanti and A. Papola, “Smart Attendance using Face Recognition with Percentage Analyzer,”
vol. 3, no. 6, pp. 7321–7324, 2014.
T. H. Le, “Applying Artificial Neural Networks for Face Recognition,” Adv. Artif. Neural Syst.,
2011
23
24