0% found this document useful (0 votes)
11 views

Tholley

The document describes a class attendance management system that uses facial recognition technology. It captures students' real-time images as they enter class and matches them against a database of student faces to accurately record attendance. The system integrates with existing student information systems to reduce administrative workload and ensure accurate attendance records. It demonstrates gains in efficiency, accuracy, and reduced burden when implemented in Sierra Leone's educational settings.

Uploaded by

Melsougly Bryce
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Tholley

The document describes a class attendance management system that uses facial recognition technology. It captures students' real-time images as they enter class and matches them against a database of student faces to accurately record attendance. The system integrates with existing student information systems to reduce administrative workload and ensure accurate attendance records. It demonstrates gains in efficiency, accuracy, and reduced burden when implemented in Sierra Leone's educational settings.

Uploaded by

Melsougly Bryce
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 70

FOURAH BAY COLLEGE

UNIVERSITY OF SIERRA LEONE

CLASS ATTENDANCE MANAGEMENT SYSTEM


USING FACIAL RECOGNITION

BY

AMARA MOHAMED THOLLEY

ID: 35867

A Project Submitted to the Department of Electrical and


Electronics Engineering, Fourah Bay College, University of Sierra
Leone, in part fulfillment of the requirement for the Award of the
degree of Bachelor of Engineering with Honours in Electrical and
Electronics Engineering.

November, 2023

i
CERTIFICATION

This is to certify that Amara Mohamed Tholley, with Registration number


35867, has successfully completed this Dissertation under my supervision,
and I hereby approve of its submission to the Department of Electrical and
Electronic Engineering, Fourah Bay College, University of Sierra Leone.

SUPERVISOR’S SIGNATURE DATE

Ing. DR MOHAMED BABAH TURAY

ii
DEDICATION

This work is dedicated to my late father Mr. Mohamed Tholley, my

beloved wife Mrs. Mamusu Tholley, and my lovely son Ibrahim Prince

Amara Tholley. Their invaluable and frantic support gave me the

courage to pursue this course of study.

iii
ACKNOWLEDGEMENT

Thanks to The Almighty Allah for making, it possible for me to complete

this research work and my study journey. This work cannot be carried

out as successful without the support, cooperation, and guidance of

several people. I would like to express my profound gratitude and

appreciation to my supervisor, Dr. M.B. Turay, Lecturer at the

Department of Electrical and Electronic Engineering for his continued

guidance, constructive criticisms, comments, and suggestions in

writing this dissertation. His tutelage kept me on track throughout the

research. To the entire staff and Lecturers of the Department of

Electrical and Electronic Engineering Fourah Bay College-USL, I thank

you all for the moral and academic support you have given me since the

start of my course. To all my mates in class a special thanks, to my

friends and loved ones I say thank you for everything you have done for

me during my course of study. I am especially grateful to Mr. Ibrahim

Prince Tholley, Mr. Mamoud M. Tholley, Dr. M.A. Koroma, Miss Khadija

Fatim Sumah, Mr. T.S. Bandabla, Mr. Abdulai Conteh, Mrs. Zainab

Bangura, and my entire family for their immeasurable support through

my academic trajectory.

iv
ABSTRACT

In the realm of educational technology, the need for efficient and reliable systems is

ever-growing, particularly in the context of Sierra Leone. This dissertation introduces a

comprehensive Class Attendance Management System (CAMS), utilizing state-of-the-art

facial recognition technology to streamline and enhance attendance recording in educational

institutions. Traditional attendance methods, often marked by time inefficiency and

inaccuracies, are significantly improved upon by this innovative system. CAMS employs a

robust facial recognition algorithm, adept at precisely identifying students. As students enter

the classroom, the system captures their real-time images and accurately matches these against

a pre-existing database of student faces.

The strength of CAMS lies not only in its accuracy but also in its seamless integration

with existing student information systems. This integration significantly reduces administrative

workload while ensuring current and accurate attendance records. The implementation of this

system in Sierra Leone's educational settings demonstrates its efficiency, reliability, and

transformative potential in attendance management. The empirical results underscore

substantial gains in time efficiency, heightened accuracy, and reduced administrative burdens.

Contributing to the advancement of attendance management techniques, this

dissertation harnesses the potential of facial recognition technology to offer an efficient, secure,

and user-friendly solution, benefiting both educators and academic institutions in Sierra Leone.

Developed using Python and supported by HTML, Tailwind CSS, and a MySQL database, the

system's algorithm operates on a sophisticated image comparison mechanism. This mechanism

compares encoded facial values from the stored images in the database with those recorded in

real-time, ensuring reliable identity verification.

ABBERVIATIONS
v
Acronyms Meaning

CAMS Class attendance management system

CSS Cascading Style Sheets

HTML Hypertext Mark-up Language

SQL Structured Query Language

RFID Radio Frequency Identification

PCA Principal Component Analysis

SVM Support Vector Machine

ANN Artificial Neural Network

HMM Hidden Markov Model

Webcam World Wide Web Camera

CMOS Complementary metal-oxide

semiconductor

CCD Charge-coupled device

ADC Analog-to-Digital Converter

VsCode Visual Studio Code

API Application Programming Interface

OpenCV Open-Source Computer Vision

vi
TABLE OF CONTENTS

CERTIFICATION ......................................................................... ii

DEDICATION............................................................................... iii

ACKNOWLEDGEMENT ........................................................... iv

ABSTRACT .................................................................................... v

ABBERVIATIONS ........................................................................ v

TABLE OF CONTENTS ............................................................ vii

LIST OF FIGURES ....................................................................... x

CHAPTER 1: INTRODUCTION .............................................. 1

1.1. Background of problem ............................................................................. 1

1.2. Problem statement ..................................................................................... 2

1.3. Aims and Objectives .................................................................................. 3

1.4. Significance of the Study .......................................................................... 4

1.5. Methodology ............................................................................................... 4

1.6. Research Questions................................................................................... 6

1.7. Assumptions, Limitations, and Scope (Delimitations) ............................ 7

1.8. Definition of Terms..................................................................................... 8

1.9. Summary ..................................................................................................... 9

CHAPTER 2: LITERATURE REVIEW ................................. 10

2.1. Introduction .............................................................................................. 10

2.2. Review of Related Works on Class Attendance Management System


Using Facial Recognition ................................................................................... 11

vii
2.2.1. Student Attendance Monitoring System Using Face Recognition .................. 11

2.2.2. Class Attendance Management System using Facial Recognition .................. 12

2.2.3. Face Recognition Student Attendance System ................................................ 12

2.2.4. Study on Student Attendance System Based on Face Recognition ................. 13

2.2.5. Face Recognition for Attendance Management System Using Multiple


Sensors 14

2.2.6. Intelligent Attendance System with Face Recognition using the Deep
Convolutional Neural Network Method .......................................................................... 14

2.2.7. Student Attendance Manager Using Beacons and Deep Learning .................. 15

2.2.8. Student Attendance System using Face Recognition....................................... 15

2.3. Summary ................................................................................................... 16

CHAPTER 3: METHODOLOGY ............................................. 18

3.1. Introduction .............................................................................................. 18

3.2. System Architecture ................................................................................ 19

3.3. Project Work Flow .................................................................................... 20

3.3.1. Flow chart ........................................................................................................ 22

3.4. Software Design ....................................................................................... 23

3.4.1. Functional Requirements ................................................................................. 24

3.4.2. Non-Functional Requirements ......................................................................... 25

3.5. Database Design ...................................................................................... 26

3.5.1. Data Flow Diagram for Context Level ............................................................ 26

3.5.2. Data Flow Diagram for Administrator ............................................................. 27

3.5.3. Data Flow Diagram for Lecturer...................................................................... 27

3.5.4. Database structure ............................................................................................ 28

3.6. Hardware configuration ........................................................................... 28

3.6.1. Webcam ........................................................................................................... 28

viii
3.7. Software Tools ......................................................................................... 30

3.7.1. VS Code ........................................................................................................... 30

3.7.2. Tailwind CSS ................................................................................................... 31

3.7.3. HTML .............................................................................................................. 31

3.7.4. MySQL ............................................................................................................ 32

3.7.5. Python .............................................................................................................. 33

3.7.6. Criteria in selection of Hardware Component and Software tools .................. 34

CHAPTER 4: IMPLEMENTATION OR RESULTS............. 36

4.1. Introduction .............................................................................................. 36

4.2. Software Implementation ......................................................................... 37

4.2.1. User Interface (UI) Design............................................................................... 37

4.3. Testing and Validation ............................................................................. 47

4.3.1. Recognition & Attendance Marking ................................................................ 47

4.4. Result ........................................................................................................ 50

4.5. Summary ................................................................................................... 50

CHAPTER 5: DISCUSSIONS AND CONCLUSIONS .......... 52

5.1. Introduction .............................................................................................. 52

