0% found this document useful (0 votes)
364 views33 pages

Facial Recognition Based Attendance System Report

This project report describes a facial recognition based attendance system. The system was developed by Piyush Vishwakarma, Shreya Sinkhedkar, Shashank Shrivastava, and Ibrahim Salim under the guidance of Dr. Gaurav Makwana. The report includes details of the existing manual attendance systems, the proposed automated facial recognition system, feasibility analysis, system requirements, design diagrams including use case, data flow, class, and interaction diagrams, and the technologies used. The system aims to provide an efficient and time saving alternative to traditional attendance methods.
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)
364 views33 pages

Facial Recognition Based Attendance System Report

This project report describes a facial recognition based attendance system. The system was developed by Piyush Vishwakarma, Shreya Sinkhedkar, Shashank Shrivastava, and Ibrahim Salim under the guidance of Dr. Gaurav Makwana. The report includes details of the existing manual attendance systems, the proposed automated facial recognition system, feasibility analysis, system requirements, design diagrams including use case, data flow, class, and interaction diagrams, and the technologies used. The system aims to provide an efficient and time saving alternative to traditional attendance methods.
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/ 33

Project Report

on

FACIAL RECOGNITION BASED


ATTENDANCE SYSTEM
In partial fulfillment of requirements for the degree

of
BACHELOR OF TECHNOLOGY
IN

COMPUTER SCIENCE & ENGINEERING

Submitted by:

PIYUSH VISHWAKARMA [19100BTBDAI05332]

SHREYA SINKHEDKAR [19100BTBDAI05345]


SHASHANK SHRIVASTAVA [19100BTBDAI05342]

IBRAHIM SALIM [19100BTBDAI05319]

Under the guidance of


Dr. Gaurav Makwana

SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA, INDORE


SHRI VAISHNAV INSTITUTE OF INFORMATION TECHNOLOGY
DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING
JUL-DEC-2022
SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA, INDORE
SHRI VAISHNAV INSTITUTE OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

DECLARATION

We here declare that work which is being presented in the project entitled “FACIAL
RECOGNITION BASED ATTENDANCE SYSTEM” in partial fulfillment of degree of
Bachelor of Technology in Computer Science & Engineering is an authentic record of our
work carried out under the supervision and guidance of Dr. Gaurav Makwana, Assistant
Professor of Computer Science & Engineering. The matter embodied in this project has not
been submitted for the award of any other degree.

Piyush Vishwakarma

Shreya Sinkhedkar

Shashank Shrivastava

Ibrahim Salim

Date:

I
SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA, INDORE
SHRI VAISHNAV INSTITUTE OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

PROJECT APPROVAL SHEET

The following team has done the appropriate work related to the “Facial Recognition Based
Attendance System” in partial fulfillment for the award of Bachelor of Technology in
Computer Science & Engineering of “SHRI VAISHNAV INSTITUTE OF INFORMATION
TECHNOLOGY” and is being submitted to SHRI VAISHNAV VIDYAPEETH
VISHWAVIDYALAYA, INDORE.

Team:
1. Piyush Vishwakarma
2. Shreya Sinkhedkar
3. Shashank Shrivastava
4. Ibrahim Salim

Internal Examiner External Examiner

Date:

II
SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA, INDORE
SHRI VAISHNAV INSTITUTE OF INFORMATION TECHNOLOGY

DEPARTMENT OF COMPUTER SCIENCE & ENGINEERING

CERTIFICATE

This is to certify that Mr. Piyush Vishwakarma, Mr. Shashank Shrivastava, Mr. Ibrahim
Salim and Ms. Shreya Sinkhedkar working in a team have satisfactorily completed the project
entitled “Facial Recognition Based Attendance System” under the guidance of Dr. Gaurav
Makwana in the partial fulfillment of the degree of Bachelor of Technology in Computer
Science & Engineering awarded by SHRI VAISHNAV INSTITUTE OF INFORMATION
TECHNOLOGY affiliated to SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA,
INDORE during the academic year Jul-Dec-2022.

Dr. Gaurav Makwana Dr. Rajesh Kumar Chakrawarti


Project Guide Project Coordinator

Dr. Anand Rajavat


Director And Head,
Department Of Computer Science & Engineering

