A Mini Project Report
On
“FACE RECOGNITION ATTENDANCE SYSTEM”
SUBMITTED TO THE MUMBAI UNIVERSITY, MUMBAI IN PARTIAL FULFILLMENT OF
THE REQUIREMENTS FOR THE AWARD OF THE DEGREE TE SEM V
BACHELOR OF ENGINEERING (Computer Engineering)
BY
MR. RAJ GAIKWAD
MR. SHRUTIK DHOKE
MR. SIDDESHWAR KELUSKAR
MR.SAVTA JAGDHANE
Supervisor:
PROF. HARISH K. BARAPATRE
YADAVRAO TASGAONKAR INSTITUTE OF
ENGINEERING AND TECHNOLOGY
Affiliated to
UNIVERSITY OF MUMBAI
DEPARTMENT OF COMPUTER ENGINEERING
ACADEMIC YEAR: 2023-24
YADAVRAO TASGAONKAR INSTITUTE OF
ENGINEERING AND TECHNOLOGY
BHIVPURI RD. KARJAT (M.S.)
——————————————————————————–
DEPARTMENT OF COMPUTER ENGINEERING
CERTIFICATE
This is to certify that the TE Project entitled
“FACE RECOGNITION ATTENDANCE SYSTEM”
Submitted by
Mr. Raj Gaikwad
Mr. Shrutik Dhoke
Mr. Siddeshwar Keluskar
Mr. Savta Jagdhane
Does He/she carry out a bonafied work under the supervision of Prof. Harish K. Barapatre.
And it is submitted towards the fulfilment of the requirement of the University of Mumbai for
the award of the degree of Bachelor of Engineering in Computer Engineering SEM-V for
academic year 2023 - 2024
Prof. Harish Barapatre Prof. Sujata Jagtap
Supervisor Project Coordinator
Prof. Harish Barapatre DR. NILESH M. PAWAR
Head of Department Principal, YTIET
Date:
Place:
YADAVRAO TASGAONKAR INSTITUTE OF
ENGINEERING AND TECHNOLOGY
BHIVPURI RD. KARJAT (M.S.)
——————————————————————————–
DEPARTMENT OF COMPUTER ENGINEERING
CERTIFICATE OF APPROVAL
This is to certify that the project TE Project entitled
“ FACE RECOGNITION ATTENDANCE SYSTEM USING
PYTHON ”
Submitted by
Mr. Raj Gaikwad
Mr. Shrutik Dhoke
Mr. Siddeshwar Keluskar
Mr. Savta Jagdhane
is approved for the degree of Bachelor of Engineering in Computer Engineering SEM-V for
academic year 2023 - 2024.
Prof. Harish Barapatre Name And Sign of
Supervisor Examinar
Prof. Harish Barapatre Name And Sign of
Head of Department Examinar
Date:
Place:
YADAVRAO TASGAONKAR INSTITUTE OF
ENGINEERING AND TECHNOLOGY
BHIVPURI RD. KARJAT (M.S.)
——————————————————————————–
DEPARTMENT OF COMPUTER ENGINEERING
DECLARATION BY STUDENT
I declare that this written submission represents my ideas in my own words and where others’
ideas or words have been included. I have adequately cited and referenced the original sources. I also
declare that I have adhered to all principles of academic honesty and integrity and have not
misrepresented or fabricated or falsified any idea/data/fact/source in my submission. I understand
that any violation of the above will be cause for disciplinary action by the Institute and can also
evoke penal action from the sources which have thus not been properly cited or from whom proper
permission has not been taken when needed.
Place : Bhivpuri Rd. Karjat Mr.
Date : Ms.
Abstract
The Face Recognition Attendance System using Python leverages advanced computer vision techniques
to automate the attendance tracking process in educational and organizational settings. This system
employs state-of-the-art deep learning models for facial recognition and employs a user-friendly interface
for seamless integration into existing infrastructures.
The system begins by capturing real-time images of individuals entering a designated area. These images
are then processed using pre-trained Convolutional Neural Networks to extract high-level facial features.
The extracted features are subsequently compared against a database of enrolled individuals to identify
and verify their identities.
In our modern world, tracking attendance has become a common and essential task in various institutions
and organizations. This project presents an easy-to-understand Python-based solution for automating
attendance management through face recognition technology.
Our system employs the power of computer vision to identify individuals by analyzing their facial
features. Through a user-friendly interface, teachers, administrators, or any authorized personnel can
conveniently take attendance. The system captures an image of each individual, processes it to recognize
their face, and records their attendance in a digital database.
This project aims to simplify attendance tracking, reduce the chances of errors, and save valuable time.
The user-friendly interface makes it accessible to a wide range of users, even those with limited technical
expertise. Moreover, it offers a convenient way to maintain and manage attendance records.
1 . INTRODUCTION 1-6
1 . 1 Overview
1.2 Objectives
1.3 Challenges
1.4 Scope
2. EXISTING SYSTEM AND DIS-ADVANTAGES 7-8
3. LITERATURE SURVEY 9
4.PROBLEM STATEMENT 10
5. PROPOSED SYSTEM 11
5.1 System Architecture
6. METHODOLOGY 12-13
6.1 proposed algorithms
7. SYSTEM DESIGN 14
7.1 UML diagram
8. APPLICATIONS 15-16
9. WORKING 17-19
10. CONCLUSION 20
11. REFERENCES 21
List of Figures
1.Proposed System
2. Proposed Algorithm
3. UML Diagram
CHAPTER 1
INTRODUCTION
1.1 Overview
Face recognition is crucial in daily life in order to identify family, friends or someone we are
familiar with. We might not perceive that several steps have actually taken in order to identify
human faces. Human intelligence allows us to receive information and interpret the information
in the recognition process. We receive information through the image projected into our eyes, by
specifically retina in the form of light. Light is a form of electromagnetic waves which are
radiated from a source onto an object and projected to human vision. Robinson-Riegler, G., &
Robinson-Riegler, B. (2008) mentioned that after visual processing done by the human visual
system, we actually classify shape, size, contour and the texture of the object in order to analyze
the information. The analyzed information will be compared to other representations of objects
or face that exist in our memory to recognize. In fact, it is a hard challenge to build an automated
system to have the same capability as a human to recognize faces. However, we need large
memory to recognize different faces
The human face is a unique representation of individual identity. Thus, face recognition is
defined as a biometric method in which identification of an individual is performed by
comparing real-time capture image with stored images in the database of that person.
Nowadays, face recognition system is prevalent due to its simplicity and awesome performance.
For instance, airport protection systems and FBI use face recognition for criminal investigations
by tracking suspects, missing children and drug activities (Robert Silk, 2017). Apart from that,
Facebook which is a popular social networking website implement face recognition to allow the
users to tag their friends in the photo for entertainment purposes (Sidney Fussell, 2018).
Furthermore, Intel Company allows the users to use face recognition to get access to their online
account.
1
1.2 Objectives
Attendance is prime important for both the teacher and student of an educational organization.
So it is very important to keep record of the attendance. The problem arises when we think about
the traditional process of taking attendance in class room. Calling name or roll number of the
student for attendance is not only a problem of time consumption but also it needs energy. So an
automatic attendance system can solve all above problems. There are some automatic
attendances making system which are currently used by much institution. One of such system is
biometric technique and RFID system.
The system can be also implemented during exam sessions or in other teaching activities where
attendance is highly essential. This system eliminates classical student identification such as
calling name of the student, or checking respective identification cards of the student, which can
not only interfere with the ongoing teaching process, but also can be stressful for students during
examination sessions. Some Impotrtant objectives are as follws:
Automate Attendance Tracking :- The primary objective of this project is to automate
the process of taking attendance. By utilizing face recognition technology, we aim to
eliminate the need for manual attendance recording, reducing the time and effort
required.
Ensure Accuracy : - We intend to minimize errors in attendance data. Traditional
methods like paper-based systems can lead to inaccuracies due to human errors. The face
recognition system aims to provide precise and reliable attendance records.
Improve Efficiency :- The project seeks to streamline the attendance tracking process,
making it more efficient. With the click of a button, authorized personnel can capture
attendance data quickly and easily, saving time and resources.
Enhance User-Friendliness : - We aim to create a user-friendly interface that is
accessible to a wide range of users, even those with limited technical expertise. This
system should be easy to understand and operate for teachers, administrators, and other
users.
2
1.3 Challenges
Traditional student attendance marking technique is often facing a lot of trouble. The face
recognition student attendance system emphasizes its simplicity by eliminating classical student
attendance marking technique such as 5 calling student names or checking respective
identification cards. There are not only disturbing the teaching process but also causes
distraction for students during exam sessions. Apart from calling names, attendance sheet is
passed around the classroom during the lecture sessions. The lecture class especially the class
with a large number of students might find it difficult to have the attendance sheet being passed
around the class. Thus, face recognition attendance system is proposed in order to replace the
manual signing of the presence of students which are burdensome and causes students get
distracted in order to sign for their attendance.
Some Challenges of the Face Recognition Attendance System Are As follows:
1. Accuracy and Reliability: Achieving high accuracy and reliability in face recognition is a
major challenge. Factors like variations in lighting, different facial expressions, and the use of
accessories (e.g., glasses) can affect recognition accuracy.
2. Limited Hardware: The project relies on the quality of the camera and processing power
of the hardware. Low-quality cameras may produce inaccurate results, and older or less
powerful hardware could slow down face recognition processes.
3. Data Privacy: Storing facial data raises privacy concerns. It's essential to handle this
sensitive information securely and comply with privacy regulations.
4. Training Data: Gathering a diverse and representative dataset for training the face
recognition model is crucial. The quality and quantity of training data can significantly impact
the system's performance.
3
5. Scalability: Extending the system to handle a large number of students or users can be
challenging. Scaling the system without compromising performance is a key consideration.
6. Real-Time Processing: Achieving real-time attendance tracking and face recognition can
be computationally demanding. Ensuring smooth real-time operation is a technical challenge.
7. Security: Implementing robust security measures, especially for password protection and
access control, is essential to prevent unauthorized access and potential misuse of the system.
8. Error Handling: Developing effective error handling and reporting mechanisms is
important to guide users and system administrators when issues arise.
9. User Training: Users and administrators may require training to use the system
effectively, and providing adequate user documentation and support is vital.
10. Maintenance: As with any software system, on-going maintenance is essential to keep
the system up to date, address software and hardware issues, and ensure its long-term reliability.
11. Regulatory Compliance: Adhering to relevant data protection and privacy regulations,
such as GDPR or HIPAA, can be a complex task when working with facial recognition data.
12. Cost Considerations: Implementing and maintaining a face recognition system may
involve substantial costs, including hardware, software development, and potential subscription
fees for facial recognition services.
13. Ethical Concerns: There are ethical concerns associated with face recognition
technology, including issues related to consent, surveillance, and potential bias in the
recognition process.
4
1.4 Scope
First when input a known image and observed the Euclidean distance. This distance tells us how
close the input image is from the image on our training set. Based on maximum and minimum
distances we can make a decision of whether the face is a known face, an unknown face or not a
face at all .This model can be designed using other various programming techniques and the
languages such as C++, JAVA, etc. but we can do this with ease using its image processing
applications and tool box. We are setting up to design a system comprising of two modules. The
first module (face detector) is a mobile component, which is basically a camera application that
captures student faces and stores them in a file using computer vision face detection algorithms
and face extraction techniques. The second module is a desktop application that does face
recognition of the captured images (faces) in the file, marks the students register and then stores
the results in a database for future analysis.
The scope of the Face Recognition Attendance System project is broad and encompasses various
aspects, including its functionality, potential applications, and areas of expansion. Here's an
overview of the project's scope:
1. Academic Institutions: The primary scope of the project includes educational institutions
such as schools, colleges, and universities. It offers an efficient and automated solution for
tracking student attendance, reducing administrative burdens, and ensuring accurate records.
2. Organizations and Workplaces: Beyond academic institutions, the system can be adapted
for use in workplaces and organizations. It simplifies employee attendance tracking, making it
ideal for large offices and businesses.
4. Facial Recognition Technology: The core functionality revolves around facial recognition
technology, which can accurately identify individuals. The scope includes continuous
improvement of the recognition algorithm and integration with the latest advancements in
computer vision.
5
5. Student Registration: The system allows for the registration of students or employees.
The scope could include additional information such as student IDs, course details, or employee
departments.
6. Data Management: The project involves storing student and attendance data in CSV files.
The scope includes the possibility of expanding data storage options and integrating with
databases for scalability.
7. Password Protection: The application includes password protection for secure access.
Future developments could involve implementing multi-factor authentication or other security
measures.
8. Attendance Tracking: The project's primary function is automated attendance tracking.
The scope includes continuous improvement of recognition accuracy and real-time monitoring
of attendance data.
9. Data Training: The project allows the training of facial recognition models. The scope
involves optimizing training algorithms and extending support for various recognition models.
10. Real-Time Updates: The project provides real-time updates on the number of registered
students and attendance records. The scope could include the integration of data analytics for
more comprehensive insights.
6
CHAPTER 2
EXISTING SYSTEM AND
EXISTING SYSTEM :
Data Collection: The system collects images or videos containing faces from various
sources, such as cameras, databases, or social media platforms.
Pre-processing: This step involves tasks like face detection, alignment, and
normalization to ensure consistency in the input data.
Feature Extraction: Algorithms like Principal Component Analysis (PCA), Local
Binary Patterns (LBP), or Convolutional Neural Networks (CNNs) are used to extract
distinctive features from the face images.
Database Creation: The extracted features are stored in a database for comparison
during recognition.
Recognition: When a new face is presented, its features are extracted and compared
against the database to find a match.
Decision Making: Based on the similarity scores, a decision is made whether the
presented face matches any in the database.
Output: The system outputs the identity of the recognized individual, or a rejection if no
match is found.
7
Disadvantages :
Privacy Concerns: Face recognition systems can raise serious privacy concerns,
especially if used without explicit consent or in public spaces without clear regulations.
Security Vulnerabilities: The system may be vulnerable to attacks, such as spoofing
using images, videos, or 3D models. Countermeasures like liveness detection are needed
to mitigate these risks.
Resource Intensive: Some face recognition algorithms, especially deep learning-based
ones, can be computationally expensive and require powerful hardware for real-time
processing.
Legal and Ethical Challenges: The use of face recognition technology is subject to
legal and ethical considerations. There may be restrictions on its use in certain
jurisdictions, and questions about the consent and rights of individuals being recognized.
Scalability: Managing a large-scale face recognition system with a vast database of faces
can be complex and resource-intensive. It requires robust infrastructure and efficient
search algorithms.
Environmental Impact: Deep learning models used in face recognition can be energy-
intensive, contributing to environmental concerns, especially if deployed on a large scale.
Data Security: Storing and managing a database of face features requires strong security
measures to protect against unauthorized access or data breaches.
User Acceptance: Some individuals may be uncomfortable with the idea of their faces
being recognized and stored in databases, which can lead to reluctance in adopting such
systems.
8
CHAPTER 3
A literature survey on face recognition systems using Python involves reviewing a range of
academic papers, articles, and research works related to the topic. Below is a brief literature
survey summarizing key studies in the field of face recognition systems implemented using
Python:
1. "FaceNet: A Unified Embedding for Face Recognition and Clustering" by
Florian Schroff, Dmitry Kalenichenko, and James Philbin (2015)
This seminal paper introduced FaceNet, a deep learning model that directly
learns a mapping from face images to a compact Euclidean space. It
demonstrates impressive face recognition performance using deep
convolutional neural networks.
2. "DeepFace: Closing the Gap to Human-Level Performance in Face
Verification" by Yaniv Taigman, Ming Yang, Marc'Aurelio Ranzato, and Lior
Wolf (2014)
DeepFace, developed by Facebook AI Research (FAIR), utilizes a deep
neural network architecture to achieve state-of-the-art face verification
accuracy, even approaching human-level performance.
3. "DeepID3: Face Recognition with Very Deep Neural Networks" by Yi Sun,
Yuheng Chen, Xiaogang Wang, and Xiaoou Tang (2015)
This paper presents the DeepID3 model, a deep neural network with a
significantly increased depth, which leads to notable improvements in face
recognition performance. The architecture is optimized for handling a large
number of identities.
4. "VGGFace: A Deep Learning Face Recognition Model" by Omkar M. Parkhi,
Andrea Vedaldi, and Andrew Zisserman (2015)
The authors introduce the VGGFace model, which is based on the VGG
architecture. It is pre-trained on a large dataset and fine-tuned for face
recognition tasks, achieving high accuracy on benchmark datasets.
9
CHAPTER 4
To develop an automated attendance system using face recognition. Concept In a classroom
with large number of students, it is a very tedious and time-consuming task to take the
attendance manually. Therefore, we can implement an effective system which will mark the
attendance of students automatically by recognizing their faces. The process of this face
recognition system is divided into various steps, but the important steps are detection of
face and recognition of face. Firstly, to mark the attendance of students, the image of
students' faces will be required. This image can be snapped from the camera device, which
will be placed in the classroom at a suitable location from where the whole classroom can
be covered. This image will act as input to the system For the effective face detection, the
image needs to be enhanced by using some image processing techniques like gray-scale
conversion of image and histogram equalization. To identity the students sitting on the last
rows neatly, the histogram equalization of image needs to be done. Hence, there is a need to
develop a real time operating student attendance systems which means the identification
process must be done within defined time constraints to prevent omission. The extracted
features from facial images which represent the identity of the students have to be
consistent towards a change in Backend, illumination, pose and expression, High accuracy
and fast computation time will be the evaluation points of the performance
10
CHAPTER 5
5.1 System Architecture
11
CHAPTER 6
6.1 PROPOSED ALGORITHM
This section describes the software algorithm for the system. The algorithm consists of the
following steps :
Image acquisition
Histogram normalization
Noise removal
Skin classification
Face detection
Face recognition
Attendance
In the first step image is captured from the camera. There are illumination effects in the
captured image because of different lighting conditions and some noise which is to be
removed before going to the next steps. Histogram normalization is used for contrast
enhancement in the spatial domain. Median filter is used for removal of noise in the image.
There are other techniques like FFT and low pass filter for noise removal and smoothing
of the images but median filter gives good results.
12
This Algorithm is shown in the following Figure :
13
CHAPTER 7
SYSTEM
7.1 UML diagram
14
CHAPTER 8
The Face Recognition Attendance System has several practical applications across various
domains due to its accuracy, efficiency, and automation capabilities. Some of the applications of
this project include:
1. Educational Institutions:
- Schools, colleges, and universities can use this system to automate attendance recording for
students and teachers, eliminating the need for manual attendance registers.
- It can help in monitoring class attendance, ensuring students attend their scheduled classes
regularly.
2. Corporate Offices:
- Organizations can employ this system for tracking employee attendance, making it easier to
manage work hours and payroll.
- It can be integrated with access control systems to monitor employee entry and exit.
3. Training Centers:
- Training centers and workshops can use this system to record attendance during training
sessions and track participant engagement.
4. Security and Access Control:
- The system can be integrated with security systems to grant or deny access to secure areas
based on facial recognition.
- It can enhance security at high-security facilities, research labs, and restricted areas.
5. Examination Centers:
- During examinations, this system can be employed to ensure the identity of test-takers and
prevent fraudulent activities.
15
6. Event Management:
- Event organizers can utilize this system to keep track of attendees at conferences, seminars,
and other events.
- It can help manage entry and exit at large-scale events efficiently.
7. Remote Work Monitoring:
- For remote work arrangements, this system can be used to monitor employee working hours
and ensure productivity.
- It can be implemented for remote teams to track virtual meeting attendance.
8. Automated Libraries:
- Libraries can automate the process of checking in and checking out books by identifying
library members using facial recognition.
9. Visitor Management:
- Businesses, hotels, and residential complexes can streamline visitor registration and access
by verifying visitor identities using facial recognition.
10. Research and Labs:
- Research facilities can use the system for tracking lab usage, ensuring safety, and preventing
unauthorized access to sensitive equipment and materials.
11. Healthcare Facilities:
- Healthcare institutions can employ this system for tracking patient appointments and staff
attendance in hospitals and clinics.
16
CHAPTER 9
Start
Initialize all necessary libraries and modules
Check if the "haarcascade_frontalface_default.xml" file exists
If not, show a message indicating missing files and exit
If it exists, proceed to the main window creation
Display the main window with labels and entry fields
Check if the "StudentDetails/StudentDetails.csv" file exists
If not, display a message indicating missing student details and exit
If it exists, calculate the total number of registrations
Display the total number of registrations in the message
Set up the Treeview for displaying attendance records
Create menu items for changing the password and contacting support
Display the main loop
When the "Take Images" button is clicked:
Check if a valid name is entered
Open the camera and start capturing images
Save the captured images to the "TrainingImage" directory
Add student details to the "StudentDetails/StudentDetails.csv" file
Display a message indicating success or failure
17
When the "Save Profile" button is clicked:
Load the saved images
Train a recognizer using the face images
Save the trained recognizer as "TrainingImageLabel/Trainner.yml"
Display a message indicating success or failure
When the "Take Attendance" button is clicked:
Open the camera
Detect faces and recognize them
Match recognized faces with student details
Record attendance with date and time
Display the attendance records in the Treeview
When the "Quit" button is clicked, exit the program
End
18
9.1. Result of the Project :
19
CHAPTER 10
The Face Recognition Attendance System is a comprehensive Python application that
simplifies the process of tracking attendance in an efficient and user-friendly manner. The
system employs facial recognition technology to automatically record attendance,
eliminating the need for manual attendance marking.
Key Features:
User-Friendly Interface: The application provides a user-friendly graphical user
interface (GUI) for easy interaction with the system.
Student Registration: The system allows users to register students by providing their
unique roll numbers and full names. The captured images of students are stored in the
"TrainingImage" directory.
Password Protection: The system incorporates a password mechanism to secure
sensitive operations, such as training the recognizer. Users can change the password
as needed.
Attendance Tracking: Users can capture attendance with a single click by utilizing
the "Take Attendance" feature. The system automatically detects faces, matches them
with registered students, and records the date and time of attendance.
Data Management: Student details, including roll numbers and names, are stored in
a CSV file ("StudentDetails/StudentDetails.csv"). Attendance records are also stored
in CSV files based on the date.
Data Training: The system offers the capability to train a recognizer using the
captured images of registered students. The trained recognizer is saved for future use.
Real-Time Updates: The application provides real-time feedback on the total number
of registered students, ensuring transparency and convenience.
20
CHAPTER 11
Michael Dobson, Douglas Ahlers, Bernie DiDario, "Attendance Tracking System”
,United States Patent Application Publication. Pub No: US 2006/0015205 A1, Feb 2006
Naveed Khan Balcoh, M. Haroon Yousaf, Waqra Ahmad and M. IramBag. "Algorithm
for Efficient Attendance Management Face Recognition based approach". UCSI
International Journal of Computer Science Issues Volume. 9, issue 4. No 1. pp. 146-150,
July 2017.
O Shoewu and 0.A. Idowu, "Development of Attendance Management System using
biomatric". The Pacific Journal of Science and Technology, Vol. 11, Number.1, pp.300.
307, May 2012 (Spring)
Dan Demi Emir Skejic, Amra Sefovic, “Performance of some images processing
algorithms in Tensor flow ” computer vision and patters recognition, pp. 799 77 2018
Hapani, Smit, et al "Automated Attendance System Using Image Processing” 2018
Fourth International Conferences on Computing Communication Control and
Automation (ICCUBEA) IEEE, 2018
S. Bharampur, N. Ramakrishnan, L. Schott And M. Shah , M. Comparative Study of
Caffe, Neon, Theano, and Torch for Deep Learning CoRR, abs/ 1511.064352015.
21