Qureshi Taha Documentation

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

PROFORMA FOR THE APPROVAL PROJECT PROPOSAL

(Note: All entries of the proforma of approval should be filled up with appropriate
and complete information. Incomplete proforma of approval in any respect will
be summarily rejected.)

PNR No: …………………… Roll no: 344

1. Name of the Student

Qureshi Mohammed Taha

1. Title of the Project

Face Detection Attendance System

2. Name of the Guide

Saima Shaikh

3. Teaching experience of the Guide

4. Is this your first submission? Yes No

Signature of the Student Signature of the Guide

Date:………………… Date: …………………….

Signature of the
Coordinator Date:
…………………
Face Detection Attendance System
A Project Report
Submitted in partial fulfillment of the
Requirements for the award of the Degree of

BACHELOR OF SCIENCE (INFORMATION TECHNOLOGY)


By

Qureshi Mohammed Taha


Seat No- 344
Under the esteemed guidance of
Mrs. SAIMA SHAIKH
HEAD OF IT AND CS DEPARTMENT

DEPARTMENT OF INFORMATION TECHNOLOGY


MAHARASHTRA COLLEGE OF ARTS SCIENCE
AND COMMERCE
(Affiliated to University of Mumbai)
MUMBAI 400011 MAHARASHTRA
YEAR (2020-2021)
MAHARASHTRA COLLEGE OF ARTS SCIENCE
AND COMMERCE
(Affiliated to University of Mumbai)
MUMBAI-MAHARASHTRA-400011

DEPARTMENT OF INFORMATION TECHNOLOGY

CERTIFICATE

This is to certify that the project entitled, "FACE DETECTION ATTENDANCE SYSTEM ",
Is bonafied work of Qureshi Taha bearing Seat No: 344 submitted in partial fulfillment of the
requirements for the award of degree of BACHELOR OF SCIENCE in INFORMATION
TECHNOLOGY from University of Mumbai.

Internal Guide Coordinator

External Examiner

Date: CollegeSeal
DECLARATION

I hereby declare that the project entitled, “FACE DETECTION ATTENDANCE SYSTEM” done at place
where the project is done, has not been in any case duplicated to submit to any other university for the
award of any degree. To the best of my knowledge other than me, no one has submitted to any other
university.
The project is done in partial fulfillment of the requirements for the award of degree of
BACHELOR OF SCIENCE (INFORMATION TECHNOLOGY) to be submitted
As final semester project as part of our curriculum.

Name and Signature of the Student


ABSTRACT
 The face is one of the easiest ways to distinguish the individual identity
of each other. FACE DETECTION ATTENDANCE SYSTEM uses personal
characteristics of a person to identify the person's identity. Human face
recognition procedure basically consists of two phases, namely face
detection, where this process takes place very rapidly in humans, except
under conditions where the object is located at a short distance away, the
next is the introduction, which recognize a face as individuals. Stage is then
replicated and developed as a model for facial image recognition (face
recognition) is one of the much-studied biometrics technologies and
developed by experts. There are many types of Attendance Systems
available in market some of them uses fingerprint scanner and some
advance system uses retina scanner but it is not easy to access fast in more
crowded area like school, colleges and offices. So the solution is Face
Detection one camera can easily attend 3-4 persons in a second it means it
can make attendance of a class within a minute without making any extra
efforts. The software requirement for this project is OpenCV OCR Tesseract
and Python 3.6 and above There are vast number of applications from this
face detection project, this project can be extended that the various parts in
the face can be detect which are in various directions and shapes.
ACKNOWLEDGEMENT

I undersigned, have great pleasure in giving my sincere thanks to those who have
contributed their valuable time in helping me to achieve the success in my project work.
My heartfelt thanks to the Principle of the College Prof. SIRAJUDDIN CHOUGLE and
the IT department of College for helping in the project with words of encouragement and
has shown full confidence in our abilities.

I would to express my sincere thanks to Prof. SAIMA SHAIKH head of