III
ACKNOWLEDGEMENT

We are grateful to a number of persons for their advice and support during the time of complete
our project work. First and foremost, our thanks go to Dr. Anand Rajavat Head of the
Department of Computer Science & Engineering and Dr. Gaurav Makwana the mentor of our
project for providing us valuable support and necessary help whenever required and also helping
us explore new technologies by the help of their technical expertise. His direction, supervision
and constructive criticism were indeed the source of inspiration for us.

We would also like to express our sincere gratitude towards our Director Dr. Anand Rajavat
for providing us valuable support.

We are really indebted to Dr. Rajesh Kumar Chakrawarti, project coordinator for helping us
in each aspect of our academic’s activities. We also owe our sincere thanks to all the faculty
members of the Computer Science & Engineering Department who have always been helpful.

We forward our sincere thanks to all teaching and non-teaching staff of the Computer Science
& Engineering department, SVVV Indore, for providing necessary information and their kind
co-operation.

We would like to thank our parents and family members, our classmates and our friends for their
motivation and their valuable suggestions during the project. Last, but not the least, we thank all
those people who have helped us directly or indirectly in accomplishing this work. It has been a
privilege to study at SHRI VAISHNAV VIDYAPEETH VISHWAVIDYALAYA, INDORE.

IV
ABSTRACT

Attendance; One of the most important aspects for maintaining discipline in an


industry. It’s not only a part and parcel of a student’s life, but also plays a very important
role for society at large. We see attendance being taken in schools, colleges, industries,
businesses etc. Taking attendance is not just a cumbersome and hectic job for the person,
but also consumes a lot of time. One may think that what’s wrong in 10 to 15 minutes of
attendance, but when we add up the digits it’s a huge amount of time which could have
been spent on a productive job. When this manual and unproductive attendance system
consumes this much time, People started thinking for better and effective alternatives for
this process. That’s where fingerprint readers and facial Recognition processes came
into consideration.
Fingerprint readers also do the same job, but it comes with their set of pros and
cons. Same goes for other technologies.
This whole situation gave us an idea to implement such technology, which not only
solves this problem effectively, but also creates a huge benefit for society at large. Facial
recognition-based attendance system essentially is an approach for all those industries,
schools, universities and businesses who are wanting to upgrade to a modern way of
efficient and time saving system, which would make life easier and increase the overall
productivity in the organization.

V
LIST OF FIGURES

Sr. Figure Name of Figure Page


No. No.
1 2.1 68-point facial landmark detection 7

2 3.1 Flow Chart Depicting the Flow of 10


Model
3 4.1.1 Use Case Diagram 12

4 4.2.1 0 level DFD 13

5 4.2.2 1 level DFD 14

6 4.2.3 2 level DFD 14

7 5.1.1 Detailed class diagram 15

8 5.2.1 Sequence Diagram 16

9 5.3.1 State Chart Diagram 16

10 5.4.1 Activity Diagram 17

11 A.1.1 Appendix (Dialog box) 22

12 A.1.2 Appendix (Registration dialog box) 23

13 A.1.3 Appendix (Final recognition output) 24

14 A.1.4 Appendix (Excel Sheet for 25


Attendance)

VI
TABLE OF CONTENT

Declaration I
Project approval sheet II
Certificate III
Acknowledgement Abstract IV
List of Figures V

Chapter 1- Introduction 1-3


1.1 Introduction 1
1.2 Problem Statement
1.3 Need for the proper system 1-2
1.4 Objective 2
1.5 Modules of the system 2
1.6 Scope 2-3

4-9
CHAPTER 2- LITERATURE
SURVEY 4
4-8
2.1 Existing system
2.2 Proposed system 5
2.2.1 Proposed system 8-9
components 9
2.3 Feasibility study
2.3.1 Technical Feasibility 9
2.3.2 Economic Feasibility 9
2.3.3 Operational Feasibility

10-11
CHAPTER 3- REQUIREMENT
ANALYSIS 10
10-11
3.1 Functional Requirements
11
3.2 Non-Functional
Requirements 11
3.3 System Specifications 11
3.4 Technologies
3.5 Hardware
12-14
CHAPTER 4-DESIGN
12
4.1 Use case model
4.2 Data flow diagram 12-14
VII
15-18
CHAPTER 5- SYSTEM
MODELING 15
15-16
5.1 Detailed class diagram
5.2 Interaction diagrams 15-16
5.2.1 Sequence diagrams 16
5.3 State chart 16-17
5.4 Activity Diagram 17-18
5.5 Testing

