Smart Attendance System using Face Recognition

Download Full-Text PDF Cite this Publication

Text Only Version

Smart Attendance System using Face Recognition

Ghalib Al-Muhaidhri [1], Javeed Hussain[2] [1] Department of Electronics & Telecommunication Engineering, Global College of Engineering and Technology

Muscat, Oman

Abstract:- To maintain a discipline and let students grasp utmost knowledge in schools, colleges and universities the attendance system was introduced. There are two conventional techniques to mark attendance of students in a particular class. One of them is by calling the roll number and the second is to take students sign on a piece of paper against their roll number. Hence there was a need to evolve this system in such a way that it could become user friendly, less time consuming and efficient. This is an automated system to assist the faculty in taking attendance of the whole class without any disturbance or time waste. The idea can encompass a large number application one of which include face identification, it will help save time and efficiently identifies and eliminates the chances of proxy attendance. The main purpose of this project is to built automated attendance system using Raspberry pi 3B+ with OpenCV/Python libraries and recognizer algorithm have been implemented.

The proposed system can be implemented in any field where attendance system is present and plays a vital role. In addition, as the project objectives and the design criteria all met, its greatest to say this project is an engineering solution for all university and colleges to track and manage the attendance.

Keywords:- Attendance, face identification, Recognizer, OpenCV, Raspberry pi3B+.


    During this era of technology and automation we are still using the same old ways of classroom management. The most important thing in classroom is attendance which is directly linked to the academic performance of the students. Recently, some of students are busy with better during lectures only when there is massive classroom control (Research Gate, 2018). The more efficient the attendance system the more is class participation and learning. In the past we were using techniques like roll numbering calling and signing against a particular roll number. These methods carry a high chance of proxy and are time consuming. We came across the idea of automating this process to through modern day technologies to get a well maintained and disciplined classroom. Facial recognition system along with suitable hardware and software will help meet the goals of this project. Facial recognition system is a derived innovation of image processing. Image processing deals with the extraction of needy data that can be related to digital image and in technology advancement it plays a unique role. Our core focus will be on receiving digital images and then making use of programs and algorithms to get useful Information out of it. As the pictorial information is fed the image processing work on it and make it useful human interpretation. That information from image processing will

    play a great role and help in various walks of life where it could be implemented. The applications of image processing are vast and can be applied in most scenarios where imaging data could be related to pre-determined algorithms. It was an advanced application of image processing and also is the core basis for our project. Our facial structure was a typical example of a multidimensional structure and need some recognition from advanced computational analysis.


    Plenty of research has been conducted so far on the various available methods for implementation of an effective attendance monitoring system. These methods vary in terms of the types of input method used, the types of data processing employed and the controllers used to implement the systems. In this section looking for the various available solution with the advantages and disadvantages of each system. First system, Attendance System Using NFC Technology with Embedded Camera on Mobile Device (Bhise, Khichi, Korde,Lokare, 2015). Near field communication is a type of short distance wireless communication that takes place between two devices, one active and the other passive. The two devices are basically inductor coils which can respond to an electromagnetic induction. The active device is utilized to produce an electromagnetic field of a given radius and strength. Which used to implement an attendance system. In a school setting for example, students can be given NFC tags that are uniquely programmed with their unique identification numbers. Upon attending the classes, the lecturers bring the NFC readers and a student is required to swipe their NFC tags near the reader, say the lecturers phone. This information is then transmitted to the school database to mark the attendance of the student. However this system is vulnerable to impersonation where one person can sign in for someone else.

    The other related systems that use biometrics (Fingerprint recognition RFID, etc) to identify end user are time management systems used in many colleges, institutions and schools. However, these system introduce further privacy concerns. These systems are also subject to physical damage from their users. Therefore they need additional maintenance costs. The idea proposed by us,

    Removes physical access from anyone to the automated system.


Based on the literature survey as we have studied various topics thoroughly that are directly linked with our project we are going to design a possible solution to our problem. In this part we will propose a method that will give an overview of the approach to our project and the ways it should be done. As the previous work was not enough which led us to the development in this project in the most feasible and efficient way possible.

The proposed face detection module for this project is Viola jones algorithm. Also, for face recognition modules which is proposed for this project is a neural network architecture with LBPH.