Department for her constant encouragement, which made this project a success. I am
indebted and thankful to our project Guide, SAIMA SHAIKH to whom I own piece of
knowledge for her valuable and timely guidance, co-operation encouragement and time
spent for this project work .I would also like to thanks our IT staff for providing us
sufficient information, which helped us to complete our project successfully.

I also thank my PARENT and all my Family Member for their support, without
their support this project would not be possible.
SR.NO TITLE PAGE NO.
1. Introduction –
1.1 Background 09
1.2 Objective 09
1.3 Purpose And Scope 10
1.3.1 Purpose
1.3.2 Scope
1.3.3 Technology Used 14
2. System Analysis–
2.1 Existing System Proposed 12
2.2 System Requirement 13
2.3 Analysis Hardware 13
2.4 Requirement Software 13
2.5 Requirement 13
2.6 Justification Of Selection Of Technology Gantt 14
2.7 Chart 15
3. System Design –
3.1 Module Division 16
3.2 Data Dictionary 16
3.3 ER Diagram 17
3.4 Use case Diagram 22
3.5 Dataflow Diagram 24
3.6 Activity Diagram 26
3.7 Sequence Diagram 29
3.8 Object Diagram 30
4. Implementation And Testing –
4.2 Code 31
4.1 Testing Approach 31
4.1.1 Unit Testing 32
4.1.2 Integration System 33
4.1.3 System Testing 33
INTRODUCTION

Face Detection Attendance System (FDAS) is the product Of Musafir Security


System It Is Used for Taking Automatic Attendance While Entering in the
premises by detecting the facial credential, On the other hand It Detects If Someone
unknown Entered in the premises.

Objective:

 The main objective of the project is to reduce the manual work, paper work of the
department.

 No Need to handle it. It is Automatic so it just need to start one time then it works
on its own.

 Develop accurate & flexible system which will eliminate data redundancy.

 Provides computerized system for saving time & money.

 Less chances of getting confused.

 To reduce the complexity of the study by making the software interactive and easy
to use.

Scope:
 The scope of the project is the system on which the software is installed, i.e. the
project is developed as Computer application, and it will work for a particular
institute or organization. But later on the project can be modified to Centralized
System which can also use as airport security.

 The intention of developing face detection attendance system is to computerized


the tradition way of enhance.
 Another purpose for developing this software is to generate the desired reports
automatically at the end of the session or in the between of the session as they
require.

 This project is basically a desktop application which means self-contained


software runs on the system on which it has been installed under the user control
and it will work for a particular institute or college only.

Purpose:

 The purpose of developing Student Information Corner is to computerized the


tradition way of getting information. Another purpose for developing this software
is to generate the report automatically at the end of the session or in the between of
the session.
 Create Software application to be used in place of old paper based students
Attendance System.
 Use Python and Python Server to create strong and secured database connectivity.
 Incorporate the server software within the code.
 Runtime package and deployment instructions are given.
 This Software can easily install in any machine and it can operate automatically
Just one-time setup is required
 You can also Connect This Software to your CCTV Cameras
 It can also operate Its database remotely and can see attendance from any part of
the world
SYSTEM ANALYSIS

EXISTING SYSTEM:

In the present scenario, the existing system has many drawbacks which
make it inefficient to carry on with also in present scenario student have to
keep themselves updated by going daily college .

 They have to Take attendance Manuall y which is consuming time

 Sometime they missed their attendance due to late or some other reason .

 It is very difficult for every student to mark their attendance at proper


time without wasting their precious time

 Sometime student forget to mark attendance of lectures .

 Student have to make manual attendance or teacher has to take attendance


by himself

 Existing S ystem keep Student away from technology.


PROPOSED SYSTEM :

The main to developed This Software can easily install in any machine and it can
operate automatically just one-time setup and you can save much time without any
distraction.
You can also operate its database remotely and can see attendance from any part of
the world.
This System solve many difficulties for Students and Teachers too

 With the proposed system Admin is able to Add and Remove Student and can