5.2. Discussions .............................................................................................. 52

5.3. Conclusions .............................................................................................. 53

5.4. Recommendations ................................................................................... 53

References ..................................................................................... 56

Appendix A: Face Recognition Code ........................................ 57

ix
LIST OF FIGURES

Figure Page

Figure 2.2-1 Proposed system Architecture ............................................................................. 11

Figure 3.2-1 Proposed System Architecture ............................................................................ 20

Figure 3.3-1 System Flow chart ............................................................................................... 22

Figure 3.3-2 pseudocode .......................................................................................................... 23

Figure 3.4-1 System Design ..................................................................................................... 24

Figure 3.5-1 Data Flow Diagram for Context Level................................................................ 26

Figure 3.5-2 Admin Data flow Diagram .................................................................................. 27

Figure 3.5-3 Lecturer Data flow Diagram ............................................................................... 27

Figure 3.5-4 Database Structure .............................................................................................. 28

Figure 3.6-1 Webcam............................................................................................................... 28

Figure 3.7-1 Vs Code ............................................................................................................... 30

Figure 4.2-1 Login System ...................................................................................................... 38

Figure 4.2-2 Admin Dashboard ............................................................................................... 39

Figure 4.2-3 Add Student Dashboard ...................................................................................... 40

Figure 4.2-4 Manage Student Dashboard ................................................................................ 41

Figure 4.2-5 Add Lecturer Dashboard ..................................................................................... 42

Figure 4.2-6 Manage Lecturers Dashboard ............................................................................. 43

Figure 4.2-7 Create Class Dashboard ...................................................................................... 44

Figure 4.2-8 Admin Settings Dashboard ................................................................................. 45

Figure 4.2-9 Lecturers Dashboard ........................................................................................... 45

Figure 4.2-10 Take attendance screen ..................................................................................... 46

Figure 4.2-11 Attendance Management ................................................................................... 46

Figure 4.3-1 Student attendance marked ................................................................................. 48

Figure 4.3-2 Try to retake attendance ...................................................................................... 48

x
Figure 4.3-3 Unrecognized student .......................................................................................... 49

Figure 4.3-4 Attendance View ................................................................................................. 49

xi
CHAPTER 1: INTRODUCTION

1.1. Background of problem

In Sierra Leone’s educational setting, effective class attendance management is a major

problem in ensuring optimal learning outcomes. The traditional methods of taking attendance,

such as paper-based systems and manual roll calls, are not only time-consuming but also prone

to errors, manipulations, and lack real-time monitoring capabilities.

In recent years, technological improvements have transformed several sectors,

including education. To overcome the challenges faced by lecturers and institutions in term of

attendance tracking, the integration of facial recognition technology into attendance

management systems has gained prominence. Facial recognition technology has shown

extraordinary progress in the fields of security, authentication, and identification. It involves

capturing and examining facial features from images or video frames to identify individuals.

The technology employs machine learning algorithms to generate facial templates for each

individual, making it a robust and efficient solution for accurate identification.

The Class Attendance Management System aims to leverage facial recognition

technology to streamline the attendance tracking process within educational institutions in

Sierra Leone. By automating attendance management, this system can offer several advantages

over traditional methods. Facial recognition systems are known for their high accuracy in

identifying individuals which lessens the chances of errors caused by misinterpretation of

manual records or the use of proxy attendance. Manual attendance tracking consumes valuable

class time and administrative resources. Computerizing

this process using facial recognition can meaningfully reduce the time and effort

required to do it manually. The system can provide real-time attendance updates to lecturers

1
and administrative staffs which allows for prompt intervention if attendance irregularities are

detected.

Therefore, the integration of facial recognition technology into a Class Attendance

Management System has the potential to revolutionize attendance tracking in universities and

other tertiary institutions. By way of overcoming the limitations of manual methods and

providing accuracy, efficiency, and real-time monitoring, this technology can improve the

overall educational experience. Addressing challenges related to privacy, technical issues,

integration, and ethics will be crucial in the successful implementation of such a system. This

study aims to contribute to the development of an effective and responsible solution for

automated class attendance management using facial recognition technology.

The benefits of using facial recognition systems are widespread as they are applied in

security systems, authentication systems, verification systems, surveillance systems and so on.

In most cases people are interacting with face recognition systems without even realizing it. A

lot of institutions are using facial recognition systems for authentication, verification, and

security. There are diverse applications of this system. Developed countries like United States

of America, United Kingdom, China and Australia are now installing facial recognition

technologies in different public spaces such as airports, cafes, shopping areas, factory areas,

and government buildings. A well-established retail company like Alibaba is working on the

development of pay-by-face technology. Workspaces are using this technology to record the

clock in and clock out time of the employees. Law enforcement agencies are installing cameras

with facial recognition systems to identify criminals and search for missing persons.

1.2. Problem statement

The existing manual methods of taking class attendance such as writing down of names

on a piece of paper, manual roll call and head count have proven to be time-consuming, error
2
based, and vulnerable to fraud. It is usually a tedious job to maintain all the attendances for the

users. The retrieval of the information is not an easy one as the records might not be maintained

properly until when needed. This on a whole has been a crucial problem for both lecturers and

the various universities in Sierra Leone, as the manual methods of taking attendance provide

little or no better records for class attendance during lecture periods. In addition, the COVID-

19 pandemic has emphasized the need for contactless and efficient attendance tracking systems

to ensure the safety and well-being of students and staff. Thus, more efficient and reliable way

of managing class attendance is required.

This dissertation is being written on the basis of providing efficient, secure and effective

class attendance management system by employing facial recognition technology to solve the

problems that have been highlighted on the methods which lecturers use to take attendance

during their lectures. This dissertation is not in any way to disapprove the various existing

methods used for student attendance, but to build a system that will detect and analyse the

number of faces present in a classroom as well as recognizing these faces for a particular class.

Likewise, a lecturer will be able to tell if a student was honest as these methods stated can be

used by anybody for attendance records, but with facial detection and recognition system in

existence, it will be easy to tell if a student is actually present in the classroom or not.

1.3. Aims and Objectives

Aim:

The main aim of this dissertation is to build, and develop an efficient class attendance

management system employing facial recognition technology. This system aims to modernize

attendance recording, enhance accuracy, and provide a more convenient and secure method for

both students and lecturers.

3
Objectives:

The primary objectives of this study are:

• To examine the existing literature on class attendance management systems, facial

recognition technology, and their incorporation in educational institutions.

• To Study the requirements and technical considerations for developing a strong and

reliable facial recognition-based attendance management system.

• To design and develop a prototype of the Class Attendance Management System,

including facial recognition capabilities.

1.4. Significance of the Study

In view of the distinct advantages and the successful implementation of a Class

Attendance Management System using facial recognition technology could transform the way

universities in Sierra Leone and other tertiary institutions manage and monitor student

attendance. This system has the potential to reduce administrative burdens to a low ebb,

improve accuracy in attendance records, enhance security, and promote a contactless

attendance tracking process. Furthermore, this research contributes to the broader field of

educational technology by showcasing the practical application of facial recognition in a

pedagogical context.

1.5. Methodology

This project, dedicated to the design and implementation of a Class Attendance

Management System (CAMS) using advanced facial recognition technology, unfolds

methodically across five key sections. Each section is tailored to a specific aspect of the

system's development and implementation, ensuring a comprehensive and robust approach:

4
Introduction: This initial segment sets the foundation for the project, providing a detailed

background overview. It highlights the pressing need for efficient attendance management in

educational institutions and introduces the CAMS as an innovative solution. This introduction

not only establishes the context and significance of the project but also outlines the potential

impact of CAMS in transforming traditional attendance methods.

Literature Review: Essential to the project’s foundation, this section delves into a thorough

examination of existing literature. It covers the challenges faced by current attendance systems,

including issues of accuracy and efficiency. This review also extends to exploring existing

facial recognition technologies and their applications in various domains, setting a solid context

for the proposed system and underscoring its necessity.

Research Methodology: This segment outlines the research and development approach of

CAMS. It details the criteria for selecting facial recognition technology, the algorithm design,

and the methods used for testing and validation. This part serves as the core of the project,

describing the process of integrating facial recognition technology with the attendance

management framework.

Design and Implementation: A pivotal section, focusing on the detailed design and practical

implementation of CAMS. This includes the technical aspects of facial recognition algorithms,

the development environment (Python, HTML, Tailwind CSS, MySQL), and the system's

integration with existing educational infrastructure. It also covers the real-world application

and testing of the system in educational settings.

Conclusion and Recommendations: The final section brings together the findings and

outcomes of the project. It offers a concise conclusion reflecting on the system’s performance,

efficiency, and its transformative potential in educational attendance management.

Additionally, this part proposes recommendations for future enhancements and explores the

broader implications of CAMS in the realm of educational technology.

