Report Final
Report Final
1. Introduction Page No
1.1 Overview 01
1.2 Problem Statement 02
1.3 Objectives And Contribution 03
1.4 Scope of the Project 03
2. Literature Survey 04
3. Requirements Analysis
3.1 System Requirements Specification 11
3.2 Functional Requirement 16
3.3 Non Functional Requirement 17
4. System Design
4.1 System Analysis 18
5. System Implementation
5.1 Modules 32
5.2 System Testing 33
6. Results 36
6.1 Evaluation 39
6.2 Discussion 40
7. Conclusions 41
8. References 42
LIST OF FIGURES
2 Anaconda Idle 12
3 System Architecture 15
4 Sequence Diagram 17
5 Use case Diagram 18
6 Convolutional Neural Network 19
7 Image matrix multiples kernel or filter matrix 20
8 Image and filter matrix multiplication 20
9 3 x 3 output matrix 21
10 Stride of 2 pixels 22
11 ReLu operation 22
12 Max pooling 23
13 After pooling layer, Flatted as Layer 24
14 Complete CNN architecture 24
15 Integral Image Generation 25
16 Common Haar Features 26
17 Examples of Haar Features 26
18 Calculating the area of a R is done using the corner of 27
the rectangle: C+A-B
19 Cascade of stages 28
20 Homepage 40
21 Criminal Registration Page 40
22 Detect Criminal Page 41
23 Non-Criminal Page 41
24 Output: video surveillance 42
CRIMINAL FACE DETECTION USING MACHINE LEARNING
CHAPTER 1
INTRODUCTION
1.1 OVERVIEW
Automated criminal identification by face recognition is a technology that uses artificial
intelligence to analyze and match images of faces with a database of known criminal suspects.
This technology has gained popularity in recent years as a tool for law enforcement agencies to
quickly identify suspects and solve crimes. The process begins with capturing an image of a
suspect's face, either from a live video feed or from a still image. The image is then analyzed by
software that uses algorithms to identify unique features and characteristics of the face, such as
the distance between the eyes, the shape of the nose, and the contours of the jawline.
Once the software has analyzed the image, it compares it to a database of known criminal
suspects to find a potential match. If a match is found, law enforcement officials can use this
information to identify and locate the suspect, or to confirm the suspect's identity if they are
already in custody. While automated criminal identification by face recognition has been hailed
as a powerful tool for law enforcement, it is not without controversy. Critics argue that the
technology is prone to errors, particularly when analyzing images of individuals with darker skin
tones. Additionally, there are concerns about privacy and civil liberties, as the use of facial
recognition technology raises questions about who has access to our personal data.
In manual identification system identification is done by the Police officers searching them
at public places. It takes a lot of time to give the proper attention and it also has the chances of
skipping criminals as they will be alerted by seeing cops easily gets escape from there. Since the
MIS is in the process of taking more time and we will not properly focus on everyone. But when
it comes to an automated identification system there is no need for observation going in a public
place. Here all the process involved in this system is automated.
To develop an application which will serve a way to register and track criminals remotely
with the help of criminal data.
EXISTING METHODS
As the crime rate and criminals are increasing day by day managing, finding and
tracking these criminals is a major issue for police personnel. There are application which will
help police department to store the records and data about a criminal but these applications
won’t help in finding those criminals. Criminal details were mainly managed using records
books or stored as software records in the database. Previously when a criminal is found guilty
the picture of the criminal is being taken and stored in records but these pictures serve no
purpose. The existing methods will only help in managing criminal records and those methods
will not be finding criminals from any location.
The objectives of automated criminal identification by face recognition are to aid law
enforcement agencies in identifying suspects and criminals quickly and accurately. This
technology can help to increase public safety by enabling authorities to track down criminals
and prevent future crimes.
To identify the person is crime or not from face image effectively. To enhance the overall
performance for classification algorithms.
The main objective of Real-time criminal identification based on face recognition is to help
police personnel to identify criminals.
The objective of this application is to provide information about a particular criminal which
we are finding.
CHAPTER 2
LITERATURE SURVEY
Kewen Yanet al. [1] proposed "Face Recognition Based on Convolution Neural
Network" A face recognition method based on CNN is the network used here consists of
nine layers. These nine layers contains three convolution layers, two pooling layers, two
full-connected layers and one Softmax regression layer. The convolution layers and the
pooling layers are used for feature extraction followed by two full-connected layers, and
the last layer uses a Softmax classifier with strong non-linear classification capability.
And activation function of the network is ReLU function . Caffe is used during the
network training process and GPU is used to expedite calculation speed. As to the training
algorithm, stochastic gradient descent algorithm is used to train the feature extractor and
the classifier, which can extract the facial features and classify them automatically. And
the Dropout method is used to solve the over- fitting problem.
Yongjing Lin, et al. [3] proposed "Face Gender Recognition based on Face
Recognition Feature Vectors "
Face gender recognition has broad application prospects. Inspired by transfer
learning, this paper proposes a face gender recognition method based on face recognition
feature vectors. Our method achieves a high recognition rate in three different datasets.
The visualization results also show that the feature vector can effectively distinguish the
gender of the face. It is worth mentioning that because our method obtains features in the
same way as to face recognition, this method can be directly applied to face recognition.
be acquired from the crime scene. The criminals have become cleverer and normally be
very careful in leaving any thumbprint on the scene. This system encompassed face
database and an image processing algorithm to match the face feed with faces stored in
the database.
C. E. Lum et.al [4] proposed "Facial Recognition for Law Enforcement:
Examining the Evidence"
Criminal identification is the most important task for the Police who are finding the
criminals, but it is the difficult and most time-consuming task as they have to find it
everywhere. It will be more difficult in cities or public places with high people density. In
some cases, manual type of identification gives chance for getting more information
related to criminals. Hence this paper proposes an automatic criminal identification
system by detecting the face of criminals. This will help Police to identify and catch the
criminals in public places. Criminal identification can be done in two ways In Manual
Identification System (MIS), identification is done by the Police officers searching them
at public places. It takes a lot of time to give the proper attention and it also has the
chances of skipping criminals as they will be alerted by seeing cops easily gets escape
from there. Since the MIS is in the process of taking more time and we will not properly
focus on everyone. But when it comes to an automated identification system (AIS) there
is no need for observation going in a public place.
Piyush Chhoriya, et al. [5] proposed "Facial Recognition for Law Enforcement:
Best Practices"
It can detect and recognize faces of the criminals in a video stream obtained from
a camera in real time. They have used Haar feature-based cascade classifiers in OpenCV
approach for face detection. It is a machine learning based approach where a cascade
function is trained from a lot of positive and negative images. It is then used to detect
objects in other images. Also, they have used Local Binary Patterns Histograms (LBPH)
for face recognition. Several advantages of this algorithm are: Efficient selection of
features, Scale and location invariant detector, instead of scaling the image itself, they
scale the features. LBPH recognizer can recognize faces in different lighting conditions
with high accuracy. Also, LBPH can recognize efficiently even if single training image is
used for each person. The real-time automated face detection and recognition system
proposed would be ideal for crowd surveillance applications.
S. S. Naveen et al [6] proposed "Real-Time Face Recognition for Criminal
Identification: A Systematic Literature Review"
In current days identifying criminals is becoming very complicated task for the
cybercrime people because it is having a lot of factors need to be analyzed. Criminal record
generally contains personal information about particular person along with photograph. To
identify any criminal we need some identification regarding person, which are given by
eyewitnesses. In most cases the quality and resolution of the recorded image-segments is poor
and hard to identify a face. To overcome this sort of problem we are developing many
software’s by using recent trends to identify the criminals but no method is accurate in
identifying the criminal information accurately.
will become easier for police personnel to monitor, track and find criminals from police control
Ganta Tejaswini, et al. [10] proposed “Online Criminal Identification Using Ml &
Face Recognition Techniques”
The purpose of face identification system is to identify criminals. In past years this
process is carried out by humans. This process gives the exact image of the criminal but it is
very difficult to identify the criminal details and also it requires much amount of human
burden. The main aim of our project is to overcome the drawbacks of human based system by
using the machine based face identification process. In this process we store the details of
criminal into the database along with his photo or image. Then we make the image into
different clips containing hair, forehead, eyes, nose, lips and chin and store these clips into
the database. When any crime occurs we compare the details given by the eyewitness with
the clips already stored in the database and we will identify the criminal. This project can be
extended to adjust the gaps between the clips after construction of the image to be a perfect
photograph using image processing techniques.
George Johnson et al [11] proposed “Face Recognition Policy Template for State,
Local, and Tribal Criminal Intelligence and Investigative Activities”
The implementation of proven policies and practices can mitigate the risk of negative
impacts while improving mission effectiveness. As face recognition use expands, it is
necessary for law enforcement, fusion centers, and other public safety agencies to ensure that
comprehensive policies are developed, adopted, and implemented in order to guide the entity
and its personnel in the day-to-day access and use of face recognition technology. Policies
that are developed in a transparent manner and which are properly enforced foster trust not
only within and between justice partners but also by the public.
Impana.H.C et al [12] proposed “Automated Criminal Identification By Face
Recognition Using Open Computer Vision Classifiers”
The proposed face recognition system based on Haar cascade will be implemented.
Even though the stored set of images of the person in the database differ from the input
image, the system serves as a fruitful method of identifying the faces. In order to find the
difference between input image and stored images the system takes out and calculates main
features from the input image. Thus, some changes in the new face image to be recognized
can be allowed. Recognition precision and better discriminatory power, computational cost
because smaller images with only main features require least processing to train the Haar
wavelets. The main advantage is that we use citizenship database which already exists.
This system uses our implementation of a face recognition system using features of a face
including colors, features and distances. Using its two degree of freedom, our system allows
two modes of operation, one that results in very few false positives and another which results in
few false negatives. It demonstrates various concerns related to the face recognition process,
such as the lighting and background conditions in which the facial images are taken. Our system
could be improved in the future through the development of a face detection algorithm which is
less
CHAPTER 3
REQUIREMENTS ANALYSIS
RAM :4GB(min)
.
SOFTWARE USED:
PYTHON LANGUAGE
FIG 1: PYTHON
INTRODUCTION:
HISTORY:
• Python was conceived in the late 1980s as a successor to the ABC language. Python 2.0,
released in 2000, introduced features like list comprehensions and a garbage collection
system capable of collecting reference cycles. Python 3.0, released in 2008, was a major
revision of the language that is not completely backward-compatible, and much Python 2
code does not run unmodified on Python 3.
The Python 2 language was officially discontinued in 2020 (first planned for 2015), and “Python
2.7.18 is the last Python 2.7 release and therefore the last Python 2 release.”[30] No end-of-life, only
Python 3.5.x[33] and later are supported.
more security patches or other improvements will be released for it.[31][32] With Python 2 end-oflife,
only Python 3.5.x[33] and later are supported.
Python interpreters are available for many operating systems. A global community of programmers
develops and maintains C Python, an open source[34] reference implementation. A non-profit
organization, the Python Software Foundation, manages and directs resources for Python and C
Python developmen
• Simple: Python is a simple and minimalistic language. Reading a good Python program
feels almost like reading English, although very strict English! This pseudo-code nature
of Python is one of its greatest strengths. It allows you to concentrate on the solution to
the problem rather than the language itself.
• Easy to Learn: As you will see, Python is extremely easy to get started with. Python has
an extraordinarily simple syntax, as already mentioned.
• Free and Open Source: Python is an example of a FLOSS (Free/Libré and Open Source
Software). In simple terms, you can freely distribute copies of this software, read its
source code, make changes to it, and use pieces of it in new free programs. FLOSS is
based on the concept of a community which shares knowledge. This is one of the reasons
why Python is so good - it has been created and is constantly improved by a community
who just want to see a better Python.
• High-level Language: When you write programs in Python, you never need to bother
about the low-level details such as managing the memory used by your program, etc.
• Portable: Due to its open-source nature, Python has been ported to (i.e. changed to make
it work on) many platforms. All your Python programs can work on any of these
platforms without requiring any changes at all if you are careful enough to avoid any
systemdependent features.You can use Python on GNU/Linux, Windows, FreeBSD,
Macintosh, Solaris, OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/OS, Palm OS, QNX,
VMS, Psion, Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE and
PocketPC!. You can even use a platform like Kivy to create games for your computer and
for iPhone, iPad, and Android.
files, cryptography, GUI (graphical user interfaces), and other system-dependent stuff.
Remember, all this is always available wherever Python is installed. This is called the
Batteries Included philosophy of Python. Besides the standard library, there are various
other high-quality libraries which you can find at the Python Package Index.
ANACONDA
OpenCV
libraries such as Viola-Jones or Haar classifier, LBPH (Lower Binary Pattern histogram) face
recognizer, Histogram of oriented gradients (HOG).
3.2 FUNCTIONAL REQUIREMENTS
Automated criminal identification by face recognition requires a set of functional
requirements to ensure that it operates effectively and efficiently. Functional requirements are
as follows:
Face detection: The system should be able to detect human faces in images or videos
accurately and reliably.
Face recognition: The system should be able to compare the detected faces with a
database of known criminal faces and identify matches.
Performance and accuracy: The system should be able to perform quickly and
accurately, even in challenging lighting conditions, such as low light or high contrast.
Scalability: The system should be scalable to handle a large number of images and video
footage and be able to handle a high volume of queries.
Integration: The system should be able to integrate with existing law enforcement
databases and systems.
Security: The system should have robust security measures in place to protect the
privacy and confidentiality of the data, such as encryption and secure storage.
Auditability: The system should keep a detailed audit trail of all queries and results,
allowing for transparency and accountability.
Training and maintenance: The system should have a training program for users and
regular maintenance to ensure its continued functionality.
Legal compliance: The system should comply with all relevant legal and regulatory
requirements, such as data protection laws and human rights.
Error handling: The system should be able to handle errors and provide clear feedback
to users when there is a problem, such as a failed match or technical issues.
Accuracy: The system must be highly accurate in identifying individuals to prevent false
positives or false negatives.
Speed: The system must be able to identify individuals quickly to allow for timely
interventions and to avoid delays in law enforcement.
Scalability: The system should be able to handle a large volume of facial images without
any degradation in performance.
Security: The system must be secure to prevent unauthorized access to the data and
prevent hacking or tampering.
Privacy: The system must comply with privacy laws and regulations, such as data
protection laws, to protect the privacy of individuals.
Reliability: The system must be reliable and able to function consistently and without
errors over extended periods.
Usability: The system should be user-friendly and easy to use, even for non-technical
users.
Interoperability: The system should be able to integrate with other systems and
technologies used by law enforcement agencies.
Accessibility: The system should be accessible to users with disabilities, such as those
who are visually impaired.
Maintainance: The system should be easy to maintain and update to ensure it stays.
A sequence diagram is a type of UML diagram that shows the interactions between
objects or components in a system in a sequential manner. Here is an explanation of a possible
sequence diagram for automated criminal identification by face recognition.
The process starts when a suspect is brought in for questioning or their face is captured by a
surveillance camera.The face image is captured and sent to the face recognition system.The face
recognition system uses a database of known criminal faces to compare the captured image
with.The system generates a list of possible matches based on the comparison results.The
system ranks the possible matches based on the level of similarity between the captured image
and the known criminal faces.The system returns the ranked list of possible matches to the
operator. The operator reviews the results and selects the most likely match from the list.The
system displays additional information about the selected match, such as criminal records,
photos, and other relevant data.The operator confirms whether the match is correct or not.If the
match is confirmed, the system generates a report and alerts law enforcement officers or other
authorities about the match.
If the match is not confirmed, the system continues to search the database for other possible
matches, or the operator can choose to end the process. Overall, it shows how automated
criminal identification by face recognition works by capturing a suspect's face, comparing it
with a database of known criminal faces, and generating a ranked list of possible matches for
human review and confirmation.
Maintenance: The system should be easy to maintain and update to ensure it stays
Consider a 5 x 5 whose image pixel values are 0, 1 and filter matrix 3 x 3 as shown in below
STRIDES
Stride is the number of pixels shifts over the input matrix. When the stride is 1 then we
move the filters to 1 pixel at a time. When the stride is 2 then we move the filters to 2 pixels at a
time and so on. The below figure shows convolution would work with a stride of 2.
PADDING
Sometimes filter does not fit perfectly fit the input image. We have two options:
• Drop the part of the image where the filter did not fit. This is called valid padding which
keeps only valid part of the image.
ReLU stands for Rectified Linear Unit for a non-linear operation. The output is ƒ(x) =
max(0,x). Why ReLU is important ReLU’s purpose is to introduce non-linearity in our
ConvNet. Since, the real world data would want our ConvNet to learn would be non-negative
linear values.
There are other non linear functions such as tanh or sigmoid that can also be used instead of
ReLU. Most of the data scientists use ReLU since performance wise ReLU is better than the
other two.
POOLING LAYER
Pooling layers section would reduce the number of parameters when the images are too large.
Spatial pooling also called subsampling or down sampling which reduces the dimensionality of
each map but retains important information. Spatial pooling can be of different types:
• Max Pooling
• Average Pooling
• Sum Pooling
Max pooling takes the largest element from the rectified feature map. Taking the largest element
could also take the average pooling. Sum of all elements in the feature map call as sum pooling .
In the above diagram, the feature map matrix will be converted as vector (x1, x2, x3, ...).
With the fully connected layers, we combined these features together to create a model. Finally,
we have an activation function such as softmax or sigmoid to classify the outputs as cat, dog,
car, truck etc.,
INTEGRAL IMAGE
The integral image is defined as the summation of the pixel values of the original image. The
value at any location (X, Y) of the integral image is the sum of the image’s pixels above and to the
left of location (X, Y).
HAAR FEATURES
A simple rectangular Haar-like feature can be defined as the difference of the sum of
pixels of areas inside the rectangle, which can be at any position and scale within the original
image. This modified feature set is called 2- rectangle feature.Faces are scanned and searched
for Haar features of the current stage. The weight and size of each feature and the features
themselves are generated using a machine learning algorithm. The weights are constants
generated by the learning algorithm. There are a variety of forms of features as seen below.
Each Haar feature has a value that is calculated by taking the area of each rectangle,
multiplying each by their respective weights, and then summing the results . The area of each
rectangle is easily found using the integral image. The coordinate of the any corner of a
rectangle can be used to get the sum of all the pixels above and to the left of that location using
the integral image. By using each corner of a rectangle, the area can be computed quickly. Since
A is subtracted off twice it must be added back on to get the correct area of the rectangle. The
area of the rectangle R, denoted as the rectangle integral, can be computed as follows using the
locations of the integral image: C + A - B - D.
Areas of white and black regions are multiplied by their respective weights and then
summed up to get the Haar feature value.
FIG 18: Calculating the area of a R is done using the corner of the rectangle: C + A - B - D.
CASCADE
The Viola and Jones face detection algorithm eliminates face candidates quickly using a
cascade of stages. The cascade eliminates candidates by making stricter requirements in each
stage with later stages being much more difficult for a candidate to pass. Candidates exit the
cascade if they pass all stages or fail any stage. A face is detected if a candidate passes all stages.
CHAPTER 5
SYSTEM IMPLEMENTATION
5.1 MODULES
A. Import the required modules
The Modules required to perform the facial recognition are cv2, os, image module and
numpy. cv2 is the OpenCV module and contains the functions for face detection and
recognition. OS will be used to maneuver with image and directory names. First, we use this
module to extract the image names in the database directory and then from these names
individual number is extracted, which is used as a label for the face in that image. Since, the
dataset images are in gif format and as of now, OpenCV does not support gif format, Image
module from PIL is used to read the image in grayscale format. Numpy arrays are used to store
the images.
The next step involves creating the face recognizer object. The face recognizer object has
functions like FaceRecognizer.train() to train the recognizer and FaceRecognizer.predict() to
recognize a face . OpenCV currently provides Eigenface Recognizer, Fisherface Recognizer and
Local Binary Patterns Histograms(LBPH) Face Recognizer. We have used LBPH recognizer
because extracting local features from images. The idea is to not look at the whole image as a
high-dimensional vector but describe only local features of an object. The basic idea of Local
Binary Patterns is to summarize the local structure in an image by comparing each pixel with its
neighbourhood. LBP operator is robust against monotonic gray scale transformations.
To create the function to prepare the training set, we will define a function that takes the
absolute path to the image database as input argument and returns tuple of 2 list, one containing
the detected faces and the other containing the corresponding label for that face. For example, if
th
the i index in the list of faces represents the 4th individual in the database, then the
th
corresponding i location in the list of labels has value equal to 4. Now to perform the training
using the Face Recognizer. Train function. It requires 2 arguments, the features which in this
case are the images of faces and the corresponding labels assigned to these faces which in this
case are the individual number that we extracted from the image names.
E. Testing
For testing the Face Recognizer, we check if the recognition was correct by seeing the
predicted label when we bring the trained face in front of camera. The label is extracted using the
os module and the string operations from the name of the sample images folder.
UNIT TESTING
Unit testing is the testing of each module and the integration of the overall system is done.
Unit testing becomes verification efforts on the smallest unit of software design in the
module. This is also known as ‘module testing’. The modules of the system are tested
separately. This testing is carried out during the programming itself. In this testing step,
each model is found to be working satisfactorily as regard to the expected output from the
module. There are some validation checks for the fields. For example, the validation
check is done for verifying the data given by the user where both format and validity of
the data entered is included. It is very easy to find error and debug the system.
INTEGRATION TESTING
Data can be lost across an interface, one module can have an adverse effect on the other sub
function, when combined, may not produce the desired major function. Integrated testing is
systematic testing that can be done with sample data. The need for the integrated test is to find
the overall system performance. There are two types of integration testing. Bottom-up
integration testing.
Data can be lost across an interface, one module can have an adverse effect on the other sub
function, when combined, may not produce the desired major function. Integrated testing is
systematic testing that can be done with sample data. The need for the integrated test is to find
the overall system performance. There are two types of integration testing. They are:
• Top-down integration testing.
White Box testing is a test case design method that uses the control structure of the procedural
design to drive cases. Using the white box testing methods, we Derived test cases that guarantee that
all independent paths within a module have been exercised at least once.
2. Interface error
4. Performance errors
5. Initialization and termination errors.
VALIDATION TESTING
After the culmination of black box testing, software is completed assembly as a package,
interfacing errors have been uncovered and corrected and final series of software validation tests
begin validation testing can be defined as many But a single definition is that validation succeeds
when the software functions in a manner that can be reasonably expected by the customer.
CHAPTER 6
RESULTS
A. Homepage
Homepage is the main page of Criminal Identification System application. It contains three
buttons for: Register Criminal, Detect Criminal and Video Surveillance.
Criminal Registration page will ask the user to select atleast 5 images of the criminal that
needs to be registered and also provides input form for providing various details of the criminal
like his Name, DOB, Identification mark,image etc. After selecting images and filling details,
user will click register. The criminal will be successfully registered if any error doesn’t occur.
E. Video Survelliances
This page will use the pc webcam to capture the video frames in real time. After this it
will use face detection module on each frame to detect and recognize criminals in the video
in real time.
6.1 EVALUATION
Automated criminal identification by face recognition is a technology that uses
algorithms to match faces captured in images or videos with a database of known criminal
faces. This technology has been increasingly adopted by law enforcement agencies around the
world as a tool to identify and apprehend criminals.
The evaluation of automated criminal identification by face recognition involves several key
factors, including:
Accuracy: The accuracy of the face recognition system is the most critical factor in
evaluating its effectiveness. The system's accuracy is measured by comparing its results
against a known set of data and determining the number of correct and incorrect
matches. The accuracy rate should be high enough to ensure that false positives
(incorrect matches) and false negatives (missed matches) are minimized.
Bias: The system's accuracy should not be affected by any biases, such as race, gender,
or age. The system should be trained on a diverse dataset that includes faces from
different ethnicities, genders, and age groups to avoid bias in the system's output.
Privacy: The use of facial recognition technology raises concerns about privacy. The
evaluation of such a system should include an assessment of the system's compliance
with privacy regulations and its potential impact on individuals' privacy rights.
Transparency: The system's decision-making process should be transparent to ensure
accountability and fairness. The evaluation should include an assessment of the system's
ability to explain its decisions and provide users with a clear understanding of how the
system works.
Cost-effectiveness: The cost of implementing and maintaining a face recognition system
should be evaluated to ensure that the benefits outweigh the costs.
6.2 DISCUSSION
Automated criminal identification by face recognition is a technology that uses artificial
intelligence and machine learning algorithms to analyze images or videos of a person's face and
match them with a database of known criminals or suspects. The technology is becoming
increasingly prevalent in law enforcement and other security settings, and it has generated a lot
of controversy and debate. Proponents of automated criminal identification argue that the
technology can be an effective tool for catching criminals and making communities safer. They
point to examples of successful prosecutions and convictions that have been aided by facial
recognition technology. They also argue that the technology can help law enforcement quickly
identify dangerous individuals in situations where time is of the essence, such as during a
terrorist attack or mass shooting.
The Opponents of automated criminal identification, however, have raised concerns about
privacy, accuracy, and bias. They argue that the technology can be used to unfairly target
marginalized communities, as studies have shown that facial recognition algorithms are often
less accurate when used on people with darker skin tones. Critics also point out that facial
recognition technology can be easily abused, particularly in countries with authoritarian regimes
or weak legal protections for citizens' rights.Overall, the discussion of automated criminal
identification by face recognition is complex and multifaceted. While the technology has the
potential to be a powerful tool for law enforcement, it also raises important questions about
privacy, accuracy, and bias that must be carefully considered and address.
CONCLUSIONS
Our project successfully detects and recognizes criminal faces in both images and
realtime video streams. For face detection, we employed the Haar feature-based cascade
classifiers in the OpenCV approach. This method employs a machine learning-based approach
where a cascade function is trained using positive and negative images, which is then used to
detect objects in other images. Additionally, we used Local Binary Patterns Histograms
(LBPH) for face recognition. The algorithm we used has several advantages, such as efficient
feature selection, ascale and location-invariant detector that scales the features rather than the
image itself, and the potential for a generic detection scheme that can be trained for the
detection of other objects, such as cars, signboards, and number plates. LBPH can efficiently
recognize faces in varying lightingconditions and even with a single training image per person,
with high accuracy. There are somelimitations to our application. The detector is most
effective only on frontal images of faces and struggles to cope with 45° face rotations around
both the vertical and horizontal axes.
FUTURE SCOPE
In future advanced face recognition techniques can be used to improve the results and login
page must be created so that any police personnel can access this application remotely. Moreover if a
criminal is found in a particular zone then alert messages should be send to nearby police stations.
The application that is developed is a simple and user friendly. By using advanced CSS styles and
different front-end technologies, interface of the application can be developed more according to
user requirements.
REFERENCES
[1]. Alireza Chevelwalla , Ajay Gurav , Sachin Desai , Prof. Sumitra Sadhukhan “Criminal
Face Recognition System” International Journal of Engineering Research & Technology
(IJERT) Vol. 4 Issue 03, March-2015
[2]. Belhumeur, P. N., Hespanha, J. P., & Kriegman, D. J. (1997). Eigenfaces vs. Fisherfaces:
Recognition Using Class Specific Linear Projection. IEEE Transactions on Pattern Analysis
and Machine Intelligence. 19, pp. 711-720. IEEE Computer Society
[3]. Bornet, O. (2005, May 19). Learning Based Computer Vision with Intel's Open Source
Computer Vision Library. Retrieved April 2007, 2007, from Intel.com Website:
http://www.intel.com/technology/itj/2005/volume09issue02/art03_learning_vis
ion/p04_face_dete ction.htm
[4]. Brunelli, R., & Poggio, T. (1993). Face Recognition: Features versus templates. IEEE
Transaction on Pattern Analysis and Machine Intelligence , 15 (10), 1042- 1052.
[5]. Viola, P. and Jones, M. Rapid object detection using boosted cascade of simple features.
IEEE Conference on Computer Vision and Pattern Recognition, 2001.
[6]. P. Viola and M. Jones. Robust Real-time Object Detection. International Journal of
Computer Vision, 57(2):137–154,2002. https://en.wikipedia.org/wiki/Cascading_classifiers
[7]. Open Computer Vision Library Reference Manual. Intel Corporation, USA, 2001.
[9]. Ole Helvig Jensen “Implementing the Viola-Jones Face Detection Algorithm”
[10]. Rabia Jafri* and Hamid R. Arabnia* A Survey of Face Recognition Techniques [11].
Face Recognition- NSTC Committee on Technology Committee on Homeland and National
Security Subcommittee on Biometrics.
[13].Nurul Azma Abdullah, Md. Jamri Saidi and Nurul Hidayah Ab Rahman “Face recognition
for criminal identification: An implementation of principal component analysis for face
recognition”The 2nd International Conference on Applied Science and Technology 2017
(ICAST’17)
[16].Mantoro, T., Ayu, M. A., & Suhendi. (2018).” MultiFaces Recognition Process Using
Haar Cascades and Eigenface Methods” 2018 6th International Conference on Multimedia
Computing and Systems (ICMCS).
[18].MING Ju-wang (2018), “Face Feature Dynamic Recognition Method Based on Intelligent
Image”. International Conference on Virtual Reality and Intelligent Systems
[19].Mohd Yusuf Firoz Siddiqui and Sukesha (2015), “Face Recognition using Original and
Symmetrical Face Images”. 1st International Conference on Next Generation Computing
Technologies (NGCT-2015)
[20].Hyung-Il Kim, Seung Ho Lee, and Yong Man R (2015), “Face Image Assessment
Learned With Objective and Relative Face Image Qualities for Improved Face Recognition ”
Abstract- In practice, identification of criminal in Malaysia is done through thumbprint identification. However, this type of
identification is constrained as most of criminal nowadays getting cleverer not to leave their thumbprint on the scene with the
advent of security technology, cameras especially CCTV have been installed in many public and private areas to provide
surveillance activities. The footage of the CCTV can be used to identify suspects on scene. However, because of limited software
developed to automatically detect the similarity between photo in the footage and recorded photo of criminals, the law enforces
thumbprint identification. In this paper, an automated facial recognition system for criminal database was proposed using
known Principal Component Analysis approach. This system will be able to detect face and recognize face automatically. This
will help the law enforcements to detect or recognize suspect of the case if no thumbprint present on the scene. The results
show that about 80% of input photo can be matched with the template data.
© 2023 IJSRET
423
International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X
INTRODUCTION
Over the years, a lot of security approaches have been developed that help in keeping confidential data secured
and limiting the chances of a security breach. Face recognition which is one of the few biometric methods that
possess the merits of both high accuracy and low intrusiveness is a computer program that uses a person’s face
to automatically identify and verify the person from a digital image or a video frame from a video source.
It compares selected facial features from the image and a face database or it can also be a hardware which used
to authenticate a person. This technology is a widely used biometrics system for authentication, authorization,
verification and identification. A lot of company has been using face recognition in their security cameras,
access controls and many more. Facebook has been using face recognition in their website for the purpose of
creating a digital profile for the people using their website. In developed countries, the law enforcement create
face database to be used with their face recognition system to compare any suspect with the database.
In other hand, in Malaysia, most cases are investigated by using thumbprint identification to identify any
suspect for the case. However, because of unlimited knowledge through internet usage, most criminals are
aware of thumbprint identification. Therefore, they become more cautious of leaving thumbprint by wearing
gloves except for non premeditated crimes. This paper to propose a facial recognition system for a criminal
database where the identification of the suspect is done by face matched rather than thumbprint matched.
LITERATURE REVIEW
In this paper, the authors are taking help of the CCTV footage and comparing the images from the footage with
criminal database if they didn’t find any fingerprint from the crime scene.
This system consists of five stages where the first stage is planning in which the why and how the system is
made are discussed. The second stage of Requirement analysis discussed the requirement to design the system.
Design, the third stage where they defined system design and its workflow. The fourth ultimate important stage
is Implementation and testing, system is implemented using Principal Component Analysis (PCA) Technique
and tested. The last stage is maintenance; this phase hadn’t undertaken due to this system was developed in a
controlled environment. For criminal identification, authors had used PCA Technique for finding similar
features of images available in the database with captured images of footage.
The machine will use a database that contains the person's personal information so that if FRCI identifies a
face, it can display the person's information. The system interface is implemented using Visual Studio Code
and database and coding using MATLAB R2013b. They achieved 80% accuracy using the proposed model.
This paper consists of four steps, the first one is real-time image training and the second one is Harr-classifier
using for face detection. The third step is the comparison of Surveillance camera captured images with realtime
images and last, is the result part based on the comparison. The authors are using the Haar-classifier on Open-
CV for face detection; Haar-cascading is one of the algorithms for face detection. On the openCV platform,
face tracking is taken with help of Harr-like classifiers. More than one person is identified in this system and it
can be used to find the suspects whom we are finding. The accuracy of the proposed system is very high as
compared to the previous model. They also told us that we use or Adhar database we can easily identify the
Indians and foreigners and further can investigate whether a person is a criminal or not. We can use this system
by taking the citizenship database which is already available.
1. Face Detection:
The first step is to check that human faces should be close enough to detect the faces this faces which will be
captured and stored the face alignment which take place to capture faces from different angles automatically
and it starts preprocessing the faces which can be used for image and video classification.
2. Feature Extraction:
After the detection, the faces are extracted and they are stored the extraction will be carried out for every
different expression and feature extraction is done to remove dimensionality reduction and noise.
3. Face Recognition:
This is the last step which the automatic face recognition is done through the database were each face are stored
in it when the face is detected in front of the webcam we use face detection and feature extraction and match
that face with the database identification tells us that given face system needs to identify and verify it.
PLANING
Planning phase is where the system is being planned, why and how the system will be made are also discussed
in this phase. It is divided into two steps as follows:
1. Project Initiation:
A preliminary analysis is undertaken about how to collect face images to be used as the template to the system.
2. Project Planning:
Determining the correct technique/ software to do the detection
and recognition
3. Requirement Analysis:
Requirement analysis describes the analysis that is required in order to develop the proposed system through
functional requirements and non- functional requirements. Functional requirements outline what the system
should do and support the user activities in performing and completing tasks by using the proposed FRCI. The
list below shows the functional requirements for FRCI. x The system allows the user to log in by using
username and password given default as “admin”. x The system allow user to input image to be matched. x
The system allows image to be compared.
x The system provide matching event if the input has more than 70% similarity with the image in the face
database. The non-functional requirements describe the FRCI’s security implementation that includes
authentication by login, PCA and Eigenface algorithm.
DESIGN
System design defines the architecture, components, modules, interfaces and data for a system requirement.
Figure 1 presents the overall system design of Facial Recognition.
According to Figure 1, the first step is to create face databases as the match template for the system. A face
database is created by acquiring collection of people photos. The photo should be half body photo where the
face is facing front. In the process of verification of id for an image, the image which is captured using digital
camera will be processed. The image will be detected and extracted and ready for the next stage. The next stage
is pre- processing, where unnecessary features are eliminated.
This is to reduce unnecessary processing effort. In the feature extraction, the images are collected from the
database and represent it as a vector, then the algorithm will find the average face vector or the mean and it will
subtract the mean face from each sample faces. All these photos then are processed using PCA procedures to
get the Eigenface as the basis or standard features of human face. These features will be used in recognition
phase where it try to match with the correct image in the database. If matched, the identification of the image
will be verified, else it will stop.
The main function of Facial Recognition— image identification, was programmed with detection and
extraction of image, projecting image and recognition of the image. The user needs to input the image for
identification for recognition process as shown in Figure 1. Once the image is recognized, detected and
extracted, all the necessary features are extracted for identification.
The main function of Facial Recognition — image identification, was programmed with detection and
extraction of image, projecting image and recognition of the image. The user need to input the image for
identification for recognition process as shown in once the image is recognized, detected and extracted; all the
necessary features are extracted for identification.
Furthermore, since Criminal Facial Recognition is developed as an open source system, other experienced
developer or amateur programmer can add new function to the system with ease. Also, they will be able to
give it new design and even improve its recognition algorithm. Its simple design also makes it easier to use.
Overall, there are several advantages that have been identified as follows:
• As a better alternative for criminal identification instead of using thumb print identification.
• Automate most of the identification activities. For instance, criminal photo captured through CCTV just
need to feed into the system for identification. The system will then run automatically from recognizing,
detecting and extracting the image, features extraction and identification activities.
Additionally, the system can feature an image processing where the input image can be made less blurry so the
system can detect face on lower quality images. Other than that, the system can use a database which contains
the personal info of the person in the database, so whenever FRCI recognize a face, it will display the details
about the person.
REFERENCES
6.1