19
CHAPTER 6- CONCLUSION
AND FUTURE WORK 19
19
6.1 Limitations of project
6.2 Future Enhancement

References 20
Appendix 21-24

VIII
CHAPTER 1- INTRODUCTION

1.1 Introduction
Introducing Facial Recognition-based Attendance System, a smart and efficient way of taking
attendance in any organization which takes attendance. The system is being developed in such a
way that, be it in a classroom or an office, attendance happens quickly and easily. Attendance,
which sometimes becomes a headache for the organization, cannot be any easy if it detects and
records the faces of the People. It raises the overall productivity of the company and makes them
focus on their real job.

Python, which is one of the highly recommended and popular languages in the field of AI
and Machine Learning, is being used as the core in this project. The technology is planned to have
an AI-based system which automatically recognizes a person’s face using various advanced
Machine learning algorithms and records it into the server corresponding to that person’s record.

The database would already have all the facial records of the registered people (employees,
students, etc.), it would use this technology to figure out whose face it is and update the record as
quickly and efficiently as possible.

This would be quicker than the traditional approach of manually updating sheets or
databases. We will be focusing, in this project, to increase the overall accuracy of facial recognition
which is also economical for large-scale deployment and more effective than what is currently
available in the market. This way it would be easy to popularize in Schools and companies with a
budget.

1.2 Problem Statement

Usually, in organizations, the attendance of the employees or students is taken manually, which
has been an approach for centuries, but modern computation gives us an opportunity to resolve
that hectic process and scale it down for more efficiency. The problems with the traditional
attendance process are as follows:

• Manual Processes are tedious and time-consuming.

1
• The current system is not trustworthy as somebody can alter the attendance sheet or put a
proxy which questions the accuracy of the sheet.
• It is prone to human errors as anybody can accidentally put inaccurate attendance in case
of miscommunication.
• Loss of Records can occur as it is a time and space-consuming process to store all the
previous attendance data, further the attendance sheet might also get destroyed or lost.
• It can be a potential Covid19 carrier in the case of technologies like the fingerprint reader,
which requires a modern and healthy approach to the solution of the Problem.

The objective of the proposed system is to capture the face of each student and to store it in
the database for their attendance.

1.3 Need for the proper system


I. Reduces manual effort

Since the entire process is automated, the need for human intervention is minimal. So, there is no
need for added staff to do this work manually. It lowers the cost while increasing operational
effectiveness.

II. Error-free and accurate

Accuracy of the data is the critical factor in these systems. The most common problem in
organizations is time management and keeping an eye on the arrivals and departments of each
employee. Hence, this system comes to the rescue by keeping accurate time and attendance. Face
recognition-based attendance system project reports are more accurate and error-free since the
tracking is done in real-time.

III. Automated Time Tracking System

With facial recognition attendance systems, entry and exit tracking can be fully automated. The
system’s advanced algorithms can locate and identify faces without human intervention or
physical validation. Using facial recognition, tracking employee time is a breeze.

IV. Security

A major advantage of the Facial Recognition System is the increased authenticity and security it
offers. When facial recognition technology is installed around a company’s premises, it makes it
easier to identify authorized personnel and grants access only to them.

2
1.4 Objective
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 the existing 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.

1.5 Modules of the system


• Admin- This module is responsible for storing pre-stored or pre –captured images in
databases which will help directly enable user to mark his or her attendance if his or her
image is already stored in it.
• User- This module is responsible for capturing real-time images which will further store
for future references

1.6 Scope
Facial recognition is becoming more prominent in our society. It has made major progress in the
field of security. It is a very effective tool that can help low enforcers to recognize criminals and
software companies are leveraging the technology to help users access the technology. This
technology can be further developed to be used in other avenues such as ATMs, accessing
confidential files, or other sensitive materials. This project servers as a foundation for future
projects based on facial detection and recognition. This project also convers web development and
database management with a user-friendly UI. Using this system any corporate offices, school and
organization can replace their traditional way of maintaining attendance of the employees and can
also generate their availability(presence) report throughout the month.