5
1.6. Research Questions
Certainly, here are some research questions this dissertation could explore on a class

attendance management system using facial recognition.

• Accuracy and Reliability: In terms of accuracy and reliability, this dissertation

will be answering the following questions.

i. How accurate and reliable is facial recognition technology for recording class

attendance of university students?

ii. What factors might affect the accuracy of facial recognition in different

environmental conditions or for diverse groups of students?

• Privacy and Ethical Considerations: Privacy and ethical considerations is an

important aspect of any setting that has to do with a group of people. This work

gears towards solving questions of privacy and ethical issues.

i. What are the privacy concerns associated with using facial recognition for

attendance tracking in universities and other educational institutions?

ii. How can potential partialities and fairness issues in facial recognition systems be

identified and addressed to ensure equitable attendance recording?

• User Acceptance and Perception: For the various users to accept the use of facial

recognition technology and their thoughts about it goes a long way in making this

project a success. This dissertation sets to answer the following questions in terms

of user acceptance.

i. How do students and instructors perceive the implementation of facial recognition

technology for attendance management?

ii. What factors influence user acceptance and resistance to this system?

• Comparative Analysis:

6
i. How does facial recognition compare to traditional methods of attendance

tracking (e.g., paper-based, RFID cards) in terms of accuracy, efficiency, and

user experience?

ii. What are the potential cost savings or resource implications of adopting facial

recognition?

• Data Security and Storage:

i. How can the security of facial recognition data be ensured to prevent

unauthorized access or misuse?

ii. What measures should be taken to comply with data protection regulations

while storing and managing facial recognition data?

• Long-term Feasibility:

i. How sustainable is the use of facial recognition for attendance management

over an extended period of time?

ii. What are the potential challenges or adaptations required as technology

evolves?

1.7. Assumptions, Limitations, and Scope (Delimitations)

➢ Assumptions
• Technological Infrastructure: The project assumes that educational institutions have

the necessary and reliable technological infrastructure, including hardware and

software, to support the facial recognition system.

7
• Facial Recognition Accuracy: It is assumed that the facial recognition technology

used in CAMS will consistently achieve high accuracy in student identification under

various conditions.

• User Acceptance: The project presupposes that students, faculty, and administrative

staff will be receptive to and compliant with the use of facial recognition technology

for attendance management.

➢ Limitations
• The researcher had some difficulties in getting the much-needed information about

certain software and their implementation strategies. Also, the study requires plenty

financial support during the designing and testing the system.

• The time frame was very small to design such a system as most of the software require

deep programming language. All of these put together makes it very difficult to

complete the design.

➢ Scope.
The study focuses only on the designing of a facial recognition-based attendance management

system for a classroom setting. It does not cover other types of attendance management systems

or other applications of facial recognition technology. Also, the study assumed that the

necessary hardware, such as web camera and computer, is available and functional. It does not

address issues related to hardware procurement, installation, or maintenance.

1.8. Definition of Terms

Face: it refers to the front part of a person’s head from the forehead to the chin

Face Detection: is a technology that uses algorithms to identify and locate human faces

in digital images or video frames.

Face Recognition: this is a way of confirming an individual’s identity using their face.

Image: an image refers to a picture of an individual.


8
Attendance: attendance is the act of being present at class for lectures.

Class Attendance: this refers to the physical presence of students in class.

Algorithm: an algorithm is a set of commands that must be followed for a computer to

perform calculations.

1.9. Summary
This chapter provides a comprehensive overview of the Class Attendance Management

System (CAMS), designed to modernize attendance recording in educational settings through

facial recognition technology. It begins with an assessment of the limitations in traditional

attendance methods, setting the stage for the introduction of CAMS as an innovative, accurate,

and efficient solution. The development process, including the choice of technologies like

Python, HTML, Tailwind CSS, and MySQL, is discussed in detail, emphasizing the system's

robust design and integration capabilities. The chapter also delves into the research

methodology, focusing on the facial recognition algorithm's accuracy and the system's overall

performance during testing in real-world educational environments. Finally, it concludes with

insights into the system's impact on reducing administrative burdens, its potential scalability,

and suggestions for future advancements in the field of automated attendance management.

9
CHAPTER 2: LITERATURE REVIEW

2.1. Introduction

In the dynamic landscape of technological progress, the education sector has

consistently been at the forefront of embracing innovative solutions. A prime example of this

trend is the evolution of attendance management systems within academic institutions.

Traditional, manually operated attendance methods, often characterized by their labor-

intensive nature and susceptibility to inaccuracies, have increasingly been identified as

inadequate in meeting the needs of modern educational environments. This has paved the way

for the exploration and integration of advanced technologies, notably facial recognition, to

overhaul the process of class attendance recording.

Facial recognition technology, which skillfully automates the identification of

individuals through their unique facial features, has captured widespread attention. Its allure

lies not only in its precision and ease of use but also in its potential to fundamentally transform

the landscape of attendance tracking in schools and universities. This literature review embarks

on an in-depth exploration of the burgeoning body of research surrounding the deployment,

efficacy, and broader implications of facial recognition-based attendance systems in

educational settings.

The aim is to meticulously collate, synthesize, and critically analyze a diverse array of

scholarly contributions, spanning academic journals, comprehensive reports, and insightful

case studies. This endeavor seeks to offer a holistic perspective on the myriad benefits and

inherent challenges accompanying the incorporation of facial recognition technology in

classroom attendance management. Through a detailed scrutiny of existing literature, this

review aspires to enrich our understanding of how such innovative systems can reshape facets

of attendance monitoring, student engagement, and the administrative tapestry of education.

10
2.2. Review of Related Works on Class Attendance Management
System Using Facial Recognition

2.2.1. Student Attendance Monitoring System Using Face Recognition

There is no reason that a critical educational practice like attendance should be viewed in the

old, tedious manner in this age of rapidly evolving new technologies. In the

conventional method, it is difficult to manage large groups of students in a classroom. Since it

takes time and has a high risk of error when entering data into a system, it is not recommended.

Real-Time Face Recognition is a practical method for dealing with a large number of students'

attendance on a daily basis. Many algorithms and techniques have been developed to improve

face recognition performance, but our proposed model employs the Haarcascade classifier to

determine the to determine the positive and negative characteristics of the face, as well as the

LBPH (Local binary pattern histogram) algorithm for face recognition, all of which are

implemented in Python and the OpenCV library. For user interface purposes, we use the tkinter

GUI interface [1].

Figure 2.2-1 Proposed system Architecture

11
2.2.2. Class Attendance Management System using Facial Recognition

Attendance marking in a classroom during a lecture is not only an 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 efficient 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 fingerprint and Radio frequency

Identification 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 efficient, 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 [2].

2.2.3. Face Recognition Student Attendance System

The success of an educational institute begins by engaging students and having regular

attendance of students. Having a higher attendance score results in higher marks, higher

retention rates, and a better educational experience. It is difficult for teachers and students to

build a strong relationship if students are frequently absent. This hampers teachers and students

12
to develop their skills and make progression. In many schools, the school budgets are based on

the average daily attendance of the school. If the attendance rates are low, then school budgets

suffer. Hence, schools have less money to get essential classroom needs for students and

eventually end up with less quality education. Therefore, the educational institute needs to have

high-quality attendance data. These data provide essential information for the institute to

formulate policies, programs, and practices to improve attendance rates. To increase the

attendance of students, many teachers give better grades to the students with higher attendance

scores. Even though keeping attendance data is an essential part of educational institutes, there

has been little advancement in the attendance system. Still, many institutes use traditional

handwritten attendance or use some spreadsheet on the computer. This makes it hard for

teachers to track the students’ attendance data and their progress. Chances of attendance fraud

in this system are relatively higher than it is in automated attendance system. Unless the

attendance data is correct, schools cannot formulate proper policies and practices to improve

the quality of education. This project will help eliminate the traditional attendance system,

minimize manipulation during attendance and record the arrival time of the students. It is also

very easy to use and manage. Like every application, there are some setbacks to this

application. The application is not one hundred percent accurate. Different factors such as

image quality and lack of data sets can decrease the efficiency of the application.

Administrators must add user information manually and with data sets stored associate with

the risk of being lost or stolen [3].

2.2.4. Study on Student Attendance System Based on Face Recognition

Student attendance is not only an important indicator for the school to inspect students'

achievements, but also an objective evaluation of teachers' teaching quality. In the system, we

use PyCharm as the development platform, design the system interface through QT Designer

(QT5), use PyQt5 library to write the function of interface controls, use MySQL as the

13
database, and use OpenCV face recognition algorithm to recognize, thus realizing an

attendance system based on face recognition. The system is divided into two parts: attendance

and face recognition. Through the test, the number and quality of members can be monitored

in real-time. The traditional attendance method of manual statistical management is abandoned,

and the method in this paper provides a scientific basis for the implementation of the campus

attendance system [4].

