A project Report on Biometric Approach Towards Student Attendance System By Anurag Srivastava BE/5568/10 Nikhil Sharma BE/5668/10 Niharika Gupta BE/5769/10 Under the guidance of Prof. Smita Pallavi Submitted in partial fulfillment of the requirement for the award of the Degree of Bachelor of Engineering in computer science DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING BIRLA INSTITUTE OF TECHNOLOGY MESRA, PATNA CAMPUS November 1,2013
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
A project Report
on
Biometric Approach Towards Student Attendance System
By
Anurag Srivastava BE/5568/10
Nikhil Sharma BE/5668/10
Niharika Gupta BE/5769/10
Under the guidance of
Prof. Smita Pallavi
Submitted in partial fulfillment of the requirement for the award of the
Degree of
Bachelor of Engineering in computer science
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
BIRLA INSTITUTE OF TECHNOLOGY
MESRA, PATNA CAMPUS
November 1,2013
ACKNOWLEDGEMENT
We would like to sincerely thank our mentor, Mrs. Smita Pallavi, Asst. Prof. ,
Computer Science and Engineering Department, BIT Mesra, Patna Campus for
her sagacious guidance and invaluable suggestions. We are grateful to her for
giving us an opportunity to work on “Biometric Approach Towards Student
Attendance System” with her. We would be ever indebted to her for planning of
the work, critical appraisal of the script and compilation of the project. With
sincere gratitude, we would also like to extend thanks to Dr. Kanhaiya Lal (In-
charge, Department of Computer Science and Engineering, BIT-Patna) for his
timely guidance.
We owe special thanks to Prof. Ashish Ranjan for his support in better
understanding of the concepts of Image Processing. This list is obviously
incomplete but allow us to submit that the omissions are inadvertent and we once
again record our deep-felt gratitude to all those associated with us in this endeavor.
Anurag Srivastava BE/5568/10
Nikhil Sharma BE/5668/10
Niharika Gupta BE/5769/10
Contents
1. Introduction
1.1 Problem Statement
1.2 Motivation and Challenges
1.3 Using Biometrics
1.4 Fingerprints
1.5 Why use Fingerprints?
1.6 Using Fingerprints for Student Attendance System.
2. Attendance Management Framework
2.1 Hardware-Software level design
2.2 Implementation Design
2.3 E-R Diagram
2.4 Network Design
2.5 Portable Device using wireless LAN
2.6 Data Flow Diagram
2.7 Database Management
2.8 Online Report Generation
3. Fingerprint Identification System
3.1 How Fingerprint Recognition Works?
3.2 Fingerprint Identification system flowchart
4. Fingerprint Enhancement
4.1 Segmentation
4.2 Normalization
4.3 Orientation Estimation
4.4 Ridge Frequency Estimation
4.5 Binarisation
4.6 Thinning
5. Fingerprint Recognition and Matching
5.1 Fingerprint Recognition
5.2 Matching
6. Software Design and Working Model
7. Future Work
8. Conclusion
9. References
10. Appendix
10.1 Matlab Functions used
Abstract
Biometric involves the identification and verification of individuals by analyzing
the human fingerprint characteristics. It has been widely used in various aspect of
life for different purposes. This project aims at effectively using this technology to
manage attendance of students at institutes like BIT Mesra automatically.
Manually taking the attendance and maintaining it for a long time makes it a
difficult task. Also it wastes a lot of time. This system takes attendance with the
help of a finger-print sensor module and all the records are saved on a computer. In
this project edge detection algorithm has been implemented for fingerprint
matching. This system is implemented in Matlab7 software. The hardware and
software can be integrated to make a portable attendance monitoring system. Our
matching technique runs in O (n) time.
Chapter 1
Introduction
1.1 Problem Statement
Designing a Student Attendance Management system based on fingerprint
recognition and faster one to many identification that manages records for
attendance in institutes.
1.2 Motivation and Challenges
Designing a better attendance management system for students so that records are
maintained with ease and accuracy was an important key behind motivating this
project. This would improve accuracy of attendance records because it will remove
all the hassles of roll calling and will save valuable time of the students as well as
teachers. Image processing and fingerprint recognition are very advanced today in
terms of technology.
1.3 Using Biometrics
Biometric Identification Systems are widely used for unique identification of
humans mainly for verification and identification. Biometrics is used as a form of
identity access management and access control. So use of biometrics in student
attendance management system is a secure approach. There are many types of
biometric systems like fingerprint recognition, face recognition , voice recognition,
iris recognition, palm recognition, , DNA recognition etc. In this project, we used
fingerprint recognition system.
1.4 Fingerprint
A fingerprint is an impression of the friction ridges on all parts of the finger. A
friction ridge is a raised portion of the epidermis on the palm or digits (fingers and
toes) or plantar (sole) skin, consisting of one or more connected ridge units of
friction ridge skin. These are sometimes known as "epidermal ridges" which
caused by the underlying interface between the dermal papillae of the dermis. [1].
It is believed that no two people have identical fingerprint in world, so the
fingerprint verification and identification is most popular way to verify the
authenticity or identity of a person wherever the security is a problematic question.
The reason for popularity of fingerprint technique is uniqueness of person arises
from his behavior; personal characteristics are like, for instance uniqueness, which
indicates that each and every fingerprint is unique, different from one other.
When human fingerprint experts determine if two fingerprints are from the same
finger, the matching degree between two minutiae pattern is one of the most
important factors. Thanks to the similarity to the way of human fingerprint experts
and compactness of templates, the minutiae-based matching method is the most
widely studied matching method.
1.5 Why use fingerprints? Fingerprints are considered to be the best and fastest method for biometric
identification. They are secure to use, unique for every person and does not change
in one's lifetime. Besides these, implementation of fingerprint recognition system
is cheap, easy and accurate up to satisfiability.
Fingerprint recognition has been widely used in both forensic and civilian
applications. Compared with other biometrics features , fingerprint-based
biometrics is the most proven technique and has the largest market shares . Not
only it is faster than other techniques but also the energy consumption by such
systems is too less.
1.6 Using fingerprint recognition system for attendance
management
Managing attendance records of students of an institute is a tedious task. It
consumes time and paper both. To make all the attendance related work automatic
and on-line, we have designed an attendance management system which could be
implemented in various institutes. It uses a fingerprint identification system
developed in this project. This fingerprint identification system uses existing as
well as new techniques in fingerprint recognition and matching.
Chapter 2
Attendance Management Framework
Manual attendance taking and report generation has its limitations. It is well
enough for 30-60 students but when it comes to taking attendance of students large
in number, it is difficult. For taking attendance for a lecture, a conference, etc. roll
calling and manual attendance system is a failure. Time waste over responses of
students, waste of paper etc. are the disadvantages of manual attendance system.
Moreover, the attendance report is also not generated on time.
To overcome these non-optimal situations, it is necessary that we should use an
automatic on-line attendance management system. So we present an
implementable attendance management framework. Student attendance system
framework is divided into three parts :
Hardware/Software Design,
Attendance Management Approach, and
On-line Report Generation.
Each of these is explained below.
2.1 Hardware - Software Level Design .
Proposed hardware consists following parts:
(1)Fingerprint Scanner,
(2)LCD/Display Module (optional),
(3)Computer
(4)LAN Connection
Fingerprint scanner will be used to input fingerprint of students into the computer
software.
LCD can be used to view the details of any individual student. However, the
display part can be implemented on the computer.
Fingerprint module
A computer can act as a server where the information of students can be stored and
their easy retrieval is possible. Computer Software present on this computer will
be interfacing fingerprint scanner and LCD and will be connected to the network.
It will input fingerprint, will process it and extract features for matching. After
matching, it will update database attendance records of the students.
Proposed software architecture consists of the database and the application
program.
Database: Record file stores all the information of the registered students as well
as their attendances in every subject.
Application Program: The application program is developed with Matlab7. It
provides a graphical user interface for the Attendance Management System. The
advantage of using of Matlab7 is its easy integration with the hardware.
Hardware present in classrooms
2.2 Implementation Process
Following points will make sure that attendance is marked correctly, without any
problem:
(1) All the hardware will be inside classroom. In this way outside interference will
be least. C-CTV cameras can be installed to prevent unauthorized access and
unprivileged activities.
(2) When teacher enters the classroom, the attendance marking will start.
Computer Software will start the process after taking login password from the
teacher.
(3) After some time, say 20 minutes of this process, no attendance will be given
because of late entrance. This time period can be increased or decreased as per
requirements.
(4) If attendance has already been marked, student is not able to mark another
attendance in the same lecture. This will show error on LCD screen.
Classroom Scenario
2.3 E-R Diagram
E-R Diagram
2.4 Network Diagram This attendance system will be spread over a wide network from classrooms via
intranet to internet. Network diagram is shown in fig. Using this network,
attendance reports will be made available over internet and e-mail. A monthly
report will be sent to each student via email and website will show the updated
attendance.
Network Diagram
We are using LAN for communication among servers and hardwares in the
classrooms. We can instead use wireless LAN with portable devices. Portable
device will have an embedded fingerprint scanner, wireless connection, a
microprocessor loaded with a software, memory and a display terminal.
Size of device could be small like a mobile phone depending upon how well the
device is manufactured.
2.5 Portable Device using Wireless LAN to implement
attendance system
Portable Device
This device should have a wireless connection. Using this wireless connection,
attendance taken would be updated automatically when device is in network of the
nodes which are storing the attendance records. Database of enrolled fingerprints
will be in this portable device. Size of enrolled database was 12.1 MB when 150
fingerprints were enrolled in this project. So for 10000 students, atleast 807 MB or
more space would be required for storing enrolled database. For this purpose, a
removable memory chip could be used. We cannot use wireless LAN here because
fetching data using wireless LAN will not be possible because of less range of
wireless devices.So enrolled data would be on chip itself. Attendance results will
be updated when portable device will be in the range of nodes which are storing
attendance reports.
We may update all the records online via the mobile network provided by different
companies. Today 3G network provides sufficient throughput which can be used
for updating attendance records automatically without going near nodes. In such
case, the need of database inside memory chip will not be mandatory. It will be
fetched by using 3G mobile network from central database repository. The design
of such a portable device is the task of embedded system engineers.
Using Portable Device
In this section, we suggest the working of portable device and the method of using
it for marking attendance. The device may either be having touchscreen
input/display or buttons with lcd display. A software specially designed for the
device will be running on it. Teachers will verify his/her fingerprint on the device
before giving it to students for marking attendance. After verifying the teacher's
identity, software will ask for course and and other required information about the
class which he or she is going to teach. Software will ask teacher the time after
which device will not mark any attendance. This time can vary depending on the
teacher's mood but our suggested value is 25 minutes. This is done to prevent late
entrance of students. This step will hardly take few seconds. Then students will be
given device for their fingerprint identification and attendance marking. In the
continuation, teacher will start his/her lecture. Students will hand over the device
to other students whose attendance is not marked. After 25 minutes or the time
decided by teacher, device will not input any attendance. After the class is over,
teacher will take device and will end the lecture. The main function of software
running on the device will be fingerprint identification of students followed by
report generation and sending reports to servers using 3G network. Other functions
will be downloading and updating the database available on the device from
central database repository.
2.6 Data Flow Diagram
Level 0 DFD
Level 1 DFD
2.7 Database Management
Database storage contains the fingerprint templates of students along with their
information (names, registration numbers, roll number and Subjects/lectures).
When student enrolls his/her finger on the fingerprint sensor module his/her
fingerprint is matched with database to mark the attendance.
2.8 On-Line Attendance Report Generation
Database for attendance can be stored in tabular form but here we are avoiding any
external storage means due to unavailability of MYSQL toolbox in matlab for
students .
Here database is stored in the form of structures .Primarily two structures are
maintained:
1. Student with attributes as
Name
Roll
Course
Day
2. Attendance with attributes as
Subject
Roll
Name
Attendance
Using this information, all the attendance can be managed for a student.
To implement multiple subjects teachers can have a separate structures with
attributes as subjects ,name, teacher_id.
For on-line report generation, a simple website can be hosted on college servers.
2.4 COMPARISON WITH OTHER STUDENT ATTENDANCE SYSTEMS
There are various other kinds of student attendance management systems available
like RFID based student attendance system and GSM-GPRS based student
attendance system.
Our system is better because first it saves time that could be used for teaching.
Second is its portability
[1]. Portability has its own advantage because the device could be taken to any
class wherever it is scheduled because it is dynamic. In GSM-GPRS based
systems, it use position of class for attendance marking which is not dynamic and
if schedule or location of the class changes, wrong attendance might be marked.
Problem with RFID based systems is that students have to carry RFID cards and
also the RFID detectors are needed to be installed. But, students may give proxies
easily using friend's RFID card. These problems are not in our system
[2]. We used fingerprints as recognition criteria so proxies cannot be given. If
portable devices are used, attendance marking will be done at any place and any
time. So our student attendance system is far better to be implemented.
Chapter 3
Fingerprint Identification System
An identification system is one which helps in identifying an individual among
many people when detailed information is not available. It may involve matching
available features of candidate like fingerprints with those already enrolled in
database.
3.1 How Fingerprint Recognition works?
Fingerprint images that are found or scanned are not of optimum quality. So we
remove noises and enhance their quality. We extract features like minutiae and
others for matching. If the sets of minutiae are matched with those in the database,
we call it an identified fingerprint. After matching, we perform post-matching steps
which may include showing details of identified candidate, marking attendance etc.
A brief flowchart is shown in next section.
3.2 Fingerprint Identification System Flowchart
A brief methodology of our Fingerprint Identification System is shown here in
following flowchart. Each of these are explained in the later chapters.
System Flowchart during fingerprint recognition
Chapter 4
Fingerprint Enhancement
The image acquired from scanner is sometimes not of perfect quality .It gets
corrupted due to irregularities and non-uniformity in the impression taken and due
to variations in the skin and the presence of the scars, humidity, dirt etc. To
overcome these problems , to reduce noise and enhance the definition of ridges
against valleys, various techniques are applied as following.
4.1 Segmentation
Image segmentation separates the foreground regions and the background regions
in the image. The foreground regions refer to the clear fingerprint area which
contains the ridges and valleys. This is the area of interest. The background regions
refer to the regions which are outside the borders of the main fingerprint area,
which does not contain any important or valid fingerprint information. The
extraction of noisy and false minutiae can be done by applying minutiae extraction
algorithm to the background regions of the image. Thus, segmentation is a process
by which we can discard these background regions, which results in more reliable
extraction of minutiae points. The background regions exhibit a very low grey -
scale variance value, whereas the foreground regions have a very high variance.
Firstly, the image is divided into blocks and the grey-scale variance is calculated
for each block in the image. If the variance is less than the global threshold, then
the block is assigned to be part of background region or else it is part of foreground
. The grey - level variance for a block of size S x S can be calculated as:
where Var(k) is the grey - level variance for the block k , G(i,j) is the grey – level
value at pixel (i,j) , and M(k) denotes the mean grey - level value for the
corresponding block k .
4.2 Normalization
Image normalization is the next step in fingerprint enhancement process.
Normalization is a process of standardizing the intensity values in an image so that
these intensity values lie within a certain desired range. It can be done by adjusting
the range of grey-level values in the image. Let G (i, j) denotes the grey-level value
at pixel (i, j), and N(i, j) represent the normalized grey-level value at pixel (i, j).
Then the normalized image can defined as:
Where Mo and Vo are the estimated mean and variance of I(i, j), respectively .
4.3 Orientation estimation The orientation field of a fingerprint image defines the local orientation of the
ridges contained in the fingerprint . The orientation estimation is a fundamental
step in the enhancement process as the subsequent Gabor filtering stage relies on
the local orientation in order to effectively enhance the fingerprint image. The least
mean square estimation method used by Raymond is used to compute the
orientation image. However, instead of estimating the orientation block-wise, we
have chosen to extend their method into a pixel-wise scheme, which produces a
finer and more accurate estimation of the orientation field. The steps for
calculating the orientation at pixel (i, j) are as follows:
1. Firstly , a block of size W x W is centered at pixel (i, j) in the normalized
fingerprint print image.
2. For each pixel in the block, compute the gradients dx (i, j) and dy (i, j),
which are the gradient magnitudes in the x and y directions, respectively.
The horizontal Sobel operator is used to compute dx(i, j) :[1 0 -1; 2 0 -2;1 0
1]
3. The local orientation at pixel (i, j) can then be estimated using the following
equations:
where θ(i, j) is the least square estimate of the local orientation at the block
centered at pixel θ(i, j).
Orientation Estimation
4. Smooth the orientation field in a local neighbourhood using a Gaussian
filter. The orientation image is firstly converted into a continuous vector
field, which is defined as:
where ᶲ x and ᶲ y are the x and y components of the vector field,
respectively.
4.4 Ridge Frequency Estimation
Another important parameter,in addition to the orientation image, that can be used
in the construction of the Gabor filter is the local ridge frequency. The local
frequency of the ridges in a fingerprint is represented by the frequency image.
The first step is to divide the image into blocks of size W x W.
In the next step we project the grey-level values of each pixels located inside each
block along a direction perpendicular to the local ridge orientation. This projection
results in an almost sinusoidal-shape wave with the local minimum points denoting
the ridges in the fingerprint.It involves smoothing the projected waveform using a
Gaussian lowpass filter of size W x W which helps in reducing the effect of noise
in the projection. The ridge spacing S(i, j) is then calculated by counting the
mediannumber of pixels between the consecutive minima points in the projected
waveform.The ridge frequency F(i, j) for a block centered at pixel (i, j) is given as
4.6 Binarisation
Most minutiae extraction algorithms operate on basically binary images where
there are only two levels of interest: the black pixels represent ridges, and the white
pixels represent valleys. Binarisation converts a greylevel image into a binary
image. This helps in improving the contrast between the ridges and valleys in a
fingerprint image,and consequently facilitates the extraction of minutiae. One very
useful property of the Gabor filter is that it contains a DC component of zero,
which indicates that the resulting filtered image has a zero mean pixel value.
Hence, binarisation of the image can be done by using a global threshold of zero.
Binarisation involves examining the grey-level value of every pixel in the
enhanced image, and, if the grey-level value is greater than the predefined global
threshold, then the pixel value is set to value one;else, it is set to zero.
The outcome of binarisation is a binary image which contains two levels of
information, the background valleys and the foreground ridges.
4.7 Thinning
Thinning is a morphological operation which is used to remove selected
foreground pixels from the binary images. A standard thinning algorithm from [1]
is used, which performs this operation using two sub iterations. The algorithm can
be accessed by a software MATLAB via the `thin' operation of the bimorph
function. Each sub iteration starts by examining the neighbourhood of every pixel
in the binary image, and on the basis of a particular set of pixel-deletion criteria, it
decides whether the pixel can be removed or not. These subiterations goes on until