Project Report
Project Report
Project Report On
Submitted To
Submitted By:
Pritish Pawar
Roll No: 36
Shubham Bhosale
Roll No: 12
SEMESTER VI (2023-24)
(Project Guide)
CERTIFICATE
Submitted by
(Project Guide)
External Examiner
Director,
Dr. H. R. Kulkarni
G H RAISONI COLLEGE OF ARTS,
COMMERCE AND SCIENCE, PUNE
Place : Wagholi
Date:
Acknowledgement
We are indebted to our honorable principle who has been a constant source of
motivation and co-operating in bringing this project in very short time.
Projected By
1. Pritish Ramesh Pawar
2.Shubham Rajdeep Bhosale
Students Signature
________________ _________________
system will be pre feed with the images of all the students and
with the help of this pre feed data the algorithm will detect them
who are present and match the features with the already saved
SR. NO CHAPTERS
ABSTRACT
1 INTRODUCTION
2 LITERATURE SURVEY
5 LBPH ALGORITHM
6 OTHER SPECIFICATION
LIST OF TABLES
INTRODUCTION
1. Introduction
LITERATURE
SURVEY
2.LITERATURE SURVEY
SOFTWARE
REQUIRMENTS
SPECIFICATION
3.SOFTWARE REQUIREMENTS AND SPECIFICATION
3.1 INTRODUCTION
3.1.1 Project Scope
The scope of the system is to reduce the time of the teacher as well as student which
they wasted by doing traditional attendance.
Identify the various user classes that you anticipate will use this product. User
classes may be differentiated based on frequency of use, subset of product
functions used, technical expertise, security or privilege levels, educational
level, or experience. Describe the pertinent characteristics of each user class.
Certain requirements may pertain only to certain user classes. Distinguish the
most important user classes for this product from those who are less important
to satisfy.
This document will provide a general description of our project, including user
FUNCTIONAL REQUIREMENTS
Functional user requirements may be high-level statements of what the system should do but
functional system requirements should also describe clearly about the system services in
detail.
3.2 EXTERNAL INTERFACE REQUIREMENTS
3.2.1 User Interfaces
Since the application must run over the internet, the hardware shall
require to connect internet to the hardware which is android
device/computer-system for the system.
The e-store system shall use the HTTP protocol for communication
over the internet and for the intranet communication will be
through TCP/IP protocol suite.
NON FUNCTIONAL REQUIREMENTS:
• The system will be available 100% of the time. Once there is a fatal
• Reliability: The Client machine will change the status of data indicating
the system.
SQL queries.
4. Database : MySql
Attendance
Add
students Database is Open the Face with date
information trained in camera for recognition and time
and face in backend recognition done saved in
database database
photoSample
Std_date
Std_time Student_Attendance
Std_name
ERD Digram
Chapter-4
SYSTEM
DESIGN
4. HAAR CASCADE ALGORITHM
The core basis for Haar classifier object detection is the Haar-like features. These features,
rather than using the intensity values of a pixel, use the change in contrast values between
adjacent rectangular groups of pixels. The contrast variances between the pixel groups are used
to determine relative light and dark areas. Two or three adjacent groups with a relative contrast
variance form a Haar-like feature. Haar-like features as shown in figure are used to detect an
image. Haar features can easily be scaled by increasing or decreasing the size of the pixel group
being examined. This allows features to be used to detect objects of various sizes. The
cascading of the classifiers allows only the sub-images with the highest probability to be
analyzed for all Haar-features that distinguish an object. It also allows one to vary the accuracy
of a classifier. One can increase both the false alarm rate and positive hit rate by decreasing the
number of stages. The inverse of this is also true. Viola and Jones were able to achieve a 90%
accuracy rate for the detection of a human face using only 100 simple features. Detecting
human facial features, such as the mouth, eyes, and nose require that Haar classifier cascades
first are trained. In order to train the classifiers, this gentle AdaBoost algorithm and Haar feature
algorithms must be implemented. Fortunately, Intel developed an open source library devoted
to easing the implementation of computer vision related programs called Open Computer
Vision Library (OpenCV). The OpenCV library is designed to be used in conjunction with
applications that pertain to the field of HCI, robotics, biometrics, image processing, and other
areas where visualization is important and includes an implementation of Haar classifier
detection and training. Thus with help of this algorithm system will detect the person’s face in
the video. Face of the person gets Green Square as an indication of detection process. As soon
as the face gets detected user can paused the video and enters the data of detected person such
as person’s name, address, profession, criminal record if any. If the detected person has criminal
record then it can be defined as suspect. Check box option is given in the system where user
can tick whether the person is suspect on not. This is the working of first module in which
sample video is browsed and face is detected.
Local Binary Pattern (LBP) is a simple yet very efficient texture operator which labels the
pixels of an image by thresholding the neighborhood of each pixel and considers the result as
a binary number.
The first computational step of the LBPH is to create an intermediate image that describes the
original image in a better way, by highlighting the facial characteristics. To do so, the algorithm
uses a concept of a sliding window, based on the parameters radius and neighbors.
The first computational step of the LBPH is to create an intermediate image that describes the
original image in a better way, by highlighting the facial characteristics. To do so, the algorithm
uses a concept of a sliding window, based on the parameters radius and neighbors.
The image below shows this procedure:
• So to find the image that matches the input image we just need to compare two histograms and
return the image with the closest histogram.
• We can use various approaches to compare the histograms (calculate the distance between two
histograms), for example: Euclidean distance, chi-square, absolute value, etc. In this example,
we can use the Euclidean distance (which is quite known) based on the following formula:
• So the algorithm output is the ID from the image with the closest histogram. The
algorithm should also return the calculated distance, which can be used as a ‘confidence’
measurement. Note: don’t be fooled about the ‘confidence’ name, as lower confidences
are better because it means the distance between the two histograms is closer.
• We can then use a threshold and the ‘confidence’ to automatically estimate if the
algorithm has correctly recognized the image. We can assume that the algorithm has
successfully recognized if the confidence is lower than the threshold defined.
5.3 TRAINING THE ALGORITHM:
First, we need to train the algorithm. To do so, we
need to use a dataset with the facial images of the
people we want to recognize. We need to also set an
ID (it may be a number or the name of the person)
for each image, so the algorithm will use this
information to recognize an input image and give
you an output.
Images of the same person must have the same ID.
With the training set already constructed, let’s see
the LBPH computational steps.
• It can also be represented as a 3x3 matrix containing the intensity of each pixel (0~255).
• Then, we need to take the central value of the matrix to be used as the threshold.
• This value will be used to define the new values from the 8 neighbors.
For each neighbor of the central value (threshold), we set a new binary value. We set 1 for values
equal or higher than the threshold and 0 for values lower than the threshold.
Now, using the image generated in the last step, we can use the Grid X and Grid Y parameters
to divide the image into multiple grids, as can be seen in the following image
Based on the image above, we can extract the histogram of each region as follows:
• As we have an image in grayscale, each histogram (from each grid) will contain only 256 positions
• Then, we need to concatenate each histogram to create a new and bigger histogram. Supposing
we have 8x8 grids, we will have 8x8x256=16.384 positions in the final histogram. The final
In this step, the algorithm is already trained. Each histogram created is used to represent each
image from the training dataset. So, given an input image, we perform the steps again for this new
image and creates a histogram which represents the image.
So to find the image that matches the input image we just need to compare two histograms and
return the image with the closest histogram.
We can use various approaches to compare the histograms (calculate the distance between two
histograms), for example: Euclidean distance, chi-square, absolute value, etc. In this example,
we can use the Euclidean distance (which is quite known) based on the following formula:
So the algorithm output is the ID from the image with the closest histogram. The algorithm should also
return the calculated distance, which can be used as a ‘confidence’ measurement. Note: don’t be fooled
• ‘confidence’ name, as lower confidences are better because it means the distance between the two
histograms is closer.
• We can then use a threshold and the ‘confidence’ to automatically estimate if the algorithm has
correctly recognized the image. We can assume that the algorithm has successfully recognized if
OTHER
SPECIFICATONS
6.OTHER SPECIFICATIONS
6.1Advantages:
1. It is trouble-free to use.
6.2Limitations:
2) While dealing with high volume of data system required the powerful processor
6.3Applications:
We can get attendance of students as well as teachers without doing conventional attendance
Chapter-7
CONCLUSION
AND
FUTURE WORK
7.CONCLUSION AND FUTURE WORK
Conclusion:
been developed. The system has reached a steady state where all
• The system can recognize and identify the face well with an
adequate lighting.
Future Work:
1) G.Satyanarayana Reddy,Rallabandi
Srinivasu,Srikanth Reddy Rikkula,Vuda
Sreenivasa Rao,” Management Information
System To Help Managers For Providing
Decision Making In An Organization”,
International Journal of Reviews in
Computing.
2) Learning OpenCV –Computer Vision with
the OpenCV Library O’Reilly Publication
3) http://www.wordpress.org/
4) http://www.academia.edu/
5) http://www.stackoverflow.com/
6) http://www.iproject.com