see their attendance records .
 Once student entered into the premises they will automaticall y marked present
for that time

NEED OF THE APPLICATION

The need to develop this project arises because the existing system has fewer features as compared
to the proposed system.
In the propose system all data will be updated fast and with understandable manner.
This System will provide Information regarding to Notice which is one of the important features of
Institute.
HARDWARE REQUIREMENTS:

 64-bit distribution capable of running 32-bit applications


 4 GB RAM minimum, 16 GB RAM recommended
 2 GB of available disk space minimum, 16 GB Recommended
 1280 x 800 minimum screen resolutions.

SOFTWARE REQUIREMENTS:

 SQLITE
 Python 3.6 and above
 OpenCV OCR Tesseract (face credential encoder and decoder)

TECHNOLOGIS:
 SQLITE
 PYTHON
 xml

Operating System:
 Windows
 Mac
 Linux
Justification of Platform

INTRODUCTION TO TECHNOLOGY
The Project is coded in Visual Studio Coad. When it comes to developing great
applications and software for python, it‟s absolutely crucial that the right technology be
used from the beginning. For that reason
You can easily use this software in any device which supports python.
When you use us, you can rest assured that you will be getting great software built with
best practices in mind. We use all of the following technology and much more in bringing
your vision to life and ensuring that it runs smoothly.

Visual Studio Coad

Visual Studio is an “up and coming” IDE that provides a wide variety of different
features. It is emerging as a great alternative to Android Studio that is perfect for certain
kinds of projects. We always centralize your project on the IDE that is correct for it!

Python
You already know Python as one of the most established programming languages when it
comes to developing dynamic content Python is faster and more secure than it is on many
traditional desktop implementations, allowing us to unlock its full power.

OpenCV OCR Tesseract


(Face credential encoder and decoder)

Among Many OCR (Optical Character Recognition) I Found Tesseract is the best for facial
Recognition
SYSTEM DESIGN
MODULE DIVISION:

The system after careful analysis has been identified to be presented with the
following modules and roles.
The modules involved are:
 Admin Page
This module is able to do the following things:
 Add or Remove Students.
 Add Remove or Update Subjects.
 Check Attendance Records

 Students or other staff


 Attendance Setup Page
ENTITY-RELATIONSHIP DIAGRAM:

An entity–relationship model (ER model for short) describes interrelated things of interest in
a specific domain of knowledge. A basic ER model is composed of entity types (which
classify the things of interest) and specifies relationships that can exist between instances of
those entity types.

In software engineering, an ER model is commonly formed to represent things that a business


needs to remember in order to perform business processes. Consequently, the ER model
becomes an abstract data model that defines a data or information structure which can be
implemented in a database, typically a relational database.

Notations used in E-R diagram

It Represents Entity Set.

It Represents Attributes.

It Represent Relationship.

The below diagram shows that there is an Admin


entity with Login Password as its attribute.

Admin

Login
Password
Add
Student
Student
Facial
Student Credential
Name

The above diagram shows that there is an Add


Student entity with Student Name, Student
Facial Credential as its attribute.

Login

Student‟s
Check
Attendance Attendanc
records e

The above diagram shows that there is a Check Attendance entity with
Student’s Attendance Record, Admin Login as its attribute.

Detection Mode

Start
Taking
Attendance

The above diagram shows that there is a Detection Mode entity with Student’s
Start Taking Attendance as its attribute.
COMPLETE E-R DIAGRAM:

Home Page

User Other Staff


Student Type

Admin

Student‟s
Login
Attendance
records

Check
Attendanc Update Subject
e

Add Student

Student
Name Student
Facial
Credential

Detection Mode

Start
Taking
Attendance
Class Diagram

The UML Class diagram is a graphical notation used to construct and visualize object oriented systems. A
class diagram in the Unified Modeling Language (UML) is a type of static structure diagram that describes
the structure of a system by showing the systems:

 classes,
 their attributes,
 operations (or methods),
 And the relationships among objects.