3
CHAPTER 2- LITERATURE SURVEY

2.1 EXISTING SYSTEM


1. Fingerprint Based recognition system:

In the Fingerprint based existing attendance system, a portable fingerprint device needs to be
configured with the students fingerprint earlier. Later, either during the lecture hours or before, the
student needs to record the fingerprint on the configured device to ensure their attendance for the
day. The problem with this approach is that during lecture time it may distract the attention of the
students.

2. RFID (Radio Frequency Identification) Based recognition system:

In the RFID based existing system, the student needs to carry a Radio Frequency Identity Card
with them and place the ID on the card reader to record their presence for the day. The system can
connect to RS232 and record the attendance to the saved database. There are possibilities that
fraudulent access to it may occur. Some are students may make use of other students ID to ensure
their presence when the student is absent, or they even try to misuse it sometimes.

3. Iris Based Recognition System:

In the Iris based student attendance system, the student needs to stand in front of a camera, so that
the camera will scan the Iris of the student. The scanned iris is matched with data of students stored
in the database and the attendance on their presence needs be updated. This reduces the paper and
pen workload of the faculty members of the institute. This also reduces the chances of proxies in
the class and helps in maintaining the student records safe. It is a wireless biometric technique that
solves the problem of spurious attendance and the trouble of laying the corresponding network.

2.2 Proposed System


The task of the proposed system is to capture the face of each student and to store it in the database
for their attendance. The face of the student needs to be captured in such a manner that all the
features of the student's face need to be detected, even the seating and the posture of the student
need to be recognized. There is no need for the teacher to manually take attendance in the class

4
because the system captures a photo and through further processing steps the face is being
recognized and the attendance database is updated.
To overcome the problems in the existing attendance system we shall develop a Biometric
based attendance system over simple attendance system. There are many solutions to automate the
attendance management system like thumb-based system, simple computerized attendance system,
Iris scanner, but all these systems have limitations overwork and security point of view. Our
proposed system shall be a “Face Recognition Attendance System” which uses the basic idea of
image processing, which is used in many security applications like banks, airports, Intelligence
agencies etc.

2.2.1 Proposed System Components

The following are the main components of the proposed system:


1. Student Registration
2. Face Detection
3. Face Recognition
o Feature Extraction
o Feature Classification
4. Attendance management system.
o Automated Attendance marking
o Manual Attendance marking
o Attendance details of users

Implementation of Proposed System:

The whole process begins with marking up the facial landmark of one’s face.
Facial landmarks are used to localize and represent salient regions of the face, such as:
• Eyes
• Eyebrows
• Nose
• Mouth
• Jawline
Facial landmarks have been successfully applied to face alignment, head pose estimation, face
swapping, blink detection and much more.

Detecting facial landmarks is a subset of the shape prediction problem. Given an input
image (and normally an ROI that specifies the object of interest), a shape predictor attempts to
5
localize key points of interest along the shape. In the context of facial landmarks, our goal is to
detect important facial structures on the face using shape prediction methods.

Detecting facial landmarks is therefore a two-step process:

• Step #1: Localize the face in the image.


• Step #2: Detect the key facial structures on the face ROI(Region Of Interest).

We may apply a pre-trained HOG + Linear SVM object detector specifically for the task of face
detection or we can even use deep learning-based algorithms for face localization. In either case,
the actual algorithm used to detect the face in the image doesn’t matter. Instead, what’s important
is that through some method we obtain the face bounding box (i.e., the (x, y)-coordinates of the
face in the image).

Given the face region we can then apply Step #2: detecting key facial structures in the face
region. There are a variety of facial landmark detectors, but all methods essentially try to localize
and label the following facial regions:

• Mouth
• Right eyebrow
• Left eyebrow
• Right eye
• Left eye
• Nose
• Jaw

The facial landmark detector included in the dlib library is an implementation of the One
Millisecond Face Alignment with an Ensemble of Regression Trees paper by Kazemi and
Sullivan (2014).

This method starts by using:


1. A training set of labeled facial landmarks on an image. These images are manually
labeled, specifying specific (x, y)-coordinates of regions surrounding each facial
structure.
2. Priors, more specifically, the probability on distance between pairs of input pixels.