2.2.5. Face Recognition for Attendance Management System Using Multiple

Sensors

The problem about checking attendant is the main problem of teacher in nowadays. In

order to solve this problem, many systems have been completely changed due to this evolve to

achieve more accurate results. However, in my study, these studies still lack of the efficiency

about correct the face and students cannot verify or pose to edit the data when there is error in

class. With this reason, this research aims to develop the facing attendant system to be more

effective and the mechanic of the system which students can easily verify. The experiment of

this research is to find the way to recognize the face by using the technique of Android Face

Recognition with Deep Learning which can correctly recognize up to 97%. The database is

connected to Attendance Management System web server by using cloud storage. The result

on screen in real time on the application so that students can verify and check data [5].

2.2.6. Intelligent Attendance System with Face Recognition using the Deep

Convolutional Neural Network Method

Recording student attendance in lectures can be done in several ways, namely giving

initials on the attendance sheet or by the lecturer calling each student and then giving a

checkmark on the attendance sheet or attendance recording system. This method is inefficient

because it is done repeatedly at every meeting, resulting in reduced lecturing time. Some

researchers are trying to develop various ways to overcome this, such as using fingerprints,

14
Internet of Things devices, cards with RFID technology, QR codes, and smartphones.

However, these technologies require many devices, and they may be costly. The purpose of

this research is to develop an intelligent attendance system with facial recognition technology

that can identify many people simultaneously without having to make direct contact using the

Deep Convolutional Neural Network method. The system is then tested and analyzed for its

accuracy in identifying and recording student attendance. The results of research conducted on

16 students in a lecture show that the system can be used to record student attendance with an

accuracy of 81.25% in the condition that the student facing forward, 75.00% in the student

condition facing sideways, and 43.75% in the student condition facing down [6].

2.2.7. Student Attendance Manager Using Beacons and Deep Learning

An efficient method for attendance management system is always been a challenging

task for any organization varying from schools and colleges. This paper discusses about the

attendance management system (AMS) and its challenges. The paper proposes a student

attendance system for schools and colleges using Beacon technology and Deep Learning

techniques. The aim of this device is too savvy smart attendance system which includes the

removal of issues like intermediary participation (for example proxy attendance for a student

by another student). This is accomplished by obtaining live feeds from a fisheye camera at the

beginning of each hour, which would be processed by a Convolutional Neural Network in the

back end to enable students to choose their heads in the picture provided to them in their

interface when they are in beacon proximity. Teacher’s interface will receive this same picture

at the end of each hour to solve any discrepancy after which the data will be stored in a database.

Hence, providing a foolproof system and efficient attendance tool [7].

2.2.8. Student Attendance System using Face Recognition

Face recognition is among the most productive image processing applications and has

a pivotal role in the technical field. Recognition of the human face is an active issue for

15
authentication purposes specifically in the context of attendance of students. Attendance

system using face recognition is a procedure of recognizing students by using face biostatistics

based on the high-definition monitoring and other computer technologies. The development of

this system is aimed to accomplish digitization of the traditional system of taking attendance

by calling names and maintaining pen-paper records. Present strategies for taking attendance

are tedious and time-consuming. Attendance records can be easily manipulated by manual

recording. The traditional process of making attendance and present biometric systems is

vulnerable to proxies. This paper is therefore proposed to tackle all these problems. The

proposed system makes the use of Haarclassifiers, KNN, CNN, SVM, Generative adversarial

networks, and Gabor filters. After face recognition attendance reports will be generated and

stored in excel format. The system is tested under various conditions like illumination, head

movements, the variation of distance between the student and cameras. After vigorous testing

overall complexity and accuracy are calculated. The Proposed system proved to be an efficient

and robust device for taking attendance in a classroom without any time consumption and

manual work. The system developed is cost-efficient and need less installation [8].

2.3. Summary
The literature reviewed several existing systems that utilize facial recognition

technology for student attendance management, such as projects by Gomes Prangchumpol, and

Nurkhamid. These systems demonstrate the feasibility of automating attendance tracking

through facial recognition. However, most focused only on core recognition and attendance

logging capabilities without extensive integration with educational databases or learning

management systems. There is also a lack of emphasis on creating user-friendly interfaces

tailored specifically for students and staff in the education domain.

This project differentiates itself by not just incorporating facial recognition for

attendance, but by comprehensively integrating it into the educational ecosystem. The system
16
design places equal importance on seamless integration with existing school databases and

information systems, data security, and crafting intuitive interfaces for staffs. This enables

synchronized data analysis between attendance patterns and academic performance. The aim

is a holistic solution extending beyond basic recognition and logging.

Therefore, this project fills critical gaps in maximizing the value derived from facial

recognition technology in education. By emphasizing holistic integration and usability, it

provides institutions with enhanced data analysis capabilities and management tools that can

fundamentally improve attendance monitoring and policies. The project's scope addresses

limitations in previous implementations and explores new possibilities for automated

attendance systems to benefit students, educators, and administrators alike.

17
CHAPTER 3: METHODOLOGY

3.1. Introduction

This Chapter deals mainly with planned techniques, methodologies and concepts

pertinent to facial recognition and image processing that is more specific and niche to a single

process which uses facial recognition algorithms image processing techniques. In order to

achieve the set goals, a rapid prototype method is used since it gives us a chance to test each

phase of the system design before proceeding to another phase, and also gives a room to go

back to previous phases if something goes wrong. The methodology is articulated through

several key areas:

• System Architecture: This section provides a detailed overview of the CAMS's

architecture, elaborating on how various hardware and software components are

integrated and function cohesively.

• Project Workflow: The chapter maps out the step-by-step process of the CAMS, from

the initial conceptual design to the final stages of system testing and implementation.

• Software Design: This part details the design and development of the software

components of CAMS.

• Database Design: This shows the

• Software Tools: The chapter discusses the software tools and development

environment used in creating CAMS.

18
3.2. System Architecture
In building a face recognition attendance system, the proposed system stands as an

example of the blending of technology for efficiency and convenience. It smoothly

incorporates face recognition technology to accurately identify and record the attendance of

individuals.

Acknowledging the significant impact of timely and accurate attendance recording in

various settings, the system is also equipped with real-time data storage capabilities. This

feature ensures that attendance data is immediately stored and processed, allowing for efficient

tracking and management of attendance records. Additionally, the system is designed to be

user-friendly, allowing users to register students’ attendance with just a simple facial scan,

eliminating the need for manual input and thereby increasing the efficiency and accuracy of

the attendance recording process.

A unique aspect of the system is its capability to be integrated into various platforms

and databases. This ensures seamless and effortless management of attendance data, allowing

for easy access and retrieval of attendance records when needed. Users, administrators, and

other authorized personnel can access this data via a dedicated application, enabling them to

monitor and manage attendance records in real-time, regardless of their physical location.

Moreover, the system also includes features for additional security, ensuring that the

attendance data is protected from unauthorized access and manipulation. The architecture of

the system is shown in Figure 3.1, which displays the embedded face recognition and

attendance recording system, and the cloud-based server application responsible for data

storage and management. A detailed explanation of these components will be provided in the

following sections.

19
FACE RECOGNITION MODEL

CAMERA

DATABASE
SERVER

DISPLAY SCREEN

STUDENT

Figure 3.2-1 Proposed System Architecture

3.3. Project Work Flow

• Design Conception: The project initiates with a conceptual phase, identifying the need

for an advanced attendance management system in educational settings. This stage

involves understanding the drawbacks of traditional attendance methods and defining

the desired features and capabilities of the new facial recognition-based system.

• System Design: The next step entails a comprehensive design process, focusing on the

system's architecture. This includes the selection and integration of essential

components like facial recognition software, cameras for image capture, and a

centralized database for storing student information and attendance data.

• Software Development: In parallel with hardware setup, the software component of

CAMS is developed. This includes programming for facial recognition and

identification, creating algorithms that accurately match students' faces with the
20
database, and developing the user interface for managing and monitoring attendance

data.

• Testing and Calibration: This stage checks both the accuracy of facial recognition

and the overall system functionality. Calibration involves fine-tuning the software to

ensure precise identification and reduce false positives or negatives.

• System Integration: At this stage, the hardware and software components are fully

integrated. The system is tested in its entirety to confirm that all parts function

cohesively, ensuring the facial recognition attendance system performs as expected in

a controlled environment.

• Field Testing: This phase is crucial for adjusting the system to handle the complexities

and variability of actual usage conditions, including different lighting, angles, and

student movements.

21
3.3.1. Flow chart

For this project, the flowchart below is like a step-by-step guide that shows how our

"Student Facial Recognition Attendance System" works. It helps show how we use facial

recognition to mark attendance. With many steps involved, it might seem a bit complicated.

But the flowchart helps make things clear. It shows everything from when a student's face is

scanned to when their attendance is recorded. By checking out the flowchart, everyone can