What is a Class?
A Class is a blueprint for an object. Objects and classes go hand in hand. We can't talk about one without
talking about the other. And the entire point of Object-Oriented Design is not about objects, it's about
classes, because we use classes to create objects. So a class describes what an object will be, but it isn't the
object itself.

In fact, classes describe the type of objects, while objects are usable instances of classes. Each Object was
built from the same set of blueprints and therefore contains the same components (properties and
methods). The standard meaning is that an object is an instance of a class and object - Objects have states
and behaviors.

Class Notation
A class represents a concept which encapsulates state (attributes) and behavior (operations). Each
attribute has a type. Each operation has a signature. The class name is the only mandatory information.

Class Name:

 The name of the class appears in the first partition.

Class Attributes:

 Attributes are shown in the second partition.


 The attribute type is shown after the colon.
 Attributes map onto member variables (data members) in code.
Class Operations (Methods):

 Operations are shown in the third partition. They are services the class provides.
 The return type of a method is shown after the colon at the end of the method signature.
 The return type of method parameters are shown after the colon following the parameter name. Operations
map onto class methods in code

Class Visibility

The +, - and # symbols before an attribute and operation name in a class denote the visibility of the
attribute and operation.

 + denotes public attributes or operations


 - denotes private attributes or operations
 # denotes protected attributes or operations
USE CASE DIAGRAM

Actors:
Admin: since the system is used by him

Student: since who used the system.

A use case is a set of scenarios that describing an interaction In the Software. A use
case diagram displays the relationship among actors and use cases. The two main
components of a use case diagram are use cases and actors.

The object-oriented approach uses the term use case to describe an activity the APP carries
out in response model that summaries the information about the actors of cases.
Admin

Check
Login attendance

Add
Student

Student

Start
Attendance

Other
Staff
DATA FLOW DIAGRAM:

A Data Flow Diagram (DFD) is a structured analysis and design tool that can
be used for flowcharting. A DFD is a network that describes the flow of data and the
processes that change or transform the data throughout a system. This network is constructed
by using a set of symbols that do not imply any physical implementation. It has the purpose
of clarifying system requirements and identifying major transformations. So it is the starting
point of the design phase that functionally decomposes the requirements specifications down
to the lowest level of detail. DFD can be considered to an abstraction of the logic of an
information- oriented or a process-oriented system flow-chart. For these reasons DFD„s are
often referred to as logical data flow diagrams.

EXTERNAL ENTITY

An external entity is a source or destination of a data flow. Only those entities which
originate or receive data are represented on a data flow diagram. The symbol used is a
rectangular box.

PROCESS

A process shows a transformation or manipulation of data flow within the system. The
symbol used is an oval shape.

DATAFLOW

The data flow shows the flow of information from a source to its destination. Data flow is
represented by a line, with arrowheads showing the direction of flow. Information always
flows to or from a process and may be written, verbal or electronic. Each data flow may be
referenced by the processes or data stores at its head and tail, or by a description of its
contents.
Take
Attendance

Face Detection
ADMIN Attendance STUDENT
System

Add/Update
Subjects

Add/Update
Student
ACTIVITY DIAGRAM:

Activity diagram are a loosely defined diagram technique for showing workflow of
stepwise and action, with support for choice, iteration and concurrency. An activity diagrams
shows the over control.

Activity diagram is basically a flow chart to represent the flow form one activity to
another form. Activity can be described as an operation of the system.

So, the control floe is drawn from one operation to another. This flow can be
sequential, and concurrent. Activity diagram deals with all type of flow control by using
different elements like fork.

It does not show any message floe form one activity to another. Activity diagram is
considered as the flow chart.

Before drawing an activity diagram, we should identify the following elements:

 Activities
 Association
 Condition
 Constraint
State Transition Diagram

State-transition diagrams describe all of the states that an object can