Given this training data, an ensemble of regression trees are trained to estimate the facial
landmark positions directly from the pixel intensities themselves (i.e., no “feature extraction” is
taking place).
6
The end result is a facial landmark detector that can be used to detect facial landmarks
in real-time with high quality predictions.

Understanding dlib’s facial landmark detector:

The pre-trained facial landmark detector inside the dlib library is used to estimate the location
of 68 (x, y)-coordinates that map to facial structures on the face.

The indexes of the 68 coordinates can be visualized on the image below:

Figure 2.1: 68-point facial landmark detection model coordinates from the iBUG 300-W dataset

These annotations are part of the 68 point iBUG 300-W dataset which the dlib facial landmark
predictor was trained on.
Regardless of which dataset is used, the same dlib framework can be leveraged to train a
shape predictor on the input training data. In order to detect faces/humans/objects in OpenCV
(and remove the false positives), we spend a lot of time tuning the cv2.detectMultiScale
parameters. We have object detection using key points, local invariant descriptors, and bag-of-
visual-words models. We have Histogram of Oriented Gradients. We have deformable parts
models. Exemplar models.
All that said, even though the Histogram of Oriented Gradients descriptor for object
recognition is nearly a decade old, it is still heavily used today — and with fantastic results. The
Histogram of Oriented Gradients method suggested by Dalal and Triggs in their seminal 2005
paper, Histogram of Oriented Gradients for Human Detection demonstrated that the Histogram

7
of Oriented Gradients (HOG) image descriptor and a Linear Support Vector Machine (SVM)
could be used to train highly accurate object classifiers — or in their particular study, human
detectors.

Working of HOG and SVM:

Step 1:

Sample P positive samples from our training data of the object(s) we want to detect and extract
HOG descriptors from these samples.

Step 2:

Sample N negative samples from a negative training set that does not contain any of the objects
we want to detect and extract HOG descriptors from these samples as well. In practice N >> P.

Step 3:

Train a Linear Support Vector Machine on our positive and negative samples.

Step 4:

Apply hard-negative mining. For each image and each possible scale of each image in our
negative training set, we apply the sliding window technique and slide our window across the
image. At each window compute the HOG descriptors and apply our classifier. If classifier
(incorrectly) classifies a given window as an object (and it will, there will absolutely be false-
positives), we record the feature vector associated with the false-positive patch along with the
probability of the classification. This approach is called hard-negative mining.

Step 5:

Take the false-positive samples found during the hard-negative mining stage, sort them by their
confidence (i.e. probability) and re-train the classifier using these hard-negative samples. (Note:
We can iteratively apply steps 4-5, but in practice one stage of hard-negative mining usually [not
always] tends to be enough. The gains in accuracy on subsequent runs of hard-negative mining
tend to be minimal.)

Step 6:

Furthermore:

• We train a Linear Support Vector Machine for our positive and negative samples.
• For each image and each possible scale of image in negative training set, we apply the
sliding window technique and slide the window across image.

8
• This way the classifier is trained and applied to the test dataset

2.3 Feasibility Study

2.3.1 Technical Feasibility

Technical feasibility is carried out to determine whether the project is feasible in terms of software,
hardware, personnel, and expertise, to handle the completion of the project. It considers
determining resources for the proposed system. As the system is developed using python, it is
platform independent. Therefore, the users of the system can have average processing capabilities,
running on any platform. The technology is one of the latest hence the system is also technically
feasible.

2.3.2 Economical Feasibility

Economic feasibility defines whether the expected benefit equals or exceeds the expected costs. It
is also commonly referred to as cost/benefit analysis. The procedure is to determine the benefits
and the savings expected from the system and compare them with the costs. The proposed system
is expected to outweigh the costs. This is a small project with no cost for development. The system
is easy to understand and use. Therefore, there is no need to spend on training to use the system.
This system has the potential to grow by adding functionalities for students as well as teachers.
This can Hence, the project could have economic benefits in the future.

2.3.3 Operational Feasibility

Operational feasibility is the measure of how well a proposed system solves the problems with the
users. Operational feasibility is dependent on human resources available for the project and
involves projecting whether the system will be used if it is developed and implemented. The
project is operationally feasible for the users as nowadays all the teachers/staff are familiar with
digital technology.

