MAJORPROJECT1

Download as pdf or txt
Download as pdf or txt
You are on page 1of 4

Facial Recognition Attendance System Using Python and OpenCv

SYNOPSIS FOR MAJOR PROJECT

BACHELOR OF TECHNOLOGY
CSE

BATCH :- 2023-24

SUBMITTED BY

KARTIKEY SINGH RAJPOOT (2000350100013)


DEEPENDRA CHAURSIYA (2000350100006)
NAVNEET MISHRA (2000350100016)

SUBMITTED TO

UDAY ARUN

BABU BANARSI DAS INSTITUTE OF TECHNOLOGY


GHAZIABAD
I. INTRODUCTION

This is a project about Facial Recognition-Based Attendance System for Educational Institutions. In this
chapter, the problem and motivation, research objectives, project scope, project contributions and the background
information of the project will be discussed in detail.

1.1 Problem Statement and Motivation


According to the previous attendance management system, the accuracy of the datacollected is the biggest issue.
This is because the attendance might not be recorded personally by the original person, in another word, the
attendance of a particular person can be taken by a third party without the realization of the institution which
violates the accuracy of the data. For example, student A is lazy to attend a particular class, so student B helped
him/her to sign for the attendance which in fact student A didn‟t attend the class, but the system overlooked this
matter due to no enforcement practiced. Supposing the institution establish an enforcement, it might need to waste
a lot of human resource and time which in turn will not be practical at all. Thus, all the recorded attendance in the
previous system is not reliable for analysis usage. The second problem of the previous system is where it is too
time consuming. Assuming the time taken for a student to sign his/her attendance on a 3-4 paged name list is
approximately 1 minute. In 1 hour, only approximately 60 students can sign their attendance which is obviously
inefficient and time consuming. The third issue is with the accessibility of those information by the legitimate
concerned party. For an example, most of the parents are very concerned to track their child‟s actual whereabouts
to ensure their kid really attend the classes in college/school. However in the previous system, there are no ways
for the parents to access such information. Therefore, evolution is needed to be done to the previous system to
improve efficiency, data accuracy and provides accessibility to the information for those legitimate party.

The following are objectives of the project:


▪ To develop a portable Smart Attendance System which is handy and self-powered.
▪ To ensure the speed of the attendance recording process is faster than the previous system which can go as fast
as approximately 3 second for each student.
▪ Have enough memory space to store the database.
▪Able to recognize the face of an individual accurately based on the face database.

1.2 Project Scope and Direction


The main intention of this project is to solve the issues encountered in the old attendance system while
reproducing a brand new innovative smart system that can provide convenience to the institution. In this project,
an application will be developed which is capable of recognising the identity of each individuals and eventually
record down the data into a database system. Apart from that, an excel sheet is created which shows the students
attendance and is directly mailed to the respected faculty.

II. LITERATURE

2.1 Face Recognition Based Attendance Marking System

The second research journals “Face Recognition Based Attendance Marking System” (SenthamilSelvi,
Chitrakala, Antony Jenitha, 2014) is based on the identification of face recognition to solve the previous attendance
system‟s issues. This system uses camera to capture the images of the employee to do face detection and
recognition. The captured image is compared one by one with the face database to search for the worker‟s face
where attendance will be marked when a result is found in the face database. The main advantage of this system
is where attendance is marked on the server which is highly secure where no one can mark the attendance of other.
Moreover, in this proposed system, the face detection algorithm is improved by using the skin classification
technique to increase the accuracy of the detection process. Although more efforts are invested in the accuracy of
the face detection algorithm, the system is yet not portable. This system requires a standalone computer which
will need a constant power supply that makes it not portable. This type of system is only suitable for marking
staff‟s attendance as they only need to report their presence once a day, unlike students which require to report
their attendance at every class on a particular day, it will be inconvenient if the attendance marking system is not
portable. Thus, to solve this issue, the whole attendance management system can be developed on an portable
module so that it can be work just by executing the python program.

III. SYSTEM DESIGN

The design part of the attendance monitoring system is divided into two sections which consist of the hardware
and the software part. Before the software The design part can be developed, the hardware part is first completed
to provide a platform for the software to work. Before the software part we need to install some libraries for
effective working of the application. We install OpenCV and Numpythrough Python.