easily see how the system works when students enter the class. This makes things clear and

helps everyone get how the system works.

Start

Capture Image

Process Image
with Open CV

Match with
Database

Is there a
Yes match? No

Check Attendance Display Unknow

Attendance
Yes No
taken?

Display Attendance Already Taken Mark Attendance

Try to take
Yes No
attendance again

End
Display Attendance Already taken

Figure 3.3-1 System Flow chart

22
START
CAPTURE STUDENT_IMAGE FROM CAMERA
PROCESS STUDENT_IMAGE USING OPENCV
COMPARE PROCESSED_IMAGE WITH IMAGES IN DATABASE
IF MATCHED_STUDENT IS FOUND THEN
IF ATTENDANCE FOR MATCHED_STUDENT IS ALREADY MARKED THEN
DISPLAY "Already Taken"
ELSE
SSsSofsoosi;
MARK ATTENDANCE FOR MATCHED_STUDENT
DISPLAY "Attendance Marked"
END IF
ELSE
DISPLAY "Unknown"
END IF

Figure 3.3-2 pseudocode

3.4. Software Design

Setting up the student facial recognition system for attendance is like building

something from scratch. The need to design a standard attendance for Lecturers and make sure

they work well. Then, to create a computer program that can recognize students' faces. It's

important to test everything to make sure it works together. By the end, the ideas should work

just as planned in the actual classroom. This section describes how the algorithm was

implemented to design the system and the testing of the system. The application was created

using python OpenCV and facial recognition libraries. Both the front-end and back-end of the

project were done using python, MySQL and tailwind. In order to achieve the set goals, a rapid

prototype method is used since it gives us a chance to test each phase of the system

development before proceeding to another phase, and also gives a room to go back to previous

23
phases if something goes wrong. The project follows three-layered architecture, which is

described below.

• Presentation Layer: This layer is responsible for the user interface. All the

components that users see and interact with within the application are in this layer.

• Application Layer: Application layer controls the overall functionality of the system.

Functionality such as logging into the system, facial detection, and recognition is all

done in this layer.

• Data Layer: In this layer, Data and Information are stored and retrieved in the database.

The names, images of students as datasets, teaches are stored in the database. Once the

face is matched, marking of attendance in the database. See figure below.

Presentation Layer

Application Layer

Database Layer

Figure 3.4-1 System Design

3.4.1. Functional Requirements

The system's functionalities are thoughtfully designed to meet the specific needs of both
instructors and students within the educational setting:

• Student Registration and Facial Profile Setup: This essential feature allows students

to register in the system, where they create their unique profiles. During registration,

the system captures their facial data using advanced imaging techniques, ensuring

accurate recognition for attendance purposes.


24
• Class and Attendance Management: Instructors have access to tools that enable them

to set up class and manage attendance records efficiently. They can define class timings,

associate students with specific courses, and view attendance reports, making the

tracking process straightforward and transparent.

• Real-time Attendance Recording: The CAMS provides a real-time interface for

attendance. As students enter the classroom, the system automatically identifies them

via facial recognition, records their attendance, and updates the database

instantaneously.

• Attendance Data Analysis and Reporting: Post-class, the system processes

attendance data, allowing for quick analysis and reporting. Instructors can review

attendance records, monitor trends, and identify attendance patterns, which can be

useful for academic evaluations.

• Integration with Educational Systems: The CAMS is designed to integrate

seamlessly with existing educational management systems. This allows for

synchronized data management, where attendance records can be correlated with

academic performance, student profiles, and other relevant educational data.

3.4.2. Non-Functional Requirements

• Performance: The CAMS is designed with an optimized back-end infrastructure,

efficient database handling, and streamlined code to support high-volume usage. This

ensures the system's capability to manage a large number of students and faculty,

making it suitable for both small and large educational institutions.

• Security: The system utilizes advanced encryption and privacy protection techniques

to secure sensitive biometric data. Regular security audits and compliance with global

data protection and privacy standards are in place to safeguard all user information,

particularly facial recognition data.

25
• Scalability: Employing cloud-based solutions, the CAMS is scalable to accommodate

growing user numbers and expanding institutional requirements. This allows for

dynamic resource allocation to maintain consistent system performance as more classes

and students are added.

• Usability: The user interface of CAMS adheres to user-centric design principles,

ensuring it is intuitive and easy to navigate for both students and faculty. The system

undergoes regular updates based on user feedback to enhance usability and user

experience.

• Reliability: The system guarantees high reliability, with a strong uptime record,

ensuring that it is consistently available for daily attendance management and can be

relied upon during critical academic periods.

• Compatibility: CAMS is designed to be compatible with a range of devices and

operating systems, regularly updated to ensure seamless operation with the latest

technology and to accommodate various end-user preferences.

3.5. Database Design

3.5.1. Data Flow Diagram for Context Level

Lecturer/Teacher Administrator

FACIAL RECOGNITION ATTENDANCE MANAGEMENT SYSTEM

Figure 3.5-1 Data Flow Diagram for Context Level

26
3.5.2. Data Flow Diagram for Administrator

Student
Management

Lecturer
ADMIN
Management

User Management

Figure 3.5-2 Admin Data flow Diagram

3.5.3. Data Flow Diagram for Lecturer

Attendance
Management

Lecturer

Take Attendance

Figure 3.5-3 Lecturer Data flow Diagram

27
3.5.4. Database structure

For this project, mysqlconnector was used to create the database. The tables are created

by phpmyadmin.

Figure 3.5-4 Database Structure

3.6. Hardware configuration

This section of the project deals with the hardware components which are used in

designing the system. The system however does not require much of hardware components

and hence only the webcam is used.

3.6.1. Webcam

The webcam serves as the primary tool for capturing images of individuals for the face

recognition process. It captures high-resolution images to ensure accurate and efficient face

detection and recognition.

Figure 3.6-1 Webcam

Working Principle of a Webcam: A webcam is equipped with an image sensor chip (either

CMOS or CCD) that converts an optical image into an electronic signal. The lens focuses light

onto the image sensor. It can be adjusted to refine the focus and clarity of the image. The

28
electronic signal from the image sensor, which is in analogy form, is converted into a digital

signal by an Analog-to-Digital Converter (ADC). The digital signal is compressed to reduce

the file size for faster and more. The webcam is connected to a computer or other devices via

USB, wireless network, or other connectivity options. The compressed digital image is sent to

the connected device for processing and display. The computer or device uses software to

process the digital image for various applications, such as displaying it on the screen for video

calls or analysing it for face recognition. In the context of a face recognition attendance system,

the received image is processed by face recognition software to identify the individual and

mark their attendance. The processed image can be displayed, stored, or further processed

based on the application. In a face recognition attendance system, the recognized data is used

to mark attendance and store the relevant information in a database.

Uses of a Webcam in the project

• Image Capture: The process begins with the webcam capturing the image of an

individual who stands in front of it. The camera is typically positioned at entry points

for optimal image capture.

• Image Transmission: After capturing the image, the webcam transmits this data to the

connected computer or system. This transmission usually happens over a USB or

wireless connection.

• Face Detection: Once the image data is received by the system, the face detection

algorithm scans the image to locate and identify the face within it. The system analyses

various features and aspects of the face to ensure accurate detection.

• Face Recognition: After successful face detection, the face recognition software

processes the facial features to identify the individual. The software compares the

captured facial data with the stored facial data in the database.

29
• Security: The webcam and the associated system ensure secure and reliable attendance

marking, preventing unauthorized access or fraudulent attendance entries.

3.7. Software Tools

The design also uses a couple of software components which are relevant in terms of

facial recognition technology. Some of these components are:

• Development Platform: VS Code


• Programming Languages: Python, HTML, JavaScript

• Web Development Framework: Tailwind CSS

• Database Management System: MSQL

3.7.1. VS Code

Visual Studio Code, also commonly referred to as VS Code, is a source-code editor

made by Microsoft with the Electron Framework, for Windows, Linux and macOS. Features

include support for debugging, syntax highlighting, intelligent code completion, snippets, code

refactoring, and embedded Git. Users can change the theme, keyboard shortcuts, preferences,

and install extensions that add functionality.

Figure 3.7-1 Vs Code

Use of Vs Code in this project: Use to write, backend server code, frontend UI code, and

database scripting, providing a centralized development environment, enabling you to write,

test, and debug your code more efficiently, and manage your project seamlessly.

30
3.7.2. Tailwind CSS

Tailwind CSS is an open-source CSS framework. The main feature of this library is

that, unlike other CSS frameworks like Bootstrap, it does not provide a series of predefined

classes for elements such as buttons or tables. Instead, it creates a list of "utility" CSS classes

that can be used to style each element by mixing and matching. Therefore, Tailwind CSS is a

utility-first CSS framework that permits you to create custom designs without writing any CSS

code. It provides a set of predefined classes that you can apply to your HTML elements to style