have, the events under which an object changes state (transitions),
the conditions that must be fulfilled before the transition will occur
(guards), and the activities undertaken during the life of an object
(actions). State-transition diagrams are very useful for describing
the behavior of individual objects over the full set of use cases that
affect those objects. State-transition diagrams are not useful for
describing the collaboration between objects that cause the
transitions.

Admin
Student Added
Add Student

Admin
Subject Added
Add Subject
SEQUENCE DIAGRAM

Sequence diagram demonstrate the behavior of objects in a use case by describing the object
and the messages they pass. The diagrams are read left to right and descending. Sequence
diagram generally show the sequence of events that occur.

A sequence diagram shows how processed operate with one another. Sequence diagram are
also sometime called event trace diagram. A sequence diagram shows parallel vertical lines.
Different processed or object that live simultaneous and a horizontal arrows, the messages
exchange between then, in the order in which they occur.

Sequence diagram emphasizes on time sequence of message on the structural organization of


the objects that send and receive messages.

A sequence diagram shows the sequence of the instruction between the object that occurs
during the flow of event of a single scenario or use case.

The symbols used in the sequence diagram are as follows:

Actor: stick figure representing a role

Object: A rectangle with the name of the object underlined.

Connecting: connecting line to show the direction with the message

above the line.

The lifetime symbol: represented by a line or a narrow vertical rectangle.


STUDENT SEQUENCE DIAGRAM:-

Face Detection
Student Attendance System

Start Detection

Validate Student

Add Student

Get information
Implementation and Testing

Testing Approach
Software testing is defined as an activity to check whether the actual results match the expected results
and to ensure that the software system is Defect free. It involves execution of a software component or
system component to evaluate one or more properties of interest.

Software testing also helps to identify errors, gaps or missing requirements in contrary to the actual
requirements. It can be either done manually or using automated tools. Some prefer saying Software
testing as a White Box and Black Box Testing.

In simple terms, Software Testing means Verification of Application under Test (AUT).

Testing is important because software bugs could be expensive or even dangerous. Software bugs can
potentially cause monetary and human loss, and history is full of such examples.

 In April 2015, Bloomberg terminal in London crashed due to software glitch affected more than
300,000 traders on financial markets. It forced the government to postpone a 3bn pound debt
sale.
 Nissan cars have to recall over 1 million cars from the market due to software failure in the
airbag sensory detectors. There have been reported two accidents due to this software failure.
 Starbucks was forced to close about 60 percent of stores in the U.S and Canada due to software
failure in its POS system. At one point store served coffee for free as they unable to process the
transaction.
 Some of the Amazon‟s third party retailers saw their product price is reduced to 1p due to a
software glitch. They were left with heavy losses.
 Vulnerability in Window 10. This bug enables users to escape from security sandboxes through a
flaw in the win32k system.
 In 2015 fighter plane F-35 fell victim to a software bug, making it unable to detect targets
correctly.
 China Airlines Airbus A300 crashed due to a software bug on April 26, 1994, killing 264
innocent live
 In 1985, Canada's Therac-25 radiation therapy machine malfunctioned due to software bug and
delivered lethal radiation doses to patients, leaving 3 people dead and critically injuring 3 others.
 In April of 1999, a software bug caused the failure of a $1.2 billion military satellite launch, the
costliest accident in history
 In May of 1996, a software bug caused the bank accounts of 823 customers of a major U.S. bank
to be credited with 920 million US dollars.

Types of Software Testing

Typically Testing is classified into three categories.

 Functional Testing

In my project Functional testing will be done to ensure that every component are functioning
properly.so that student are provided with the correct information

 Non-Functional Testing or Performance Testing

Non-functional testing is defined as a type of Software testing to check non-functional aspects


(performance, usability, reliability, etc.) of a software application. It is designed to test the
readiness of a system as per nonfunctional parameters which are never addressed by functional
testing.

 Maintenance (Regression and Maintenance)

Once the student Information Corner App come into existence, its maintenance will see by the
admin, to ensure that all the time students get correct information.

You might also like