The following figure shows the project system circuit design.


    Figure 1: The Raspberry pi System setup


    Figure 2: The proposed system.

    Given figure 2 above is the model of the attendance monitoring system and how it will be implemented in a particular class. As we can see that there is also a teachers desk who will be facing the students hence he will not be considered as a student. A camera is setup in the middle of the class room at a suitable height to get the full view of the class till the last bench. After the students have been seated

    the camera will take an image and starts the process of face detection using the techniques and methods discussed in the methodology section. After this the program will automatically make a folder in the database having the students to be recognized. The already placed images of each student is taken and used from database for image recognition. The images will be fetched and compared with each of the entry in the database and hence will be checked whether the student is present in the class or not. If there is no match the program will move on to the next picture.


    The following figure shows the project system flow- chart:

    Figure 3: Flow chart of attendance taking

  4. HARDWARE REQIUREMENT The Raspberry Pi set up needs:

    The hardware used in this project consists of only 7

    components which are:

    • Raspberry Pi 3B+

    • Logitech Webcam 8Mp Camera Module C270

    • Powr Supply Cable

    • 16 Gb Micro SD Card SanDisk

    • Screen

    • Mouse & Keyboard



        OpenCV-Python software:

        OpenCV is a software which deals with some programming languages like Java, python and C++, this all are readable and useable on different platform including IOS, Android, OS X, Linux and windows. Interfaces for rapid GPU tasks dependent on CUDA and OpenCL are likewise under dynamic advancement. OpenCV-Python is a library of Python intended to take care of PC vision issues (OpenCV, 2018)

        Visual studio code software

        Windows Microsoft and Linux created a code manager source name visual studio code. Basically, this method help the windows to troubleshoot, implanted Git control and GitHub, language structure featuring, insightful code finishing, scraps, and code refactoring. Which I utilized in venture to run python code.

        Qt Creator software

        Qt Creator is a cross-stage C++, JavaScript and QML incorporated advancement condition which is a piece of the SDK for the Qt GUI application improvement structure. It incorporates a visual debugger and a coordinated GUI format and structures fashioner. The editorial manager's highlights incorporate sentence structure featuring and auto finishing of realistic UI.


    • Firstly, connecting Raspberry pi with required components as shown in the following figure:

    Figure 3: The Raspberry project system set-up.

    The implementation of flowchart of Human face detection and recognition system using raspberry piB+ showing in figure below.

    Figure 4 Flow chart of Implementation of Human Face Detection and recognition System

    Step 1: Setting up Raspberry PI

    Step 2: Access the Attendance monitoring system GUI The attendance taking session can be started after the lecturer selected the related date and timetable ID for the current class session

    Step 3: Initiate Python script after receiving the button click action from the lecturer done in the main window, a python script will be initiated called from a bash file.

    Step 4: Load the trained data in the python script, the first step is to load the trained data (.yml) file which is saved during the face database creation process.

    Step 5: Acquire Faces the system will then start to capture students portraits and then undergo the same pre-processing routine and face detection process.

    Step 6: Recognize the faces valid portraits will then be compared against the loaded gallery from the recognizer to identify the captured faces.

    Step 7: Mark the attendance after identifying the appropriate student from the capturing process, a record of the current attendance will be added into the attendance table managed by a database.

        1. RESULTS

          There two are a variety of research already carried out in two face recognition and two detection like two Fisherfaces [31], EigenFace, LBPH and our supposed model which called MLBPH. We comprehend that Eigenfaces and Fisherfaces are each two affected two by two mild and two in two real two life; we cannot guarantee two best two mild two conditions. LBPH face recognizer is an enhancement to overcome this framework.

          After testing face detection algorithm for a number of volunteers and the results are within approximately 98.5% accuracy.

          After executing all the step of implementation we get following results

          Figure 5: Created database

          The figure above shows that database of enrolled student is successfully generated and saved in dataset folder.

          Face detection of enrolled student

          The followings are the implementation test and its results produced during the attendance taking process as shown one student been detected and enrolled as Present and another student not detected and enrolled as Absent.

          Figure 6: user Interface of the Record Attendance

          Then an email message will be sent from the computer to the absent student as Warning!

          Figure 7: Email service

          MySQL Database

          The most important step is to create a database. A database is required where all the data of each and every student in a particular class is placed. The basic process in creating a database is to form a system that take images. For that we

          will be using a camera module and pictures of each student registered in a particular class is taken. These pictures are taken and basic image processing technique is used to get and image processes able and understandable by the computer.

          Figure 8: MySQL attendance database

          Figure 8: MySQL attendance database

        2. CONCLUSION

          Automated attendance monitoring system was the project chosen by us by keeping in view of the demands of day to day needs and wants of the society. The advancements in technology lead us to think out of the box and come up with some idea that could be future changing. Education is the most important thing which every person should acquire as it is the basis for a better lifestyle and will surely alleviate the standard of a living community. What our education system lacks is the involvement of students in the schools, colleges and universities. Instead of attending lectures and studying they prefer staying away from class and keep engaged in using these gadgets. Low attendance means that the students and not there to acquire the knowledge which they are supposed get and is of immense importance for them and can lead them to a better future.

        3. REFERENCES

  1. (2018). OpenCV: Introduction to OpenCV- Python Tutorials. [online] Available at: o.html [Accessed 10 Nov. 2018].


  3. Digital Image Processing (Rafael c. gonzalez)

  4. Ekstrom, Michael P. Digital image processing techniques. Vol. 2. Academic Press, 2012.

  5. Lienhart, Rainer, and JochenMaydt. "An extended set of haar-like features for rapid object detection." Proceedings. International conference on image processing. Vol. 1. IEEE, 2002.

  6. Face Recognition Attendance System BiometricFacial Recognition System. [online] Available at: ion.html [Accessed 15 Oct. 2018].

  7. nevonProjects.(2018).Face Recognition Attendance System Project. [online] Available at: attendance-system/ [Accessed 17Oct.2018].

Leave a Reply

Your email address will not be published. Required fields are marked *