them according to your needs.

Use of Tailwind CSS in this project: Considering that administrators and employees may

access the attendance system from various devices, it's crucial to implement a responsive

design. Tailwind CSS offers utilities to manage different screen sizes, ensuring the attendance

system is easily accessible from smartphones, tablets, and desktop computers. This approach

guarantees smooth and efficient interaction with the system, regardless of the device used,

enhancing the overall user experience and ensuring seamless attendance management and

monitoring.

3.7.3. HTML

The Hypertext Mark-up Language or HTML is the standard mark-up language for documents

designed to be displayed in a web browser. It defines the meaning and structure of web content.

It is often assisted by technologies such as Cascading Style Sheets (CSS) and scripting

languages such as JavaScript. Web browsers receive HTML documents from a web server or

from local storage and render the documents into multimedia web pages. HTML describes the

structure of a web page semantically and originally included cues for its appearance.

Uses of HTML in this project.

• Data Presentation: Utilize HTML to organize the data retrieved from the webcam,

such as timestamps and attendance records, into tables, lists, or other visually
31
comprehensible formats. This structured presentation aids in easy and quick analysis of

attendance data.

• Forms: Develop forms for entering employee details and setting parameters for access

control, ensuring only authorized individuals can mark attendance through the face

recognition system.

• Links: Incorporate hyperlinks for smooth navigation between different sections or

pages, like historical attendance data, real-time monitoring, employee profiles, etc.

• Buttons: Introduce buttons for various actions such as updating employee data,

exporting attendance reports, or manually triggering the face recognition process for

attendance marking.

3.7.4. MySQL

MySQL is an open-source relational database management system (RDBMS). It's used to store,

retrieve, and manage data in structured tables. At its core, MySQL is a relational database,

meaning it organizes data into structured tables that can relate to one another. This contrasts

with non-relational databases that might organize data into objects, key-value pairs, or other

formats. MySQL uses Structured Query Language (SQL) to interact with data. SQL is a

standard language used to perform tasks like querying data, updating data, or creating data

structures.

Uses of MSQL in this project.

• Attendance Data: Store images and related attendance data captured from the webcam

in a face recognition system.

• Employee Profiles: Store personal and contact details of employees, including

historical attendance data, contact information, and assigned roles.

• System Logs: Log system activities, error messages, and other relevant events for

debugging or audit purposes.

32
• Real-time Dashboard: Utilize MySQL’s efficient querying capabilities to retrieve and

display real-time attendance data on a dashboard for administrators to monitor.

• Historical Data Analysis: Extract past attendance data for trend analysis, aiding in

anticipating potential issues or validating the effectiveness of the attendance system.

• Authentication: Store encrypted user credentials, ensuring that only authorized

personnel can access the face recognition attendance system.

• Employee Data Protection: Given the sensitive nature of personal data, encrypt

specific tables or data columns to ensure employee confidentiality.

3.7.5. Python

Python is a high-level object-oriented programming language. It was made by Guido

van Rossum in 1991 as Python 0.9.0. It was made as the successor of the ABC programming

language. Later, Python 2.0 was released on 16 October 2000 in which so many features like

list comprehension and garbage collecting system were added. On 3 December 2008, Python

3.0 was released. Python is a very popular programming language and can be used for many

purposes. It is extensively used for web development, software development, mathematics and

data analysis, system scripting, and so on. Python is a multi-purpose programming language

which works on diverse platforms such as Windows, Linux, Mac, Raspberry Pie, and a lot

more. Python is popular than other programming languages because it has a simple syntax

compared to other programming languages. Its syntax permits the programs to write code that

is easier to understand and in fewer lines. It runs in an interpreter system thus; the code can be

executed as soon as it is written. In this research, we use Python for web development and

machine learning. This project demonstrated how Python is used for an effective, efficient and

dependable web application. Several Python frameworks, libraries are used in this project.

Uses of Python in this project.

33
• Libraries: Utilize libraries such as OpenCV and Facial Recognition to capture images

from the webcam and process them for face recognition.

• Algorithm: Implement face recognition algorithms to match the captured images with

stored images in the database to verify identities.

• Communication with Database: Use Python to interact with a database (SQL) to store

and retrieve attendance data and user information.

• API Development: Use Flask framework to create RESTful APIs for communicating

between the frontend and backend.

• Data Processing: Process and analyze the attendance data to generate reports, insights,

and other relevant information.

• Use Python to integrate the attendance system with other systems such as email

notification systems for sending attendance reports, or HR systems for recording

attendance data.

3.7.6. Criteria in selection of Hardware Component and Software tools

• Hardware and Software Compatibility: The selected hardware, especially webcams,

must be fully compatible with the facial recognition software. This ensures seamless

integration, where hardware can efficiently capture images and software can accurately

process these images for facial recognition.

• Real-time Performance: Both hardware and software should support real-time

operations. The webcam must capture high-quality images instantaneously, and the

software should promptly process these images for immediate attendance recording.

• Library and Driver Support: The software should have access to a robust library for

facial recognition algorithms, and the hardware should have reliable drivers for optimal

functionality. This is critical for tasks like image processing, feature extraction, and

database interaction.

34
• Development and Operational Efficiency: The tools and hardware should enable

efficient system development and operation. This includes user-friendly software

development environments and high-performance, easy-to-integrate hardware

components.

• Reliability and Stability: Stability and reliability are paramount for both hardware and

software, given the system's role in attendance management. The webcam must

consistently capture clear images under various conditions, and the software must

stably process data without errors.

• Cost-Effectiveness: Considering budget constraints, the cost of both software and

hardware is an important factor. Options like open-source software and cost-effective

yet efficient hardware like standard webcams can be advantageous.

• Scalability: Both the hardware and software should be scalable. This means the system

can be expanded or upgraded in the future, for example, by adding more advanced

cameras or incorporating more sophisticated facial recognition algorithms.

35
CHAPTER 4: IMPLEMENTATION OR RESULTS

4.1. Introduction

In contemporary educational settings, ensuring accurate student attendance remains a

paramount concern. The traditional manual methods not only require substantial time and effort

but also leave room for human error and impersonation. This project outlines an avant-garde

solution tailored to revolutionize the attendance system – the "Student Facial Recognition

Attendance System." Harnessing the power of advanced facial recognition algorithms and

computational techniques, this project aspires to automate attendance processes seamlessly.

The primary objective is to eliminate manual entry, reduce errors, and maintain an authentic

record of student presence.

This chapter will guide readers through the genesis of this novel system, its

foundational components, and the intricate mechanics of its operation. An in-depth exploration

of facial recognition technology and its transformative potential in educational institutions will

be illuminated. Furthermore, this section explains how the algorithm was applied to design the

system and the testing of the system. The application was built using Python’s framework.

Both the front-end and back-end of the project were done using python. This project

implements the tools and technologies mentioned in chapter-3.

• Implementation Details: A comprehensive dissection of the software and potential

hardware elements. Each facet of the facial recognition system, from image acquisition,

preprocessing, feature extraction, to the final recognition process, will be detailed. The

roles they individually and collectively play in ensuring the system's efficacy will be

emphasized.

• Testing and Validation: This segment will delve into the verification protocols for the

system. The strategies adopted, the results procured, and any challenges faced during

the process will be accentuated.


36
• Results: This section will showcase the system's performance metrics. A meticulous

breakdown of results will elucidate the system's practical applicability and precision in

real-world educational settings.

• Summary: A concise recapitulation of the chapter will be presented, revisiting the

salient features and findings. The emphasis will be on the tangible and academic merits

of this pioneering project.

4.2. Software Implementation

The process of software development for the Class Attendance Management System

(CAMS) entails a detailed and intricate journey of creation, design, deployment, and

maintenance. This section provides an in-depth exploration of the software aspect of CAMS,

with a special focus on the design and execution of the user interface (UI). The UI is crucial in

facilitating a smooth and effective interaction between the users – primarily educational staff

and students – and the application. The goal is to offer an optimal user experience characterized

by intuitive navigation, efficient functionality, and an aesthetically pleasing design that meets

the needs and expectations of its users.

4.2.1. User Interface (UI) Design

In the context of CAMS, the user interface acts as the vital link between the system and

its users, who are the educators and students in educational institutions. The design of the UI

is therefore oriented around principles of clarity, intuitiveness, and accessibility to ensure ease

of use.

Design Principles:

The UI of CAMS was meticulously developed with a focus on principles like

accessibility, clarity, and intuitiveness, aiming to create an exceptional user experience. Key

considerations included a responsive design to accommodate various devices, straightforward

navigation, and visually intuitive layouts that facilitate quick and easy attendance management.
37
The interface design takes into account the different needs of educational staff and students,

ensuring that each user group has an experience tailored to their specific interactions with the

system.

Layouts and Flows:

This subsection describes the various screens, dashboards, and pages that users of