3.1 Hardware Development


• Camera Module with good mega pixels.
• Power Supply Cable
• 16Gb Micro SD Card Class 10

3.2 Libraries Development


“3.2.1 OpenCV”
OpenCV (Open source computer vision) is a library of programming functions mainly aimed at real-time computer
vision.
The OpenCV project was initially an Intel Research initiative to advance CPU-intensive applications, part of a
series of projects including real-time raytracing and 3Ddisplay walls. The main contributors to the project included
several optimization experts in Intel Russia, as well as Intel's Performance Library Team.

In the early days of OpenCV, the goals of the project were described as:
• Advance vision research by providing not only open but also optimized code for basic vision infrastructure.
No more reinventing the wheel.
• Disseminatevision knowledge by providing a common infrastructure that developers could build on, so that
code would be more readily readable and transferable.
• Advance vision-based commercial applications by making portable, performance-optimized code available
for free – with a license that did not require code to be open or free itself.

Programming Language:
There are bindings in Python, OpenCV.js is a JavaScript binding for selected subset of OpenCV functions for the
web platform.

Operating System Support:


All of the new developments and algorithms in OpenCV runs on the following desktop operating systems:
Windows

“3.2.2 NumPy”
NumPy is a package that defines a multi-dimensional array object and associated fast math functions that operate
on it. It also provides simple routines for linear algebra and fft and sophisticated random-number generation.
NumPy replaces both Numeric and Numarray.

IV. SOFTWARE DEVELOPMENT

There are two major system flows in the software development section as shown below:
• The creation of the face database
• The process of attendance taking
Both processes mentioned above are essential because they made up the backbone of the attendance management
system. In this section, the process of both flows will be briefly described. Meanwhile, their full functionality,
specific requirements and also the methods/approach to accomplish such objectives will be discussed in the
upcoming chapter.

The face database is an important step to be done before any further process can be initiated. This is because the
face database acts as a comparison factor during the recognition process which will be discussed in later section.
In the process above, a csv file is created to aid the process of image labelling because there will be more than
one portrait stored for each student, thus, in order to group their portraits under the name of the same person,
labels are used to distinguish them. After that, those images will be inserted into a recognizer to do its training.
Since the training process is very time consuming as the face database grew larger, the training is only done
right after there is a batch of new addition of student‟s portraits to ensure the training is done as minimum as
possible.

V. METHODOLOGY

Before the attendance management system can work, there are a set of data needed to be inputted into the system
which essentially consist of the individual‟s basic information which is their ID and their faces. The first procedure
of portrait acquisition can be done by using the Camera to capture the faces of the individual. In this process the
system will first detect the presence of a face in the captured image, if there are no face detected, the system will
prompt the user to capture their face again until it meets certain number of portraits which will be 10 required
portraits in this project for each student. The decision of storing only 10 portrait per student is due to the
consideration of the limited storage space in the raspberry pi because the total amount of students in the university
is considered heavy. Then, the images will undergo several pre-processing procedures to obtain a grayscale image
and cropped faces of equal sized images because those are the prerequisites of using the EigenFaces Recognizer.
Both of the processes mentioned above can be represented in the diagram below.

Image Acquisition and Pre-processing procedures


After the images are being processed, they are stored into a file in a hierarchy manner. In this project, all the faces
will be stored in a hierarchy manner under the „database‟ folder. When expanding through the database folder,
there will consist of many sub-folders which each of them will represent an individual where a series of face
portrait belonging to the same individual will be stored in that particular sub-folder. The subfolders that represent

VI. CONCLUSION

Before the development of this project. There are many loopholes in the process of taking attendance using the
old method which caused many troubles to most of the institutions. Therefore, the facial recognition feature
embedded in the attendance monitoring system can not only ensure attendance to be taken accurately and also
eliminated the flaws in the previous system. By using technology to conquer the defects cannot merely save
resources but also reduces human intervention in the whole process by handling all the complicated task to the
machine. The only cost to this solution is to have sufficient space in to store all the faces into the database storage.
Fortunately, there is such existence of micro SD that can compensate with the volume of the data. In this project,
the face database is successfully built. Apart from that, the face recognizing system is also working well.

You might also like