9
CHAPTER 3 – REQUIREMENTS ANALYSIS

3.1 Functional Requirements


• Faces on an image must be detected.
• Compute the total attendance based on detected faces.
• Store the cropped faces in a folder.
• Train faces for recognition.
• Display the name of the output image down the image in the screen.

3.2 Non-Functional Requirements


Non-Functional Requirements are the characteristics or attributes of the system that are
necessary for the smooth operation of the system. Those requirements are listed below:
• The user will inform the students when taking a photo with clear instructions on how to
position their faces.
• The system is reliable because of the advanced technology that is used to develop the
system.
• The system will have a response time of many seconds.

Figure 3.1 Flow Chart Depicting the Flow of Model


• The camera will capture the face of the person standing in front of it and the image would
be enhanced.
• Then a face would be detected, and it would be mapped against the available data.

10
• It will check against the images that were stored in the database and if the face matches
with the face from the database, it will recognize it
• After successful facial recognition, the attendance of the person would be stored for that
day along with the timings.

3.3 System Specification


A system specification describes the operational and performance requirements of a system, such
as a computer.

It is considered a high-level document that dictates global functions.


3.3.1 Technologies
• Python
• OpenCV
• HOG&SVM
• tkinter
3.3.2 Hardware Requirements
• A standalone computer (i3 5th generation, 8gb ram or higher)
• High quality Wireless Camera to capture images
• Secondary memory to store all images and database

11
CHAPTER 4 – DESIGN

Design is the first step in the development phase for any techniques and principles for the purpose
of defining a device, a process or system in sufficient detail to permit its physical realization.
Once the software requirements have been analyzed and specified the software design
involves three technical activities - design, coding, implementation, and testing that are required
to build and verify the software.
Design activities are of main importance in this phase, because in this activity, decisions
affecting the success of the software implementation and its ease of maintenance are made. These
decisions have the final bearing upon reliability and maintainability of the system. Design is the
only way to accurately translate the customer ‘s requirements into finished software or a system.

4.1 Use case model


Following are the purposes of a use case diagram given below:
• It gathers the system's needs.
• It depicts the external view of the system.
• It recognizes the internal as well as external factors that influence the system.
• It represents the interaction between the actors.

Figure 4.1.1 Use Case

12
4.2 Data Flow Diagram
Levels or layers are used in DFDs to represent progressive degrees of detail about the system or
process. These levels include:
Level 0: Also known as a "context diagram," this is the highest level and represents an amazingly
simple, top-level view of the system being represented.
Level 1: Still a broad view of the system but incorporates subprocesses and more detail.
Level 2: Provides even more detail and continues to break down subprocesses as needed.

1. 0 LEVEL DFD

Figure 4.2.1 0-Level DFD

2. 1- LEVEL DFD

Figure 4.2.2 1-Level DFD


13
3. 2-LEVEL DFD

Figure 4.2.3 2-Level DFD

14
CHAPTER 5 – SYSTEM MODELING

5.1 Detailed Class Diagram


The purpose of the class diagram can be summarized as −
• Analysis and design of the static view of an application.
• Describe responsibilities of a system.
• Base for component and deployment diagrams.
• Forward and reverse engineering.

Figure 5.1.1 Detailed Class Diagram

5.2 Interaction Diagrams

5.2.1 Sequence Diagram

• Used to model and visualize the logic behind a sophisticated function, operation or
procedure.
• They are also used to show details of UML use case diagrams.

15
• Used to understand the detailed functionality of current or future systems.
• Visualize how messages and tasks move between objects or components in a system.

Figure 5.2.1 Sequence Diagram

5.3 State Chart


• We use it to state the events responsible for change in state (we do not show what processes
cause those events).
• We use it to model the dynamic behavior of the system .
• To understand the reaction of objects/classes to internal or external stimuli.

Figure 5.3.1 State Chart Diagram

16
5.4 Activity Diagram

The purpose of an activity diagram can be described as −

• Draw the activity flow of a system.


• Describe the sequence from one activity to another.
• Describe the parallel, branched, and concurrent flow of the system.

Figure 5.4.1 Activity Diagram

5.5 Testing