CAMS interact with, detailing the user journey through these interfaces. It explains how users

navigate the system for tasks such as registering for facial recognition, checking attendance

records, or managing class, ensuring that the journey through the application is logical,

efficient, and user-friendly.

1. Login System
Figure 4.2-1 represents the login section of the student facial recognition attendance

system. Users, like administrators or educators, would access this portal to view attendance

data, manage student profiles, or adjust system settings. A secure login ensures that only

authorized personnel can access the sensitive data within.

Figure 4.2-1 Login System

38
2. Admin Dashboard

Figure 4.2-2 showcases the admin dashboard of the student facial recognition

attendance system. This centralized interface allows administrators or educators to have an

overview of attendance metrics at a glance. The dashboard provides features such as:

• Displays student's attendance record.

• Options to customize or configure system settings.

This user-friendly dashboard ensures that staff can easily monitor and manage student

attendance, making the most of the facial recognition technology's capabilities.

Figure 4.2-2 Admin Dashboard

3. Add Student
Figure 4.2-3 presents the "Add Student" interface of the student facial recognition

attendance system. This section is crucial for administrators or educators to onboard new

students into the system. Features and elements that the interface might include are:

• Fields for entering student details such as name, ID number, class, and other relevant

information.

• An option to upload or capture the student's facial image, which the system will use for

recognition.

• A 'Save' or 'Submit' button to confirm the addition of the new student.


39
This "Add Student" page is instrumental in ensuring that every student is accurately registered

in the system, allowing the facial recognition feature to identify and record their attendance

correctly.

Figure 4.2-3 Add Student Dashboard

4. Manage Students
Figure 4.2-4 depicts the "Manage Student" section of our student facial recognition

attendance system. This interface is essential for administrators or educators to oversee

and modify student records as necessary. Key features and elements that might be found

within this interface include:

• A list or table displaying registered students, with columns for their names, IDs,

classes, and other pertinent details.

• Options to edit or update a student's information, ensuring that records remain

current and accurate.

This "Manage Student" interface ensures that the school's staff has full control over

student records, facilitating smooth operation of the facial recognition attendance

system.

40
Figure 4.2-4 Manage Student Dashboard

5. Add Lecturer
Figure 4.2-5 showcases the "Add Lecturer" interface of the student facial recognition

attendance system. This page is essential for administrators or school staff to input and

manage lecturer or teacher profiles. Some probable features and elements within this

interface might be:

• Fields for entering lecturer details such as name, employee ID, department, and other

relevant data.

• An option to upload or capture the lecturer's facial image, which the system might use

for additional features or security purposes.

• A 'Save' or 'Submit' button to confirm and store the lecturer's details.

Through this "Add Lecturer" section, the system can maintain an organized database of

educators, which can be useful for various functionalities beyond just student

attendance.

41
Figure 4.2-5 Add Lecturer Dashboard

6. Manage Lecturers
Figure 4.2-6 introduces the "Manage Lecturer" interface of our student facial

recognition attendance system. This platform is integral for administrators or school

staff to oversee and adjust lecturer or teacher profiles when necessary. Key features and

elements that the interface might encompass are:

• A list or table showcasing registered lecturers, with columns detailing their names,

employee IDs, departments, and other essential attributes.

• Options to edit or update a lecturer's data, ensuring that all information remains up-

to-date.

• Tools to delete or archive lecturers, for instances like retirements or role changes.

The "Manage Lecturer" interface ensures that school administrators have complete

command over lecturer records, optimizing the operation of the facial recognition

attendance system for both students and staff.

42
Figure 4.2-6 Manage Lecturers Dashboard

7. Add Class or Module


Figure 4.2-7 reveals an interface related to the "Add/Manage Class" feature of the

student facial recognition attendance system. This section is crucial for administrators

or educators to structure and manage class groups within the school. Some potential

elements and functionalities of this interface might include:

• Fields for detailing class information such as class name, class ID.

• A list or table that displays existing classes, providing a quick overview of the

school's class structure.

• Features to edit or update class details.

The "Add/Manage Class" interface is foundational to the system. It ensures classes are

correctly set up, helping the facial recognition feature accurately track student

attendance based on their class schedules.

43
Figure 4.2-7 Create Class Dashboard

8. Admin Settings
Figure 4.2-8 provides a glimpse into the "Admin Settings" interface of the student facial

recognition attendance system. This section is indispensable for administrators,

granting them the capability to fine-tune system configurations and parameters. Some

probable features and elements embedded in this interface are:

• Options to adjust system preferences, like login.

• Tools for managing user roles and permissions, ensuring that only authorized

personnel can access certain features or data.

• Security settings to bolster the protection of sensitive data, including password

policies or two-factor authentication toggles.

The "Admin Settings" interface serves as the control center for the system, giving

administrators the power to optimize its performance and security according to the

school's unique needs.

44
Figure 4.2-8 Admin Settings Dashboard

9. Lecturers Dashboard
Figure 4.2-9 showcases the "Lecturer Dashboard" within the student facial recognition

attendance system. This user-centric interface is designed specifically for lecturers or

teachers, providing them with a comprehensive overview and management tools

tailored to their roles. Elements and features that the dashboard might encompass are:

The "Lecturer Dashboard" is the gateway for educators to harness the power of the

facial recognition system, ensuring efficient attendance management while also

integrating seamlessly into their daily teaching routines.

Figure 4.2-9 Lecturers Dashboard

10. Take Attendance


45
Figure 4.2-10 shows are the students present in the database that takes electronics class.

The table contains information about each student such as student ID, student name,

and class attended. Also have a button to take attendance

Figure 4.2-10 Take attendance screen

11.Attendance Management
Figure 4.2-11 shows are the students’ attendances for various classes. The table

contains information about each student such as student ID, student name, date, time

and class attended.

Figure 4.2-11 Attendance Management

46
4.3. Testing and Validation
In the scope of the student facial recognition attendance system, testing and validation

are of utmost importance. Given the critical nature of student attendance and the implications

of inaccuracies, a thorough examination of both the software algorithms and hardware

components, such as cameras, is essential. Testing will probe the accuracy of our facial

recognition algorithms and the reliability of our attendance logging mechanisms, ensuring that

each module works harmoniously and without hiccups. Validation, in contrast, will verify that

our system effectively identifies students, logs attendance accurately, and provides educators

with reliable data as initially planned. These interconnected processes underline our dedication

to offering a dependable, top-notch attendance solution, bolstering trust among educators,

students, and administrators alike.

The testing stages are as follows:

Database Initialization: The initial phase is dedicated to setting up a secure database where

essential student information and their distinctive facial features or templates are stored.

Admin Interface: Here, the system admin or other authorized personnel have the ability to

access a dedicated interface, allowing them to enter pertinent student details. This encompasses

crucial information such as the student's name, ID, class, and more.

4.3.1. Recognition & Attendance Marking

A camera captures live images or video feed of students when they enter the Just like the image

upload process, the system detects and processes faces in real-time from the live feed. The

extracted features from the live feed are compared with the stored templates in the database

using similarity metrics. If there's a match above a certain threshold, the system identifies the

student. Once a student is identified, the system marks attendance for that student for the

particular day or class. If the system can't find a match for a detected face, it tags it as

"Unknown.".
47
1. Taking Attendance process

Figure 4.3-1 displays the attendance being recorded for the student, using the saved information

in the database.

Figure 4.3-1 Student attendance marked

Figure 4.3-2 demonstrates that if a student's attendance has already been recorded and there is

an attempt to record it again, the system will display a message indicating 'Attendance already

taken.'"

Figure 4.3-2 Try to retake attendance

48
However, if a student’s image is not part of the stored images in the system, the system will

not recognize his or her face by displaying a red rectangle with unknown shown at the top.

Figure 4.3-3 Unrecognized student

Figure 4.3-4 shows students, previously added to the database, having their attendance taken

and recorded for that specific day. Under 'Attendance Records', authorized personnel or

lecturers can view attendance records for specific days, weeks or months.

Figure 4.3-4 Attendance View

49
4.4. Result
The integrated facial recognition attendance system effectively bridges the gap between

educational institutions and their students, ensuring precise attendance tracking. The moment

a student enters the classroom, the system promptly identifies the student and records the time

and date of their attendance. Beyond just recording, the system offers real-time attendance

visualization through an administrative interface, enabling lecturers or administrators to

monitor classroom presence and punctuality in real-time. This fusion of technology not only

ensures accurate attendance records but also provides educational institutions with an enhanced

sense of management and oversight. The real-time feedback, interactive student profiles, and

immediate attendance logs collectively illustrate the system's efficacy and the positive

outcomes of the project.

4.5. Summary

The Facial Recognition Attendance System is a cutting-edge solution designed to

provide educational institutions with an enhanced layer of monitoring student attendance. The

system seamlessly integrates hardware components, like cameras and facial recognition

