Class Attendance Management System using Facial Recognition

. Attendance marking in a classroom during a lecture is not only a onerous task but also a time consuming one at that. Due to an unusually high number of students present during the lecture there will always be a probability of proxy attendance(s).Attendance marking with conventional methods has been an area of challenge. The growing need of e ﬃ cient and automatic techniques of marking attendance is a growing challenge in the area of face recognition. In recent years, the problem of automatic attendance marking has been widely addressed through the use of standard biometrics like ﬁngerprint and Radio frequency Identiﬁcation tags etc., However,these techniques lack the element of reliability. In this proposed project an automated attendance marking and management system is proposed by making use of face detection and recognition algorithms. Instead of using the conventional methods, this proposed system aims to develop an automated system that records the student’s attendance by using facial recognition technology. The main objective of this work is to make the attendance marking and management system e ﬃ cient, time saving, simple and easy. Here faces will be recognized using face recognition algorithms. The processed image will then be compared against the existing stored record and then attendance is marked in the database accordingly. Compared to existing system traditional attendance marking system, this system reduces the workload of people. This proposed system will be implemented with 4 phases such as Image Capturing, Segmentation of group image and Face Detection, Face comparison and Recognition, Updating of Attendance in database.


Introduction
At present facial recognition and image processing is a very interesting topic that has only had its surface scratched, facial recognition is quickly surpassing other forms of biometrics (Fingerprints, RFID etc) as facial recognition systems use a set of features distinct to one person. This proposed project can be applied to create an attendance system using facial recognition as the traditional method i.e., pen and paper is not only time consuming and burdensome it is also prone to proxies and manipulation, our aim in developing this project is to make the attendance system efficient, stop methods and means of proxies and to save time that would otherwise be lost in the lecture.
The idea for this project came to us in class as we saw the amount of time that has to be skipped for attendance and the nonchalance of students who had already marked their attendance which leads to the method being delayed further, we then decided that this would be a good and interesting field to delve into for our Project as the field of Image processing, recognition etc; has a world of scope The are a number of existing systems closely related to the proposed idea of marking attendance in a class by making use of facial recognition techniques and algorithms.To analyze these systems a literature survey of the proposed systems was done. The proposed case study was designed around certain relevant sources related to facial recognition and image processing.A descriptive framework was designed using the other design approaches. [1] This system makes use of DNN to detect the faces of students and PCA and LDA algorithm for image matching and a SVM classifier and CNN, they achieved a accuracy of 86 percent with a database containing eleven images, the database was created by extracting frames from a video recording of a student and those respective frames were then stored in the database . [1] The authors developed a system using a raspberry pi camera module which is installed on the door,and the database is connected to a web management server system. When the raspberry pi captures an image, Local Binary pattern algorithm is applied to it, if it matches the image stored in the database, a servo motor opens the door for the student. This implemented system has an accuracy of 95 percent with a dataset of 11 images. [2] The authors main aim here is to develop a face recognition algorithm with OpenCV 2.4.8 by using an attendance system as their case study, here the authors have compared two famous face recognition algorithms i.e., PCA(Eigenface) LDA(Fisherface)using a ROC curve on their training set, the result was Eigenface out performed Fisherface and got an accuracy of 70 percent to 90 percent similarity for genuine faces. [3] The authors here propose a method of reducing the candidate gallery set and employing facial component classification, so as to enhance facial recognition, the authors performed experiments on CMU-PIE image database and PCA(Principal Component Analysis) algorithm, a success rate of 91.7 , the main aim of this system is to try and get down the processing time as much as possible. [4] The authors here have made use of CNN(Convolutional Neural Networks) to detect and extract features from the captured images that contain the faces of the students. They have also made use of CNN to train their model and a SVM(Support Vector Machine) classifier to classify the trained images. They achieved an accuracy rate of 95 percent accuracy. [5] The authors here have developed an application that makes use of mobile terminals and also the students GPS location to mark attendance and perform other activities. The app also has many functionalities that make interaction easier. [6] The authors here have conducted research on how distance and slope between facial features affects facial recognition, an increase in the facial features of a face the recognition rate increases, the highest accuracy obtained was 94.60 percent with the MLP classifier, thereby showing that the higher the number of facial features the better is the recognition rate. [7] The authors here have made use of a NFC(Near field communications) card, the faculty must have a mobile device with NFC, so that they can then scan the NFC card of a student, the device will also have a camera so that they can capture the images of the students present. The attendance is then uploaded to the main server. [8] Here the authors have made use of Eigen face database along with Principal Component Analysis and integrate them with Matlab GUI, this system was developed to overcome the issues of image quality, image size and varying intensities of light etc. [9] Here the authors have created a facial image recognition system making use of a correlation image sensor. Differential geometry and vector maps are used to find the key points of the face, a 3D real time facial imaging system was built using the correlation image sensor. [10]

Existing System
Traditional attendance marking techniques i.e, pen and paper or signing attendance sheets are easy to bypass and trick as giving proxies or false signatures is a common practice among students nowadays, students take an unfair advantage of this at most times. But a facial recognition system is unassailable and cannot be fooled as each person has a set of unique and individual features common to that person and cannot be replicated or changed, it all comes down to one simple truth that is, unless you are physically present in the lecture your attendance will not get marked. Table 1. Existing systems and their limitations.