In general, software engineers distinguish software faults from software failures. In case of a
failure, the software does not do what the user expects. A fault is a programming error that may or
may not actually manifest as a failure. A fault can also be described as an error in the correctness
of the semantic of a computer program. A fault will become a failure if the exact computation
conditions are met, one of them being that the faulty portion of computer software executes on the
CPU. A fault can also turn into a failure when the software is ported to a different hardware
platform or a different compiler, or when the software gets extended. Software testing is the
technical investigation of the product under test to provide stakeholders with quality related
information.

Testing Plan:

The testing plan includes planning for several functions like:

• Registration of students
• Face detection

17
• Image Capturing
• Captured Image Viewing
• Face recognition from registered database
• Attendance entry in Excel sheet

Considering the scope of the project and the time limitations, we performed the following tests:
a) Unit Test – This test verifies the program logic and is based on the knowledge of the program
structure.
b) Integration Test – This test verifies the entire system’s functionality according to the design
specification.
c) Business Requirements – This test verifies whether the specific requirements of the customer
are met.
d) Acceptance Testing – This test verifies whether the system needs to meet the initial objectives
and customer’s expectations.

18
CHAPTER 6 – CONCLUSION & FUTURE WORK

6.1 Limitation of project


• Attendance can be marked if the picture of an employee is shown
• Costly as it requires high-end CPU and GPU for better accuracy and fast detection
• Difficulty with bigdata processing and storing images without efficient GPU and RAM

6.2 Future Enhancement

• It has an immensely boundless scope in future. It can be amended as and when a


requirement emerges, as it is versatile in terms of the extension. There are some facets
which can be further modified such as recognized distance can be extended, Graphics
processing unit (GPU) can be used for a large amount of the database and quick processing,
data storage can be made server-based and can be integrated with multiple cameras at the
same time.
• An automated Attendance System can be implemented in larger areas like in a seminar hall
where it helps in sensing the presence of many people.
• Sometimes the poor lighting condition of the classroom may affect image quality which
indirectly degrades system performance, this can be overcome in the latter stage by
improving the quality of the video or by using some algorithms

6.3 Conclusion

This system aims to build an effective class attendance system using face recognition
techniques. The proposed system will be able to mark the attendance via face Id. It will
detect faces via webcam and then recognize the faces. After recognition, it will mark the
attendance of the recognized student and update the attendance record in the sheet.

19
REFERENCES

1. Roger S, “Software Engineering: A Practitioner's Approach” publisher McGraw Hill,


Ed. 7th, pp. 30-38.

2. “Software Engineering” publisher Pearson Education, Ed. 10th, pp.129-138.

3. Python | Multiple Face Recognition Available at:


https://www.geeksforgeeks.org/python-multiple-face-recognition-using-dlib/
(Accessed: 24 July 2020)
4. Facial landmarks with dlib, OpenCV, and Python Available at:
https://pyimagesearch.com/2017/04/03/facial-landmarks-dlib-opencv-
python/https://www.geeksforgeeks.org/python-multiple-face-recognition-using-
dlib/(Accessed: 23 September 2022)
5. OpenCV Python Available
at: https://docs.opencv.org/4.2.0/d6/d00/tutorial_py_root.html(Accessed: 21
September 2022)
6. P. Asmitha and T. Sunitha, "Student Attendance using Face Recognition
Technology," 2022 International Conference on Intelligent Controller and
Computing for Smart Power (ICICCSP), 2022, pp. 1-4, doi:
10.1109/ICICCSP53532.2022.9862329.
7. S. Dev and T. Patnaik, "Student Attendance System using Face Recognition," 2020
International Conference on Smart Electronics and Communication (ICOSEC),
2020, pp. 90-96, doi: 10.1109/ICOSEC49089.2020.9215441.

21
APPENDIX

Figure A.1.1 Dialog Box

This dialog box represents various functions like

• Enter id
• Click for image
• Start Marking

22
Figure A.1.2 Registration Dialog Box

• This dialog box will appear when user click on enter id to enter his or her id.

22
Figure A.1.3 Final Recognition Output

• This is the final output where the face is detected

23
Figure A.1.4 Excel Sheet for Attendance

• The Attendance as shown in the excel sheet after getting marked.

24

You might also like