modules, with software interfaces to create a real-time student identification and attendance

recording mechanism.

Upon initialization, the system activates its recognition phase, diligently watching over

the classroom's entry points. Should a student enter, the system immediately identifies the

student and logs their attendance, capturing crucial information such as the time and date. This

quick response ensures institutions have accurate and up-to-date records.

But the system's capabilities extend far beyond mere recognition. Through a dedicated

administrative interface, lecturers or administrators can view and manage student attendance

records, regardless of their own location. They can view student profiles, access attendance

histories, and even generate reports for specific periods. In instances of discrepancies or to
50
update student details, an option to manage student profiles ensures seamless system

operations.

In essence, this project marries innovative technology with practical educational needs,

offering institutions not just accurate attendance tracking but also efficient management.

Through real-time feedback, facial recognition technology, and comprehensive administrative

options, the Facial Recognition Attendance System stands as a testament to the possibilities of

modern technology in enhancing educational management.

51
CHAPTER 5: DISCUSSIONS AND CONCLUSIONS

5.1. Introduction

Chapter five of this dissertation delves into the discussions, conclusions, and

recommendations surrounding the design and implementation of a class attendance

management system utilizing facial recognition technology. Through a comprehensive analysis

of the research findings, this chapter aims to provide insights into the effectiveness and

feasibility of this innovative approach, offering valuable recommendations for its successful

integration within educational institutions in Sierra Leone. The discussions will shed light on

the benefits and limitations of facial recognition technology in attendance management, the

implications for student privacy, and the potential challenges that may arise during

implementation

5.2. Discussions

Class attendance management using facial recognition technology can solve the

problem of students’ attendance on educational institutions in Sierra Leone. This can be done

by using some software techniques and algorithms first to detect a face then to predict whose

face is. As this was a small-scale project, data structure and implementation did not have many

problems. Nonetheless, it took the researcher countless effort with research and studying

different technologies required as these tools and technologies were new to the researcher.

This caused a delay in the development of the project. In spite of the delay and the many

complications, the researcher was able to integrate those tools and technologies and complete

the project. Conversely, the accomplishment rate of facial recognition was not as expected. The

accomplishment rate depended upon the quality of the camera, lighting, and adequate dataset

in the database. When these factors were to be managed accurately, the success rate of face

52
recognition increased. The effort that went to learn and research about python, HTML,

Tailwind CSS, and VSCode and other tools and technologies was worth everything.

Even though the process of researching and implementing was awesome, it started to

be more interesting as the project began to show some results. This project gave the researcher

first-hand experience in working on a project using python and other software.

5.3. Conclusions

The sole aim of the project was to design a system that uses facial recognition

technology to manage student’s attendance for classes. The concepts of facial recognition and

software is deeply discussed in this thesis.

Likewise, web development of the software needed is also discussed, charted by

examples of implementation and explanations. The result of the project was a successful

prototype of a facial recognition system in which the admin can create a lecturer account as

well as adding students and their information to the database. The lecturers then can log in to

the system and take attendance of the student. The student’s face is detected by a camera and

attendance is recorded in the database. Lecturers and admin could see the attendance report of

the students.

Overall, the project was successful in its showcasing how python and other software

can be implemented in the design of the system to create a web application. As soon as it is

implemented, it can be used to take attendance of students and keep track of their attendance

records.

5.4. Recommendations

The researcher encountered various challenges in obtaining critical information

regarding certain software and their deployment methodologies. Furthermore, the study need

substantial financial assistance during the creation and testing of the system.

53
Because most software requires a sophisticated programming language, the time period

for designing such a system was quite short. All of this makes it quite tough to create the design.

Therefore, the study makes the following recommendations.

It was observed that face detection algorithms work on changes to illumination and

image resolution to images of uncontrolled backgrounds. However, it is recommended that

future work and research implement a system that can achieve a high performance on such

images.

The privacy of the data stored is very important. At the beginning of every school year,

the university will take images of newly admitted students and store them in the database of

the system. Therefore, it is the responsibility of the university to inform each student about the

use of their faces for a facial recognition attendance system. This must however be in line with

the government policies on ethical issues and data protection laws. This means that the students

will have to approve to their images used for the purpose of attendance taking.

Also, this project has the potential for further development in the future by adding more

features for students and lecturers. More features like assignments, results, and grades could

be added.

A more in-depth investigation is required for such a project. The approaches employed

might be coupled with others to get excellent outcomes. According to the literature research,

several strategies have been used in the past.

HMM may be used in conjunction with other feature extraction methods, which can be

constructed and evaluated. This will take more time because it is merely a trial that will take

into account the existing procedure in order to have a completely fresh notion. The technology

will be implemented as a stand-alone system that other schools can utilize. This will now be

accomplished with the Python App builder.

54
The research focuses only on the development of a face recognition-based attendance

management system for a classroom context. It does not include other forms of attendance

management systems or other applications of facial recognition technology. In addition, the

study assumed that the essential gear, such as a web camera and computer, was available and

working. It does not include hardware acquisition, installation, or maintenance.

55
References

[1] E. C. a. H. S. A. a. K. S. a. S. A. SAI, " Student Attendance Monitoring System Using


Face Recognition," 2021.

[2] C. S. D. T. J. D. Gomes Clyde, "Class Attendance Management System using Facial


Recognition," ITM Web of Conferences, vol. 32, p. 2001, 2020.

[3] A. Shrestha, "Face Recognition Student Attendance System," 2021.

[4] X. Chen, "Study on Student Attendance System Based on Face Recognition," Journal of
Physics: Conference Series, vol. 2492, pp. 1742-6596, 2023.

[5] D. Prangchumpol, "Face Recognition for Attendance Management System Using Multiple
Sensors," Journal of Physics: Conference Series, pp. 1742-6596, 2019.

[6] P. S. H. J. R. W. Y. I. a. N. M. N. Nurkhamid, "Intelligent Attendance System with Face


Recognition using the Deep Convolutional Neural Network Method," Journal of Physics:
Conference Series, vol. 1737, no. 012031, pp. 1742-6596, 2021.

[7] K. J. T. P. R. S. R. a. S. A. D. M Mohanasundar, "Student Attendance Manager Using


Beacons and Deep Learning," Journal of Physics: Conference Series, vol. 1706, pp. 1742-
6596, 2020.

[8] S. D. a. T. Patnaik, "Student Attendance System using Face Recognition," International


Conference on Smart Electronics and Communication, pp. 90-96, 2020.

56
Appendix A: Face Recognition Code

import cv2

import os

import face_recognition

import pickle

def update_encodings():

folderPath = 'static/Images'

PathList = os.listdir(folderPath)

imgList = []

studentsIds = []

for path in PathList:

imgList.append(cv2.imread(os.path.join(folderPath, path)))

studentsIds.append(os.path.splitext(path)[0])

def findEncodings(imagesList):

encodeList = []

for img in imagesList:

img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB)

encode = face_recognition.face_encodings(img)[0]

encodeList.append(encode)

return encodeList

print("Encoding started ...")

encodeListKnown = findEncodings(imgList)

encodeListKnownWithIds = [encodeListKnown, studentsIds]

print("Encoding complete")

with open("EncodeFile.p", 'wb') as file:


57
pickle.dump(encodeListKnownWithIds, file)

print("File saved")

def load_known_encodings(filename):

"""Load known face encodings from a pickle file."""

with open(filename, 'rb') as file:

encodings_with_ids = pickle.load(file)

return encodings_with_ids

def recognize_face_in_frame(encode_face, encode_list_known, student_ids, cursor, db):

"""Recognize and handle a face in the frame."""

matches = face_recognition.compare_faces(encode_list_known, encode_face)

face_dis = face_recognition.face_distance(encode_list_known, encode_face)

match_index = np.argmin(face_dis)

if matches[match_index]:

reg_no = student_ids[match_index]

query = """

SELECT s.firstName, s.lastName

FROM students s

JOIN attendance a ON s.reg_no = a.id

WHERE s.reg_no = %s AND a.date = CURDATE()

"""

cursor.execute(query, (reg_no,))

student = cursor.fetchone()

print(f"Checking attendance for student with reg_no: {reg_no}. Result: {student}")

58
if student:

return (255, 0, 0), f"{student['firstName']} {student['lastName']}: Attendance already


taken"

else:

now = datetime.now()

cursor.execute("INSERT INTO attendance (id, time, date) VALUES (%s, %s, %s)",
(reg_no, now.strftime('%H:%M:%S'), now.strftime('%Y-%m-%d')))

db.commit()

cursor.execute("SELECT firstName, lastName FROM students WHERE reg_no=%s",


(reg_no,))

student = cursor.fetchone()

return (0, 255, 0), f"{student['firstName']} {student['lastName']}: Attendance Marked"

else:

return (0, 0, 255), "Unknown"

59

You might also like