2. ABSTRACTABSTRACT
Face Identification is an application that is mainly
used to identify criminals based on the clues
given by the eyewitnesses. Based on the clues we
develop an image by using the image that we
have in our database and then we compare it
with the images already we have. To identify any
criminals we must have a record that generally
contains name, age, location, previous crime,
gender, photo, etc.
The primary task at hand is, given still or video
images require the identification of the one or
more segmented and extracted from the scene,
where upon it can be identified and matched
3. CONTENTSCONTENTS
Existing SystemExisting System
Proposed SystemProposed System
Architecture of the systemArchitecture of the system
Algorithms proposedAlgorithms proposed
Modules of the systemModules of the system
UML and system designUML and system design
4. EXISTING SYSTEMEXISTING SYSTEM
The development of face identification has been past from
the year to years. In recent years to identify any criminal
face they used to make a sketch or draw a image based on
the eyewitnesses. It used to take more amount of time and
it was very difficult task for any investigation department to
easily catch the criminals within a stipulated time. In order
to catch the criminals first they used to search their record
whether to find out is there any record about that particular
person in the past. In olden days each and every record
was maintained in the books or registers or files which used
to contain information about previous criminals with their
names, alias name, gender, age, crime involved, etc.
5. PROPOSED SYSTEMPROPOSED SYSTEM
To overcome the drawbacks that were in theTo overcome the drawbacks that were in the
existing system we develop a system that will beexisting system we develop a system that will be
very useful for any investigation department.very useful for any investigation department.
Here the program keeps track of the recordHere the program keeps track of the record
number of each slice during the construction ofnumber of each slice during the construction of
identifiable human face and calculate maximumidentifiable human face and calculate maximum
number of slices of the similar record number.number of slices of the similar record number.
Based on this record number the programBased on this record number the program
retrieves the personal record of the suspectretrieves the personal record of the suspect
(whose slice constituted the major parts of the(whose slice constituted the major parts of the
constructed human face) on exercising theconstructed human face) on exercising the
“locate” option.“locate” option.
6. ALGORITHMS PROPOSEDALGORITHMS PROPOSED
1.1. Elastic Bunch AlgorithmElastic Bunch Algorithm – This algorithm has– This algorithm has
basically three phases as follows:-basically three phases as follows:-
Firstly, we use the phase of theFirstly, we use the phase of the complex Gabor waveletcomplex Gabor wavelet
coefficientscoefficients to achieve a more accurate location of theto achieve a more accurate location of the
nodes and to disambiguate patterns which would be similarnodes and to disambiguate patterns which would be similar
in their coefficient magnitudes.in their coefficient magnitudes.
Secondly, we employSecondly, we employ object adapted graphsobject adapted graphs, so that, so that
nodes refer to specific facial landmarks, callednodes refer to specific facial landmarks, called fiducialfiducial
pointspoints. The correct correspondences between two faces. The correct correspondences between two faces
can then be found across large viewpoint changes.can then be found across large viewpoint changes.
Thirdly, we have introduced a new data structure, calledThirdly, we have introduced a new data structure, called
thethe bunch graphbunch graph, which serves as a, which serves as a generalizedgeneralized
representation of facesrepresentation of faces by combining jets of a small setby combining jets of a small set
of individual faces. This allows the system to find theof individual faces. This allows the system to find the
fiducial points in one matching process, which eliminatesfiducial points in one matching process, which eliminates
the need for matching each model graph individually. Thisthe need for matching each model graph individually. This
reduces computational effort significantly.reduces computational effort significantly.
7. Eigenvalues and eigenvectorsEigenvalues and eigenvectors
This algorithm is used for identifying theThis algorithm is used for identifying the
correct criminal from the store databasecorrect criminal from the store database
by matching the constructed image.by matching the constructed image.
This algorithm doesn’t works well in lightThis algorithm doesn’t works well in light
variations.variations.
It assume image as a 1D column vectorIt assume image as a 1D column vector
with concatenated rows of pixels or 2Dwith concatenated rows of pixels or 2D
array of pixels.array of pixels.
Then it compares the pixels of aThen it compares the pixels of a
constructed image with that of prestoredconstructed image with that of prestored
images and check out the euclideanimages and check out the euclidean
distance to find the best possible suspect.distance to find the best possible suspect.
8. Pseudocode of the algorithmPseudocode of the algorithm
1. Set image resolution parameter 4 (imres)1. Set image resolution parameter 4 (imres)
2. Set PCA dimensionality parameter (PCADIM)2. Set PCA dimensionality parameter (PCADIM)
3. Read training images3. Read training images
4. Form training data matrix (Mtraindata)4. Form training data matrix (Mtraindata)
5. Form training class labels matrix (Mtrainlabels)5. Form training class labels matrix (Mtrainlabels)
6. Calculate PCA transformation matrix (tmatrix)6. Calculate PCA transformation matrix (tmatrix)
7. Calculate feature vectors of all training images7. Calculate feature vectors of all training images
using tmatrixusing tmatrix
8. Store training feature vectors in a matrix8. Store training feature vectors in a matrix
9. Read test faces9. Read test faces
10. For each test face do10. For each test face do
9. 11. Calculate the feature vector of a test face using t11. Calculate the feature vector of a test face using t
matrixmatrix
12. Compute the distances between test feature vector and12. Compute the distances between test feature vector and
all training vectorsall training vectors
13. Store the distances together with the training class13. Store the distances together with the training class
labelslabels
14. Initialize error count to zero.14. Initialize error count to zero.
15. For each test face do15. For each test face do
16. Using the distance data, determine the person ID of the16. Using the distance data, determine the person ID of the
most similar training vectormost similar training vector
17. If the found ID is not equal to the ID of the test image17. If the found ID is not equal to the ID of the test image
increment error countincrement error count
18. Output the correct recognition accuracy :18. Output the correct recognition accuracy :
(1 - (error count/ total test image count))*100(1 - (error count/ total test image count))*100
10. Modules of the systemModules of the system
There are basically four modules of theThere are basically four modules of the
system as follows:-system as follows:-
Add ImageAdd Image - Add Image is a module that- Add Image is a module that
is considered with adding image alongis considered with adding image along
with the complete details of the person ofwith the complete details of the person of
whom we are taking image.whom we are taking image.
Clip Image -Clip Image - This modules main functionThis modules main function
is to divide the images into differentis to divide the images into different
pieces such as hairs, forehead, eyes, nosepieces such as hairs, forehead, eyes, nose
and lips and store them in the databaseand lips and store them in the database
and also creates the files onto our system.and also creates the files onto our system.
11. Construct Image -Construct Image - Based on theBased on the
eyewitnesses we are going to constructeyewitnesses we are going to construct
the images. The witness will give usthe images. The witness will give us
instruction by looking onto the screen oninstruction by looking onto the screen on
which there will be the parts of the imageswhich there will be the parts of the images
like eyes, hairs etc.like eyes, hairs etc.
Identification -Identification - This module contains theThis module contains the
interface to take the image from aboveinterface to take the image from above
module and it compares or searches withmodule and it compares or searches with
the images already there in the database.the images already there in the database.
14. Functional and Non FunctionalFunctional and Non Functional
RequirementsRequirements
Functional RequirementsFunctional Requirements:-:-
The eyewitness should be able to identifyThe eyewitness should be able to identify
the correct image properly. There shouldthe correct image properly. There should
not be chaos for culprit’s image identity innot be chaos for culprit’s image identity in
eyewitness mind.eyewitness mind.
The new database images should beThe new database images should be
added correctly and the culprit recordadded correctly and the culprit record
should be updated time to time.should be updated time to time.
The system should be able to upload theThe system should be able to upload the
image from database correctly.image from database correctly.
The nearest match should be shown.The nearest match should be shown.
15. Non Functional RequirementsNon Functional Requirements:-:-
SecuritySecurity - The database of criminals should be- The database of criminals should be
highly secured and any modification by strangershighly secured and any modification by strangers
should be strictly prohibited.should be strictly prohibited.
PerformancePerformance - The performance of the proposed- The performance of the proposed
system should be accurate and fast.system should be accurate and fast.
Robust -Robust - The system should be robust andThe system should be robust and
vigorous.vigorous.
ReliableReliable - The system should be reliable and- The system should be reliable and
should able to bear load.should able to bear load.