International Journal of Innovative Technology and Exploring Engineering (IJITEE)
ISSN: 2278-3075, Volume-8 Issue-12, October 2019
Face Recognition Based Attendance System
Mekala V, Vibin Mammen Vinod, Manimegalai M, Nandhini K
Abstract: The objective of the attendance system is to provide
an alternative means to the traditional attendance system which
consumes 10 to 15 minutes of time in 50 minutes of lecture hour.
It also aims at eliminating human errors and proxy in recording
the attendance of the student. This can be achieved by using face
recognition for monitoring the attendance of the students in a
class. The face recognition process is carried out by using the
Cognitive Face API which follows the Principal Component
Analysis (PCA) algorithm. Initially, the dataset of the students in
a class are collected. The dataset is collected in a manner that for
each student, a set of 25 images in various angles is collected. The
features are extracted from the images that are collected by using
the cognitive face API and the database is formed. The image of
the class in columns is acquired immediately, when the input
image is acquired by using a mechanical set up which captures
image based on hour, the number of faces in the input image is
detected. The detected faces are cropped and then stored in a
folder. The features of the cropped faces are also extracted and it
is compared and matched with the features in the database. When
the feature matches, the attendance is marked for the particular
student in the spreadsheet and then the attendance report of the
class is being uploaded in the web-page. Thus, the attendance of
the student can be recorded in an effective manner. This paper
also helps in avoiding human error which is unavoidable.
Keywords: Cognitive Face API, Principal Component Analysis,
IOT, Arduino UNO,HTML.
I. INTRODUCTION
Maintaining the attendance is very important in all the
institutes. Every educational institute and office have their
own method of taking attendance either manually similar to
old paper or file-based approach and few office and institute
have adopted new methods of automatic attendance with the
biometric techniques. [1][2][4] RFID based attendance
system where a RFID Tag will be provided for students they
should make an entry by showing the tag in front of the RFID
Reader. But in these methods students must wait for long time
in making a queue at time they enter the office .[8]In addition
to the features of RFID a GSM mobile communication device
is used to send a message to their parents about the intimation
their children’s absenteeism. They have additional feature of
updating the attendance in web server, where an administrator
can view the attendance in an hour basis.[5] WLAN
technologies can also be used to mark attendance by detecting
the mobile phones with unique authentication of barcode
based on their fingerprint. [6] A major role in attendance
Revised Manuscript Received on October 05, 2019.
Mekala V, Department of Electronics and Communication Engineering,
Kongu Engineering College, Perundurai, Erode, Tamilnadu, India.
Vibin Mammen Vinod, Department of Electronics and Communication
Engineering, Kongu Engineering College, Perundurai, Erode, Tamilnadu,
India.
Manimegalai M, Department of Electronics and Communication
Engineering, Kongu Engineering College, Perundurai, Erode, Tamilnadu,
India.
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
system to keep track of attendance where zigbee is used as a
wireless communication link to transfer student’s entry in
class using zigbee transmitter and Receiver. Many biometric
systems are available, but the key authentications are same in
all the techniques.
Evolution of modern technology and everything moving
towards smart which created by development of android app
[9] whose student day today activities and homework’s, video
lectures and images of special occasion can be intimated.
These existing works requires additional maintenance, lack in
accuracy. Added to existing system little manipulation to be
done to have more accuracy for that, the Database has to store
which will have biometric details of an individual student and
employee which plays a major part in the processes of
identification and verification. [7]The biometric potentials
like iris are unique for humans which gives better
authentication and identical of individuals. These two
processes compare the biometric feature of a person with
previously stored template captured at the time of enrolment.
The templates of biometric which can be obtained from
human for identifications are gait, eye, hand geometry, iris,
signature, voice and Fingerprints.[3]There are various
machine learning algorithm of various support vector
machines and classifier are likely to be used improve the
efficiency of Face Recognition and also statistical tools are
used to construct the face templates..
Face recognition is the process done in two ways, the first
way is to detect faces and the second way is to match with the
database. It involves capturing an image from a video or from
a surveillance camera where the face has to be detected either
by bounded box, crop and match with the existing identities to
identify the person.
Face biometrics involves training known images, classify
them with known classes and then they are stored in the
database. When a test image is given to the system it is
classified and compared with stored database. Face
biometrics is challenging fields of research with various
limitations imposed for machine face recognition like
variations in head pose, change in illumination, facial
expression, ageing, occlusion due to accessories etc. Face
recognition algorithms are broadly classified into two classes
as image template based and geometric feature based. The
template-based methods compute correlation between face
and one or more model templates to find the face identity.
Principal component analysis, linear discriminate analysis,
kernel methods etc. are used to construct face templates. The
geometric feature-based methods are used to analyze explicit
local features and their geometric relations (elastic bung
graph method).Multi resolution tools such as contour lets,
ridge lets were found to be
useful for analyzing information
content of images and found its
520
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication
Face Recognition based Attendance System
application in image processing, pattern recognition, and
computer vision. Curvelets transform is used for texture
classification and image de-noising. Statistical tools such as
Linear Discriminant Analysis (LDA), Principal Component
Analysis (PCA), Kernel Methods, and Neural Networks,
Eigen-faces can be used for construction of face templates.
To condense the Work focuses on an IOT platform to
monitor students attendance system by one click option
activated automatically by an Embedded Hardware ,featuring
towards smart attendance system.These attendance will be
marked, uploaded on hourly basis on an Web Portal.
II. OVERVIEW AND COMPONENTS OF SMART
ATTENDANCE SYSTEM
of the class, at once the actuator is used to press the
clicker.When the image is captured, it is sent to the processing
unit where the faces are detected and the attendance is
marked. The attendance report is uploaded to a website and is
displayed only to the authenticated persons
B. Laptop Local-host Block:
The training dataset is collected for each student and the
features of each image are extracted. Fig.2shows the stage to
stage process to maintain attendance is explained as follows.
The camera is fixed in a rotating disk which is used to
capture the images of the class.
The image is captured in such a way that once when the
disk rotates the actuator moves and then captures the
image.
All educational institutions’, IT sector, office and
administrators are concerned about irregular attendance.
Students or people can truant at some time can affect student
overall academic performance and work synergy. The usual
method of taking attendance by calling names or signing on
paper is very time consuming and insecure, hence inefficient.
A. System Overview
The proposed system uses face recognition for marking the
attendance of the students. In the proposed system, the
database of the students is first collected and the features are
extracted and stored. The attendance of the students of a
classroom is taken by acquiring images of the entire
classroom using the mechanical set up designed for capturing
the image of the class in two directions, the input image is
enhanced and the number of faces in the input image is
detected. The detected faces from the input image are
cropped. The features of the cropped faces are extracted and
compared with the database. If the student was recognized,
attendance will be marked as present for the particular
student. When the entire recognition process is completed, the
attendance report is uploaded to the web-page that is designed
to serve this purpose. The web-page can be accessed by the
authenticated persons only.
Fig.1 shows the overview of the proposed Attendance
system. The hardware components that are used to automate
the image capturing mechanism are a motor, an actuator, two
relays or drivers, an Arduino UNO board, RTC and two 6V
batteries
Power Supply
Laptop
Local-host
block
Wi-Fi Rx
Relay
RTC
(Real
Time
Clock)
Arduino
UNO
Motor
Wi-Fi Tx
Relay
Camera
Rotation
Actuator
Camera
Auto Capture
Fig.1: System Set-up
. The RTC is used as control for capturing the image of the
class based on Hour. The stepper motor is used to rotate the
camera and fix it in the direction such that it captures two rows
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
Faces to
be
trained
Training
Folder
Feature
Extraction
Update the
attendance to
GUI
Database
Face
Recognition
Feature
Extraction
Rotation of
Camera &
Capturing
the image
Captured
Image
loaded
Face
detection
Preprocessing
Fig.2: Flow Diagram of Attendance System
Once when the image is captured it is loaded to the
processing module. The following are the steps involved
in recognition process.
I. The image of the class is acquired.
II. The face detection is done from the image acquired
by using cascade object detector.
III. The detected face is cropped and then stored in a
folder for feature extraction.
IV. The features of the cropped face are obtained by
using the PCA algorithm.
V. Then the features are then compared with that of the
test image dataset.
VI. If matched, the attendance is marked for that
particular student and stored in the database.
When the entire recognition process is completed, the
spreadsheet is loaded to the website.
The captured image is given as input to the processing unit,
the faces in the input image are detected and each face in the
input image is cropped and the features of the cropped image
are extracted. The recognition process is carried out by
matching the features of the cropped faces which are detected
from the input image with that of the features in database. The
features are extracted by using the PCA algorithm and the
Microsoft Azure Cognitive Face API is used as a tool for the
detection and the recognition process. Cognitive Face API
works based on the Principal Component
C. Principal Component Analysis (PCA)
Facial recognition is process of classifying input images in
several classes. The captured image will additional noise due
to lighting ,sitting positions of
students, camera positions, and
their angle and hence input
521
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication
International Journal of Innovative Technology and Exploring Engineering (IJITEE)
ISSN: 2278-3075, Volume-8 Issue-12, October 2019
image ware not completely random and may be difference in
their patterns of the input images.
Based on the objects like eyes, nose and mouth position in
any faces the relative distance between objects can be
identified by the Eigenfaces in facial recognition. The Eigen
faces can be extracted from original image data by means of
the mathematical tool called Principal Component Analysis.
By means of PCA one can transform each original image of
the training dataset into a corresponding Eigenfaces. Identify
all the Eigenfaces in order to reconstruct the original image
exactly. Finding Principal Components of the distribution of
faces, or the Eigenvectors of the covariance matrix of the set
of face images.
Each image location contributes to each Eigenvector, so
that the system can display the Eigenvector as a sort of face.
Each face image can able to represent the terms in a linear
combination of the Eigenfaces. The number of face image in
the training set is equal to the number of possible Eigenfaces.
The faces can also be approximated by using the best
Eigenface, those that have the largest Eigenvalues, and which
therefore account for most variance between the set of face
images. The primary reason for using fewer Eigenfaces is
computational efficiency.In linear algebra, the Eigenvectors
of a linear operator are non-zero vectors which, when
operated by the operator, result in a scalar multiple of them.
Scalar is then called Eigenvalue (λ) associated with the
Eigenvector (X).
Eigenvector is a vector that is scaled by a linear
transformation.
(1)
AX X
where A is a vector function.
(2)
( A I ) X 0
Where, I is the identity matrix. The non-trivial solution
exists if and only if
(3)
Det ( A I ) 0
Where, Det denotes determinant.
When evaluated becomes a polynomial of degree n. This is
called characteristic polynomial of A. If A is N by N then
there are n solutions or n roots of the characteristic
polynomial. Thus, there are n Eigen values of A satisfying the
equation.
(4)
AXi iXi
Where,i = 1,2,3,.....n
If the Eigen values are all distinct, there are n associated
linearly independent eigenvectors, whose directions are
unique, which span an n dimensional Euclidean space.
Face Image Representation is one of the main concept
where Training set of m images of size NxN are represented
by vectors of size N2. Each face is represented by
1, 2, 3,...m . Feature vector of a face is stored in a N×N
matrix. Now, this 2-dimensional vector is changed to one
dimensional vector.
Average face image is calculated by
1
i
m
(1, 2, 3,...m)
Where
m
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
(5)
Each face differs from the average by
i i
(6)
Which is called mean centred image.
A covariance matrix is constructed as:
c AAT
Where
A [1, 2, 3,...m]
(7)
of size N2 X N2
Eigen vectors corresponding to this covariance matrix is
needed to be calculated, but that will be a tedious task
therefore, for simplicity calculate ATA .
Consider the Eigen vectors vi of ATA such that
A T A * Xi iXi
(8)
The eigenvectors vi of ATA are X1and X2which are N × 1.
Now multiplying the above equation with A both sides
AAT *AXi A * iXi
Eigen vectors corresponding to AATcan now be easily
calculated with reduced dimensionality where AXi is Eigen
vector and λi is Eigen value.
The Eigen vectors of the covariance matrix AAT are AXi
which is denoted by Ui.Ui resembles facial images which look
ghostly and are called Eigen faces.Eigen vectors correspond
to each Eigen face in the face space and discard the faces for
which Eigen values are zero thus reducing the Eigen face
space to an extent. The Eigen faces are ranked according to
their usefulness in characterizing the variation among the
images.
A face image can be projected into this face space by
K U T (K ); K 1,2,3,...M , where, K is the
mean centred image. Hence projection of each image can be
obtained as Ω1for projection of image1 and Ω2for projection
of image2 and henceforth
D. Arduino Uno
The Arduino UNO is a microcontroller board which is
based on ATmega328 is the brain of the attendance system. It
has General Purpose Input/Output pins interfaced with RTC
and Relays which is used control the viewpoint of camera and
activate automatic capture of photos of each class students for
every period, this also enables Wifi device to transfer the
attendance to the host system.
E. RTC-Real Time Clock
The attendance system which has RTC of DS1307 is I2C
based clock generation microchip. This device is addressed
by D0H, and has a small amount of memory which is capable
of storing year, month, date, hours, minutes, and seconds. The
microchip device
is controlled by a master device
ATmega328 through SDA and SCL lines. The microchip is
connected with crystal oscillator 32.78KHz.to provide clock
pulse for a timer circuit.
F. Battery and Relay
The system uses two 6V battery which is rechargeable. The
lead-acid batteries use a gelled-electrolyte in a sealed, high
impact plastic case. The construction of these high
power-to-weight batteries eliminates the need to ever water or
worry about spilling acid. The
capacity is 20 Amps Hour and
weighs of the battery is 4 lbs.
522
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication
Face Recognition based Attendance System
Relays are used as switch or control devices like motors or
actuators with a microcontroller The proposed system uses
two relays – one for linear actuator and other for the stepper
motor with a power supply of 12V.
G. Linear Actuator
A linear actuator is an actuator that creates motion in a
straight line, in contrast to the circular motion of a
conventional electric motor. Many other mechanisms are used
to generate linear motion from a rotating motor. Many other
mechanisms are used to generate linear motion from a rotating
motor.
H. DC Stepper Motor
The motors rotation has many direct relationships to those
applied input pulses. The sequence of the applied pulses is
directly associated with the direction of motor shafts rotation.
The speed of the motor shafts rotation is directly associated
with the frequency of the input pulses and therefore the length
of rotation is directly associated with the quantity of input
pulses applied. The 12V stepper motor is employed to rotate
the camera and capture the image of two rows of the category.
I. Software Packages
OpenCV (Open Source Computer Vision) is a library of
programming functions mainly aimed at real-time computer
vision.This package is utilized acquisition of images of the
students which forms the training dataset. The first step was in
order to use the OpenCV is to create a virtual environment.
Then, it can be utilized for the above-mentioned processes.
This system uses the dlib package for the purpose of
detection of faces while collecting the dataset and when an
input image is fed to the system, the faces in the images are
detected using this package.
The SQLite package is used to create a database for the
students with a person ID for each of the image being
collected to form the training dataset. The SQLite package
has three methods. They are connected, commit and execute.
The connect method is used to open a connection to SQLite
database. The execute method is used to insert a data in the
database. The commit method is used to save the database.
The close method is used to close the connection when no
more data is to be added to the database.
Openpyxl is a Python library to read/write Excel
xlsx/xlsm/xltx/xltm files. It was developed due to the lack of
existing library to read/write natively from Python the Office
Open XML format. It can be installed by using pip.This
system uses HTML language for creating a Web page in
which an authenticated user can access their login to find the
attendance of each class with detail present and absent for a
period.
training set and further created data set sample 2 ,3 and 4 with
50,75,100 samples of student faces were collected .
A colour image is converted to greyscale image. These
images will be useful for applying computational techniques
in image processing. A greyscale face image is scaled for a
particular pixel size as 200x200 because many input images
can be of different size whenever it recognizes the input face.
Fig.3: Data set Sample -1
Similarly, the data set is collected for 60 students in the class.
Features are extracted from the dataset.
B. Class Room Set-up of Image Acquisition
The image acquisition is done by using a 20MP camera and
the image of the class is acquired by dividing the class into 2
columns. The input image is captured by the mechanical set
up designed shown in Fig.4.
Fig.4:Mechanical wall mounting setup
The mechanical set up is designed in such a way that the
camera rotates and captures the image of the class at a specific
time (either at the start of the hour or at the end of the hour).
Fig.5 shows the circuit connection of the Arduino with the
relays and the RTC.
III. SYSTEM MODELLING
A.
Data Set collection
Effective marking of attendance from a classroom .this
system needs an input data set of each students based on
different brightness, illumination and expressions. Fig.3
shows the Data set samaple-1 of student whose twenty
different expressions for 60 different people thus creating a
25x60 that is equal to 1500 different set of face images.
Rotated images in left and right direction and different
illumination conditions are also considered while making the
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
Fig.5: Designed Control Interface
The image of the class is acquired automatically and it is then
uploaded to the localhost using the Wi-Fi transmitter in the
camera.
523
When an image of the class is
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication
International Journal of Innovative Technology and Exploring Engineering (IJITEE)
ISSN: 2278-3075, Volume-8 Issue-12, October 2019
transmitted through the Wi-Fi transmitter to the localhost, the
face recognition process is initiated. The system is already
been trained with the dataset of each student in the class. First,
the system detects a number of faces in the input image and
then, it crops the detected face and stores it in a folder and
matches it against the training data set when the detected face
has matched the attendance is marked for the particular
student.
When an input image is provided, the system detects the
number of students in the image and crops the detected faces
from the input image and then extracts the features from the
cropped faces using the cognitive face API tool which is a
service provided by the Microsoft Azure. The extracted
features are matched with the database i.e. the training set
when the features match the attendance is marked for the
student corresponding to the user ID (the last two digits of the
roll number or registration number).
Fig.6: Recognition Result
Fig.6 represents the output of the Face recognition Based
Attendance system. It shows the number of students whose
faces are detected from the input image of the class. It also
shows the students’ name whose faces are being recognized
by the system.
Fig.9 shows the authentication page, once when the
username and password is correct, the access is provided and
the user can select the class for which the attendance report
will be displayed.
Fig.9: Website-Authentication Page
Fig.10: Attendance Report
Fig.10 shows the attendance report that is uploaded to the
webpage. Thus, the attendance of the class is marked and it is
uploaded in the webpage successfully.
IV. CONCLUSION
Fig.7: Cropped faces of Images of Students
Fig.7 represents the cropped images of those students whose
faces are detected from the input image. The features of the
cropped faces are extracted using the cognitive face API tool
which uses the Principal Component Analysis algorithm. The
extracted feature is compared with that stored in the database
and if the features matches, the attendance is marked for the
particular student in the spread sheet.
REFERENCES
Accuracy on face recognition
60
100.00
50
80.00
40
The designed system has proved to provide an alternative
means for recording the attendance of the students in a more
efficient and effective manner and also helps in avoiding
human errors and proxy punching. It has put an end to the
tedious process of maintaining a logbook for attendance and
at the same time it has saved 10 to 15 minutes of time that is
been previously spent on taking attendance during the lecture
hour. The efficiency of the system in recognizing a student is
95.61%. The efficiency can be further improved by increasing
the resolution of the images and also with wide angle cameras.
1.
60.00
30
40.00
20
2.
20.00
10
0.00
0
25 samples
50 samples
No of Detected faces
75 samples
100 samples
3.
No of Recognized faces
Accuracy
Fig.8: Accuracy chart various sample input images
4.
Fig.8 shows the accuracy chart when number of samples for
training dataset increases with deep neural network features
the accuracy increases.
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
524
Agnihotri, Anand R, Dubey S, Dubey B K, Dwivedi J K, Pushkar A,
Tiwari D K and Tyagi A,(2017), ‘RFID Technology Based Attendance
Management System’, International Journal of Engineering Science
and Computing (IJESC), Vol:306, pp.1204-1206..
Akh Farid, Emmalia Adriantantri, Joseph Dedy Irawan, (2018) ‘RFID
and IOT for Attendance Monitoring System’, MATEC Web of
Conferences Vol:164, Issue.1, pp.1020-1023.
A.Antony Jenitha K.Senthamil Selvi, P.Chitrakala, (Feb-2014),
‘Face Recognition based attendance system’, International Journal of
Computer Science and Mobile Computing-Vol:3 Issue.2,pp. 337-342.
Deboshree Choudhury, Hasan U. Zaman, , Jannatul Siffat Hossain,
Tasnim Tamanna Anika,(2017), ‘RFID based attendance system’,
8th International Conference on Computing,Communication and
Networking
Technologies
(ICCCNT),Vol:1,pp.1-5.
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication
Face Recognition based Attendance System
Kailas Devadkar, Vishal Naidu, Kumaresan Mudliar, (2017), ‘WLAN
attendance management system’, IEEE International Conference on
Smart
Technologies
and
Management
for Computing,
Communication, Controls, Energy and Materials (ICSTM), Vol:3,
pp.615-625
6.
Khan A, Mansi K, Patil A, Viral S, (2015), ‘Attendance Monitoring
System Using Zig Bee and RFID’, International Journal for Research in
Emerging Science and Technology, Vol:2, pp.22-25.
7. Shahrizat Shaik Mohamed, Teh Wei Hsiung,(2017), ‘Performance of
iris recognition using low resolution iris image for attendance
monitoring’, IEEE International Conference on Computer
Applications and Industrial Electronics (ICCAIE), pp.612-617.
8.
Shukla A K, (2017), ‘Microcontroller Based Attendance System Using
RFID and GSM’,International Journal of Emerging Technologies in
Engineering Research (IJETER) Vol:5,pp.127-131.
9.
Siddique T A M, Shelake P G and Sale H B, (2017). ‘Smart
Attendance Management and Learning System’, Imperial Journal of
Interdisciplinary Research (IJIR), Vol:3, pp.1633-1635
10. https://azure.microsoft.com/en-in/
5.
AUTHORS PROFILE
V.Mekala is working as Assistant Professor in the
Department of Electronics and Communication
Engineering at Kongu Engineering College,
Erode, India. She received M.E. in Embedded
system Technologies Anna university Chennai.
Her Research interest includes IoT, Robotics and
data science. She is also a member IETE.(
Institution of Electronics and Telecommunication Engineers).
Vibin Mammen Vinod is working as Assistant
Professor in the Department of Electronics and
Communication
Engineering
at
Kongu
Engineering College, Erode, India. His research
interests include embedded systems, BCIs,
robotics, signal processing and IoT. He received a
ME in Embedded Systems from the Anna
University, Chennai. He is n associate member of
the Institution of Electronics and Telecommunication Engineers.
M.Manimegalai is working as Assistant Professor
in the Department of Electronics and
Communication
Engineering
at
Kongu
Engineering College, Erode, India .She received
her Master of engineering in Embedded system
Technologies in Anna university ChennaiHer
Research interest includes Embedded systems,
Robotics and Biomedical in Data Science . She is
also a member IETE.( Institution of Electronics
and Telecommunication Engineers).
K.Nandhini is a UG scholar in the Department of Electronics and
Communication Engineering at Kongu Engineering College, Erode, India.
Retrieval Number: L34061081219/2019©BEIESP
DOI: 10.35940/ijitee.L3406.1081219
525
Published By:
Blue Eyes Intelligence Engineering
& Sciences Publication