Existing system
Limitations Pen and paper False signatures and proxies RFID tags Can be used by anybody, no guarantee. Biometric, fingerprint Is a costlier approach.

Current Scenario : Challenges in images going unrecognized
Now the attendance systems that we have gone through in the literature survey have one aspect crucial to attendance marking that they do not take into account and that is what if a students attendance is not marked, because his face is not recognized or processed, in such a case the unrecognized image will be stored in a secondary database and an alert will be generated for the admin who then can manually add the attendance for said student.

Research methodology
This sections deals primarily with proposed techniques, methodologies and concepts relevant to facial recognition and image processing which is more specific and niche to a single process which uses facial recognition algorithms image processing techniques. The proposed project includes four sequential phases; namely capture ,detection, image matching and attendance marking.

Primary database creation and training
The original database containing the images of the students is created by taking a live real time video of the students, and splitting the video into thirty frames, converting them to gray scale and storing only the faces of the students as images, then we will be training the respective images using the LBPH algorithm all the while storing their respective histogram value's and then comparing the stored and trained images against the captured images to mark the attendance. The software used for splitting the video into frames is Open-CV.

Image Capturing Phase
In this phase the professor will capture a real time video of the class room or lecture hall by means of their own mobile device and making use of the DroidCam application which links the system that is running on your laptop to your mobile device and lets you use your mobile camera to capture the students present in the class room, the system can be accessed by the professors by accessing the laptop where all the data is stored.

Image Detection Phase
In this second phase once the video has begun capturing, simultaneously the Haar Cascade algorithm is applied to the video to get individual faces of the students and obtaining the distinct features of their face(eyes, nose, ears

Image Matching Phase
In this third and most crucial phase of recognising the student, that is comparing captured image against the stored images in the database, this method is done by making use of the LBPH algorithm(Local Binary Pattern Histogram), each image stored in the database has it's histogram value calculated and is cross checked against the calculated Histogram value of the images extracted from the captured video feed.
The name of the student appears above and the number indicates the confidence.
Note: Lower the confidence number higher is the accuracy.
As we can see from Fig. 5, the system not only detects just one face of a single student, but of multiple students or faces. As the system works for three faces at once by law of induction we can say that it will work for at least more than 15 faces at a single time.

Attendance Marking Phase
In this phase the attendance is marked, if the uploaded image matches the image stored in the database, then the attendance is marked present for that lecture and saved, but if any student goes unrecognized then that particular image is stored in the secondary database and an alert is generated for the admin.

Proposed Architecture
The architecture for the proposed system has been designed to keep it pretty straightforward and easy to understand. The steps that have to be undertaken to reach the final end step of the system which is making sure the attendance of the student is updated correctly and timely. The system can easily be accessed by anyone, where attendance of the students can easily be checked and maintained by the faculty as when required. The Droid-Cam ap will allow easy use for capturing live video feeds of the class and simultaneously perform recognition for the students. OpenCV-Python will be used to access the Haar Cascade and LBPH algorithms and their libraries that are required for training, recognition and matching of the captured images against the stored images available in the previously acquired data sets.
Algorithms being used:

Haar Cascade
The Haar Cascade algorithm is a set of classifiers used for object detection. Haar Cascade is a machine learningbased approach where a lot of positive and negative images are used to train the classifier. The images which we would like to be classified by the classifier are known as positive images and the images we would not want our classifier to classify are known as negative images.

Local Binary Pattern Histogram
The Local Binary Pattern is used for face recognition, which means identifying the captured image against the image already stored in the database. The algorithm makes use of four main parameters to recognise a face. The Local Binary Pattern is applied to the image and compared against the central pixel of the image, then we calculate the histogram value for the said lbp image. The value of the newly calculated histogram is then compared against the already pre-processed histogram value of the already stored image in the database. This is how the Local Binary Pattern Histogram carries out facial identification of images.

Foolproof
Attendance marking becomes foolproof in nature, students cannot carry out the previous means of false proxies for their friends as the system needs faces of the students and nothing else.

Time saving
Helps save time that at moments can get lost due to students disrupting the normal attendance marking method.

Efficient
Instead of teachers manually updating attendance to the college servers, the system will itself calculate attendance of students beforehand. [11]

Further Work
To improve the functionality and reliability of the system in the future we can add some of the following enhancements: 1. Add a self generating defaulter list, that is created after a certain amount of fixed time has passed for any student whose attendance is below seventy five percent.
2. The System will have to separate between recognised and unrecognised faces, faces that go unrecognised can be stored in a secondary database.

Conclusions
This paper presents a simple yet efficient approach to calculate the attendance in a class by employing facial recognition techniques. The output of this system can be outlined as follows: As is seen in Fig. 6, the system not only detects just one face of a single student, but successfully detects multiple students or faces. As the system works for three faces at once by law of induction we can say that it will work for at least more than 15 faces at a single time. The system also successfully recognises and marks the attendance of the detected students. We wish to implement an efficient, time saving and easy to operate system which will in turn benefit both faculty and students.