Face Recognition Attendance System
Face Recognition Attendance System
CHAPTER 1
INTRODUCTION
The idea of two technologies namely Student Attendance and Feedback system has
been implemented with a machine learning approach. This system automatically detects the
student performance and maintains the student's records like attendance and their feedback on
the subjects like Science, English, etc. Automated Attendance System using Face Recognition
proposes that the system is based on face detection and recognition algorithms, which is used to
automatically detects the student face when he/she enters the class and the system is capable to
marks the attendance by recognizing him. In this proposed system the student is requested to
stand in front of the camera to detect and recognize the iris, for the system to mark attendance
for the student. Some algorithms like Gray Scale Conversion, Six Segment Rectangular Filter,
Skin Pixel Detection is being used to detect the iris.
• Fingerprint Based recognition system: In the Fingerprint based existing attendance system, a
portable fingerprint device needs to be configured with the students fingerprint earlier.
• Iris Based Recognition System: In the Iris based student attendance system, the student needs
to stand in front of a camera, so that the camera will scan the Iris of the student.
• Face Based Recognition System: The facial recognition technology can be used in recording
the attendance through a high-resolution digital camera that detects and recognizes the faces of
the students.
The task of the proposed system is to capture the face of each student and to store it in the
database for their attendance. The face of the student needs to be captured in such a manner that all
the feature of the students' face needs are recorded and analyzed to the existing record. The main
working principle of the project is that, the video captured data is converted into image to detect and
recognize it. Further the recognized image of the student is provided with attendance, else the system
marks the database as absent.
1.2 objective:
In this project we aim to build an Attendance marking system with the help of facial
recognition owing the difficulty of the manual as well as other traditional means of attendance
systems.
CHAPTER 2
LITERATURE SURVEY
The system consists of a camera that captures the images of the classroom and sends it to the
image enhancement module. To enhance the captured image histogram normalization, median
filtering and skin classification methods are used. Face detection is done using Viola-Jones
algorithm. Initially face detection algorithm was tested on variety of images with different face
positions and lighting conditions and then algorithm was applied to detect faces in real time video.
Algorithm is trained for the images of faces and then applied on the class room image for detection of
multiple faces in the image. The next step is face recognition, where a hybrid algorithm from PCA
and LDA is used. The detected faces are cropped from the image and compared with the face
database using an Eigen face method. The face database consists of templates of face images of
individual students that was collected and stored by an enrolment process. In this way the faces of
students are verified one by one and the attendance is marked on the server. A time table module is
attached to the system to obtain the subject, class, date and time. Teachers come in the class and just
press a button to start the attendance process.
stored data for the closest neighbor. Finding the closest neighbor is implemented as a function that
computes distance from the projected test face to each projected training set. The distance basis here
is "Squared Euclidean Distance." When a face is matched the corresponding information is obtained
from the database. The log table is then updated with the system time to mark the attendance of that
person.
The system consists of a camera that must be positioned in the office room to take snap shots
of the room. These images are then sent to an enhancement module where Histogram Normalization
is used for the contrast enhancement of the image, Median Filter is used for removing noise from the
image. To avoid false detection skin classification technique is used. This process first classifies the
skin and then retains only the skin pixels and the other pixels are set to black. The enhanced image is
then sent to a face detection and recognition module. This requires MATLAB software version. Two
databases are maintained, the first one is the Face database to store the face images and extracted
features at the time of enrolment process and the second attendance database contains the information
about the employees and is also used to mark attendance.
In this system, the CCTV is fixed at the entry of the class room and is used to capture an
image of the entering student. The detected faces are stored in a database and is compared with the
existing images using Eigen faces methodology. To identify if the student image is matching, a 3D
face recognition technique is used. If a match is found, that image is processed for attendance
management. For attendance management, the attendance will be marked for the student image
matched and the information is sent to the server which controls the overall database of the student.
The software is installed in a smart phone that would help to improve the report features. When the
server receives the message of student who are absent that particular day will send an SMS to the
parent of that particular student.
CHAPTER 3
METHODOLOGY
In order to obtain the attendance positions and face images in lecture, we proposed the
attendance management system based on face detection in the classroom lecture. The system
estimates the attendance and positions of each student by continuous observation and recording.
Current work is based on the method to obtain the different weights of each focused seat.
CHAPTER 4
scipy: a free and open-source library for scientific and technical computing.
numpy: a Python library supporting large, multi-dimensional arrays with a large library of
functions for operating on these arrays.
OpenCV: an open-source library of functions aimed at real-time computer vision.
To ensure fast read and write speeds a non-traditional end program embedded RDMS,
sqlite3 was used as opposed to a traditional client-server-based database.
CHAPTER 5
In order to obtain the attendance, positions and face images in lecture, we proposed
the attendance management system based on face detection in the classroom lecture. The system
estimates the attendance and positions of each student by continuous observation and recording.
Current work is based on the method to obtain a Realtime face recognition by placing a camera at
the entrance of the classroom. In this project we aim to build an Attendance marking system with the
help of facial recognition owing the difficulty of the manual as well as other traditional means of
attendance systems Building a solution that can be implemented in existing IoT set ups. Making the
solution highly robust and scalable. A physically connected camera system will be used to acquire
video footage from which frames containing facial information will be extracted. The acquired
images will then be pre-processed first, then fed to a facial detection algorithm for determination of
facial features. The identification algorithm will then be used to determine the identity of the
captured face with a pre-existing database.
This project uses the Local Binary Patterns Histograms (LBPH) in OpenCV to perform
face recognition.
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.
Radius: the radius is used to build the circular local binary pattern and
represents the radius around the central pixel. It is usually set to 1.
Neighbors: the number of sample points to build the circular local binary
pattern. Keep in mind: the more sample points you include, the higher the
computational cost. It is usually set to 8.
Grid X: the number of cells in the horizontal direction. The more cells, the finer
the grid, the higher the dimensionality of the resulting feature vector. It is
usually set to 8.
Grid Y: the number of cells in the vertical direction. The more cells, the finer
the grid, the higher the dimensionality of the resulting feature vector. It is
usually set to 8.
The first computational step of the LBPH is to create an intermediate image that
describes the original image in a better way, by highlighting the facial characteristics.
To do so, the algorithm uses a concept of a sliding window, based on the parameter’s
radius and neighbors.
This value will be used to define the new values from the 8
neighbours.
Now, the matrix will contain only binary values (ignoring the
central value). We need to concatenate each binary value from
each position from the matrix line by line into a new binary value
(e.g., 10001101). Note: some authors use other approaches to
concatenate the binary values (e.g., clockwise direction), but the
final result will be the same.
As we have an image in grayscale, each histogram (from each grid) will contain only 256
positions (0~255) representing the occurrences of each pixel intensity.
Then, we need to concatenate each histogram to create a new and bigger histogram.
Supposing we have 8x8 grids, we will have 8x8x256=16.384 positions in the final
histogram. The final histogram represents the characteristics of the image original image.
CHAPTER 6
RESULTS
6.1 Database Before Attendance
6.2 Dataset
CHAPTER 6
TESTING
6.1Testing:
Sl.No Action Inputs Expected Actual Output Test Result
Output
CONCLUSION
The proposed facial recognition-based auto attendance system is many times more efficient than its
fingerprint or RFID based counterparts as no manual intervention is required. Saves time as the
system works for several people simultaneously. The program is relatively lightweight and can be
run on inexpensive hardware. The input device could be integrated to a complete Raspberry Pi
system or could be anything another device like a mobile phone or a webcam.
REFERENCES
1. honen, Timo, Abdenour Hadid, and Matti Pietikainen. “Face description with local binary
patterns: Application to face recognition.” IEEE transactions on pattern analysis and machine
intelligence 28.12 (2006): 2037– 2041.
2. Ojala, Timo, Matti Pietikainen, and Topi Maenpaa. “Multiresolution gray-scale and rotation
invariant texture classification with local binary patterns.” IEEE Transactions on pattern
analysis and machine intelligence 24.7 (2002): 971–987.
3. Ahonen, Timo, Abdenour Hadid, and Matti Pietikäinen. “Face recognition with local binary
patterns.” Computer vision-eccv 2004 (2004): 469–481.
4. LBPHOpenCV:
https://docs.opencv.org/2.4/modules/contrib/doc/facerec/facerec_tutorial.html#local-binary-
patterns-histograms
Local Binary Patterns:
http://www.scholarpedia.org/article/Local_Binary_Patterns