0% found this document useful (0 votes)
25 views

Report Final

Uploaded by

uzma basapur
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Report Final

Uploaded by

uzma basapur
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 75

TABLE OF CONTENTS

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

SL.NO Figure Name Page no


1 Python Language 09

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.

Criminal identification can be done in two ways ,

A) Manual Identification System (MIS)

B) Automated Identification System (AIS)

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 1


CRIMINAL FACE DETECTION USING MACHINE LEARNING

1.2 PROBLEM STATEMENT

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.

DISADVANTAGES OF EXISTING SYSTEM


 Existing system inefficient to process large volume of data.

 More training time.

 The process is implemented without removing the noise.

 Prediction is not accurate.


1.3 OBJECTIVES AND CONTRIBUTION

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 2


CRIMINAL FACE DETECTION USING MACHINE LEARNING

1.4 SCOPE OF THE PROJECT


The scope of automated criminal identification by face recognition is broad and can be applied in
various contexts.
 Law enforcement: This is the primary area where automated criminal identification by
face recognition is used. Law enforcement agencies can use the technology to identify
suspects captured on surveillance cameras, social media, or other sources and match
them with the faces of known criminals in police databases.
 Border security: Facial recognition technology can also be used to verify the identity of
travelers at border crossings, airports, and other entry points. This can help to prevent
individuals with criminal histories or fraudulent identities from entering a country.
 Access control: Facial recognition technology can be used to control access to secure
areas, such as government buildings, corporate offices, or private homes. This can help
to prevent unauthorized access by individuals with criminal histories or fraudulent
identities.
 Marketing and advertising: Some companies use facial recognition technology to track
customer demographics and behavior to target them with personalized marketing
messages or to measure the effectiveness of their advertising campaigns.

The scope of automated criminal identification by face recognition is continuously


expanding, and its potential applications are still being explored. However, the use of the
technology also raises ethical, legal, and social implications that need to be addressed.

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

VSMSRKIT,NIPANI | DEPT OF CSE Page 3


CRIMINAL FACE DETECTION USING MACHINE LEARNING

the classifier, which can extract the facial features and classify them automatically. And
the Dropout method is used to solve the over- fitting problem.

 Musab Coúkun, et al. [2] proposed "Face Recognition Based on Convolutional


Neural Network"
Face recognition is the process of recognizing the face of a relevant person by a
vision system. It has been a crucial human-computer interaction tool due to its usage in
security systems, access-control, video surveillance, commercial areas and even it is used
in social networks like Facebook as well. After rapid development of artificial
intelligence, face recognition has once again attracted attention due to its nonintrusive
nature and since it is main method of person identification for human when it is compared
with other types of biometric techniques. Face recognition can be easily checked without
the subject person’s knowledge in an uncontrolled environment.

 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.

 Proposed “An implementation of principal component analysis for face recognition”


Face Recognition for Criminal Identification is a face recognition system in which
the security expert will input an image of the person in question inside the system and the
system will first preprocess the image which will cause unwanted elements such as noise
to be removed from the image. After that, the system will then classify the image based
on its landmarks for example, the distance between the eyes, the length of the jaw line,
etc. Then, the system will run a search through the database to find its perfect match and
display the output. This work is focusing on implementing the system for criminal
identification. Current practice of thumbprint identification which is simple and easy to
be implemented can be challenge by the use of latent thumbprint and sometimes cannot

VSMSRKIT,NIPANI | DEPT OF CSE Page 4


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

 "Facial Recognition Technology and Law Enforcement: Ensuring Accountability and


Transparency"
It is able to detect and recognize faces of the criminals in an image and in a video
stream obtained from a camera in real time. We 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, we have used Local Binary Patterns
Histograms(LBPH) for face recognition.

VSMSRKIT,NIPANI | DEPT OF CSE Page 5


CRIMINAL FACE DETECTION USING MACHINE LEARNING


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

VSMSRKIT,NIPANI | DEPT OF CSE Page 6


CRIMINAL FACE DETECTION USING MACHINE LEARNING


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.

 T. Laufer et al [7] proposed "Facial Recognition Technology and Law


Enforcement: Ensuring Accountability and Transparency"
It is able to detect and recognize faces of the criminals in an image and in a video
stream obtained from a camera in real time. We 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, we have used Local Binary Patterns
Histograms(LBPH) for face recognition.

 Ayappan et al [8] proposed "Criminal Identification System using Facial


Recognition" The identification of criminals and terrorists is a primary task for police,
military and security forces.The terrorist activities and crime rate had increased
abnormally. Combating them is a challenging task for all security departments.
Presently, these departments are using latest technologies. But they have not enough
efficient and accuracy as they expected This research study is based on the analysis of
faces, emotions, Ages and genders to identify the suspects. Face recognition, emotion,
age and gender identifications are implemented using deep learning based CNN
approaches. Suits identification is based on LeNet architecture. In the implementation
phase for the classification purpose, Keras deep learning library is used, which is
implemented on top of Tensorflow. IMDB is the dataset used for the whole training
purpose.
Mr.R.Prashanth Kumar et al. [9] proposed “Real-Time Criminal Identification
System Based On Face Recognition”
After considering all the facts present in introduction section, we did research in
different applications and came up with a solution. Real-time criminal identification system will
help police to control crime rate. This application helps them in many different ways. With the
advancement in security technology and installation of cameras throughout the public areas, it

VSMSRKIT,NIPANI | DEPT OF CSE Page 7


CRIMINAL FACE DETECTION USING MACHINE LEARNING


will become easier for police personnel to monitor, track and find criminals from police control

room using this application.

 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

VSMSRKIT,NIPANI | DEPT OF CSE Page 8


CRIMINAL FACE DETECTION USING MACHINE LEARNING


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.

 Nurul Azma Abdullah, et al [13 ]Proposed “An implementation of principal


component analysis for face recognition”
Face Recognition for Criminal Identification is a face recognition system in which the
security expert will input an image of the person in question inside the system and the system
will first preprocess the image which will cause unwanted elements such as noise to be
removed from the image. After that, the system will then classify the image based on its
landmarks for example, the distance between the eyes, the length of the jaw line, etc. Then,
the system will run a search through the database to find its perfect match and display the
output. This work is focusing on implementing the system for criminal identification. Current
practice of thumbprint identification which is simple and easy to be implemented can be
challenge by the use of latent thumbprint and sometimes cannot 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.

 Alireza Chevelwalla et al [14] proposed “Criminal Face Recognition System”

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

VSMSRKIT,NIPANI | DEPT OF CSE Page 9


CRIMINAL FACE DETECTION USING MACHINE LEARNING

 Nagnath B. Aherwadi et al [15] proposed “Criminal Identification System using Facial


Recognition”
Face is a unique and crucial part of the human body structure that identifies a
person. Therefore, we can use it to trace the identity of a criminal person. With the
advancement in technology, we are placed CCTV at many public places to capture the
criminal’s crime.
Using the previously captured faces and criminal’s images that are available in the police
station, the criminal face recognition system of can be implemented. In this paper, we
propose an automatic criminal identification system for Police Department to enhance
and upgrade the criminal distinguishing into a more effective and efficient approach.
Using technology, this idea will add plus point in the current system while bringing
criminals spotting to a whole new level by automating tasks. Technology working behind
it will be face recognition, from the footage captured by the CCTV cameras; our system
will detect the face and recognize the criminal who is coming to that public place. The
captured images of the person coming to that public place get compared with the criminal
data we have in our database. If any person’s face from public place matches, the system
will display their image on the system screen and will give the message with their name
that the criminal is found and present in this public place. This system matching more
than 80% of the captured images with database images.

CHAPTER 3
REQUIREMENTS ANALYSIS

3.1 SYSTEM REQUIREMENTS SPECIFICATIONS

3.1.1 Hardware Specifications:

 Processor : I3/Intel Processor

 RAM :4GB(min)

 Hard Disk :128 GB

 Key Board : Standard Windows

3.1.2 Software Specifications:

• Operating System : Windows 10

VSMSRKIT,NIPANI | DEPT OF CSE Page 10


CRIMINAL FACE DETECTION USING MACHINE LEARNING

• Server-side Script : Python 3.6 +

• IDL : Jupiter Notebook

• Libraries Used : Pandas, NumPy, Sci-Kit Learn, Matplotlib, Seaborn, OpenCV

.
SOFTWARE USED:

 PYTHON LANGUAGE

FIG 1: PYTHON

Python is an interpreted high-level general-purpose programming language. Python's


design philosophy emphasizes code readability with its notable use of significant indentation.
Its language constructs as well as its object-oriented approach aim to help programmers write
clear, logical code for small and large-scale projects. Python is dynamically-typed and garbage-
collected. It supports multiple programming paradigms, including structured (particularly,
procedural), object-oriented and functional programming. Python is often described as a
"batteries included" language due to its comprehensive standard library.

INTRODUCTION:

Python is an interpreted, high-level, general-purpose programming language. Created by


Guido van Rossum and first released in 1991, Python’s design philosophy emphasizes code
readability with its notable use of significant whitespace. Its language constructs and object-
oriented approach aim to help programmers write clear, logical code for small and large-scale
projects Python is dynamically typed and garbage-collected. It supports multiple programming
paradigms, including structured object-oriented, and functional programming. Python is often
described as a “batteries included” language due to its comprehensive standard library.

VSMSRKIT,NIPANI | DEPT OF CSE Page 11


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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

FEATURES AND PHILOSOPHY

• 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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 12


CRIMINAL FACE DETECTION USING MACHINE LEARNING

• 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.

• Interpreted: A program written in a compiled language like C or C++ is converted from


the source language i.e. C or C++ into a language that is spoken by your computer (binary
code i.e. 0s and 1s) using a compiler with various flags and options. When you run the
program, the linker/loader software copies the program from hard disk to memory and
starts running it.Python, on the other hand, does not need compilation to binary. You just
run the program directly from the source code. Internally, Python converts the source
code into an intermediate form called byte codes and then translates this into the native
language of your computer and then runs it. All this, actually, makes using Python much
easier since you don't have to worry about compiling the program, making sure that the
proper libraries are linked and loaded, etc.
• Object Oriented: Python supports procedure-oriented programming as well as object-
oriented programming. In procedure-oriented languages, the program is built around
procedures or functions which are nothing but reusable pieces of programs. In object-
oriented languages, the program is built around objects which combine data and
functionality. Python has a very powerful but simplistic way of doing OOP, especially
when compared to big languages like C++ or Java.
• Extensible: If you need a critical piece of code to run very fast or want to have some
piece of algorithm not to be open, you can code that part of your program in C or C++
and then use it from your Python program.
• Embeddable: You can embed Python within your C/C++ programs to give scripting
capabilities for your program's users.
• Extensive Libraries: The Python Standard Library is huge indeed. It can help you do
various things involving regular expressions, documentation generation, unit testing,
threading, databases, web browsers, CGI, FTP, email, XML, XML-RPC, HTML, WAV
VSMSRKIT,NIPANI | DEPT OF CSE Page 13
CRIMINAL FACE DETECTION USING MACHINE LEARNING

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

FIG 2: ANACONDA IDLE

Anaconda is a distribution of the Python and R programming languages for scientific


computing (data science, machine learning applications, large-scale data processing, predictive
analytics, etc.), that aims to simplify package management and deployment. The distribution
includes data-science packages suitable for Windows, Linux, and macOS. It is developed and
maintained by Anaconda, Inc., which was founded by Peter Wang and Travis Oliphant in 2012.
As an Anaconda, Inc. product, it is also known as Anaconda Distribution or Anaconda
Individual Edition, while other products from the company are Anaconda Team Edition and
Anaconda Enterprise Edition, both of which are not free. Package versions in Anaconda are
managed by the package management system conda. This package manager was spun out as a
separate opensource package as it ended up being useful on its own and for other things than
Python. There is also a small, bootstrap version of Anaconda called Miniconda, which includes
only conda, Python, the packages they depend on, and a small number of other packages.

OpenCV

OpenCV is a library of programming functions mainly aimed at real-time computer vision.


It has a modular structure, which means that the package includes several shared or static
libraries. We are using image processing module that includes linear and non-linear image
filtering, geometrical image transformations (resize, affine and perspective warping, and generic
table-based remapping), color space conversion, histograms, and so on. Our project includes

VSMSRKIT,NIPANI | DEPT OF CSE Page 14


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 15


CRIMINAL FACE DETECTION USING MACHINE LEARNING

3.2 NON-FUNCTIONAL REQUIREMENTS


Automated criminal identification by face recognition involves the use of technology to
identify individuals who may have committed a crime by analyzing their facial features. In
addition to functional requirements, such as accuracy and speed of identification, there are also
non- functional requirements that must be considered. Some examples include:

 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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 16


CRIMINAL FACE DETECTION USING MACHINE LEARNING

CHAPTER 4 SYSTEM DESIGN


4.1 SYSTEM ANALYSIS

FIG 3: SYSTEM ARCHITECTURE

VSMSRKIT,NIPANI | DEPT OF CSE Page 17


CRIMINAL FACE DETECTION USING MACHINE LEARNING

Automated criminal identification by face recognition involves the use of computer


algorithms to analyze and match images of individuals' faces to a database of known criminals.
The architecture of this system typically consists of the following components:
 Image Acquisition: This component involves capturing facial images of individuals
through various means such as CCTV cameras, smartphone cameras, or specialized
cameras.
 Preprocessing: The images acquired may require preprocessing to ensure they meet
certain quality standards, such as removing noise or distortion, normalizing image
lighting, and adjusting image contrast.
 Face Detection: This component involves using computer vision algorithms to locate
and isolate the facial region of the image, which includes the eyes, nose, mouth, and
other facial features.
 Feature Extraction: This component involves analyzing the facial region to extract
unique features that are characteristic of an individual's face, such as the distance
between the eyes, the shape of the jawline, and the size and shape of the nose.
 Matching: This component involves comparing the extracted facial features of an
individual against a database of known criminals to identify potential matches. If match
is found it will display the criminal details of particular criminal, if not it will display
message box like no criminal is identified.
SEQUENCE DIAGRAME

VSMSRKIT,NIPANI | DEPT OF CSE Page 18


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 4: SEQUENCE DIAGRAME

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

USE CASE DIAGRAME

VSMSRKIT,NIPANI | DEPT OF CSE Page 19


CRIMINAL FACE DETECTION USING MACHINE LEARNING

ALGORITHMS  CONVOLUTIONAL NEURAL NETWORK (CNN)


In neural networks, Convolutional neural network (ConvNets or CNNs) is one of the main
categories to do images recognition, images classifications. Objects detections, recognition faces
etc., are some of the areas where CNNs are widely used.CNN image classifications takes an
input image, process it and classify it under certain categories (Eg., Dog, Cat, Tiger, Lion).
Computers sees an input image as array of pixels and it depends on the image resolution. Based
on the image resolution, it will see h x w x d( h = Height, w = Width, d = Dimension ). Eg., An
image of 6 x 6 x 3 array of matrix of RGB (3 refers to RGB values) and an image of 4 x 4 x 1
array of matrix of grayscale image.
Technically, deep learning CNN models to train and test, each input image will pass it through a
series of convolution layers with filters (Kernals), Pooling, fully connected layers (FC) apply
Softmax function to process an input image and classifies the objects based on values.

VSMSRKIT,NIPANI | DEPT OF CSE Page 20


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 6: Neural Network with Many Convolutional Layers


CONVOLUTION LAYER
Convolution is the first layer to extract features from an input image. Convolution
preserves the relationship between pixels by learning image features using small squares of input
data. It is a mathematical operation that takes two inputs such as image matrix and a filter or
kernel.

FIG 7: Image Matrix Multiplies Kernel or Filter Matrix

Consider a 5 x 5 whose image pixel values are 0, 1 and filter matrix 3 x 3 as shown in below

VSMSRKIT,NIPANI | DEPT OF CSE Page 21


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 8: Image Matrix Multiplies Kernel Or Filter Matrix


Then the convolution of 5 x 5 image matrix multiplies with 3 x 3 filter matrix which is
called “Feature Map” as output shown in below

FIG 9: 3 x 3 Output matrix


Convolution of an image with different filters can perform operations such as edge
detection, blur and sharpen by applying filters. The below example shows various convolution
image after applying different types of filters (Kernels).

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:

VSMSRKIT,NIPANI | DEPT OF CSE Page 22


CRIMINAL FACE DETECTION USING MACHINE LEARNING

• Pad the picture with zeros (zero-padding) so that it fits

• 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.

Non Linearity (ReLU)

FIG 10: Stride of 2 pixels

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 23


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 11: ReLU operation

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 .

VSMSRKIT,NIPANI | DEPT OF CSE Page 24


CRIMINAL FACE DETECTION USING MACHINE LEARNING

Figure 12: Max Pooling

FULLY CONNECTED LAYER

FIG 13: After Pooling Layer, Flatted As FC Layer

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,

VSMSRKIT,NIPANI | DEPT OF CSE Page 25


CRIMINAL FACE DETECTION USING MACHINE LEARNING

we have an activation function such as softmax or sigmoid to classify the outputs as cat, dog,
car, truck etc.,

FIG 14: Complete CNN architecture


 HAAR CLASSIFIER ALGORITHM
The face detection algorithm proposed by Viola and Jones .The face detection algorithm looks for
specific Haar features and not pixels of a human face . When one of these features is found, the
algorithm allows the face candidate to pass to the next stage of detection. A face candidate is a
rectangular section of the original image which is called as a sub-window. Generally, these sub
windows have a fixed size (typically 24×24 pixels). This sub-window is often scaled in order to
obtain a variety of different size faces. The algorithm scans the entire image with this window and
denotes each respective section a face candidate.

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).

VSMSRKIT,NIPANI | DEPT OF CSE Page 26


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 15: Integral Image Generation


The dark region represents the sum of the pixels up to position (X, Y) of the original image. It
shows a 3×3 image and its corresponding integral image representation.

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.

FIG 16: Common Haar Features

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

VSMSRKIT,NIPANI | DEPT OF CSE Page 27


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

FIG 17: Examples of Haar features.

Areas of white and black regions are multiplied by their respective weights and then
summed up to get the Haar feature value.

HAAR FEATURE CLASSIFIER


The cascade classifier contains a list of stages, where each stage consists of a list of weak
learners. The system detects the required object by moving a window over the image. Each
stage of the classifier labels the specific region defined by the current location of the window as
either positive or negative where positive means that an object was found and negative means
that the specified object was not found in the image. If the labelling yields a negative result,
then the classification of that particular region is over and the location of the window is moved
to the next location. If the labelling gives a positive result, then the region moves to the next
stage of classification. The classifier yields a final result as positive, when all the stages,
including the last one, yield a positive result, which implies that the required object is found in
the image.

VSMSRKIT,NIPANI | DEPT OF CSE Page 28


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 29


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 19: Cascade of 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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 30


CRIMINAL FACE DETECTION USING MACHINE LEARNING

B. Load the face detection Cascade


To Load the face detection cascade the first step is to detect the face in each image. Once we get
the region of interest containing the face in the image, we use it for training the recognizer. For the
purpose of face detection, we will use the Haar Cascade provided by OpenCV. The haar cascades
that come with OpenCV are located in the directory of OpenCV installation. haarcascade
frontalface default.xml is used for detecting the face. Cascade is loaded using the cv2
CascadeClassifier function which takes the path to the cascade xml file. if the xml file is in the
current working directory, then relative path is used.

C. Create the Face Recognizer Object

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.

D. Prepare the training set and Perform the training

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 31


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

5.2 SYSTEM TESTING


System testing is the stage of implementation, which aimed at ensuring that system works
accurately and efficiently before the live operation commence. Testing is the process of
executing a program with the intent of finding an error. A good test case is one that has a high
probability of finding an error. A successful test is one that answers a yet undiscovered error.
Testing is vital to the success of the system. System testing makes a logical assumption that if
all parts of the system are correct, the goal will be successfully achieved. . A series of tests are
performed before the system is ready for the user acceptance testing. Any engineered product
can be tested in one of the following ways. Knowing the specified function that a product has
been designed to from, test can be conducted to demonstrate each function is fully operational.
Knowing the internal working of a product, tests can be conducted to ensure that is the internal
operation of the product performs according to the specification and all internal components
have been adequately exercised.

 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

VSMSRKIT,NIPANI | DEPT OF CSE Page 32


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

• Bottom-up integration testing.

5.2.1 TESTING TECHNIQUES/STRATEGIES WHITE BOX 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.

BLACK BOX TESTING

1. Black box testing is done to find incorrect or missing function

2. Interface error

3. Errors in external database access

4. Performance errors
5. Initialization and termination errors.

In ‘functional testing’, is performed to validate an application conforms to its specifications of


correctly performs all its required functions. So this testing is also called ‘black box testing’. It
tests the external behaviour of the system. Here the engineered product can be tested knowing the
specified function that a product has been designed to perform, tests can be conducted to
demonstrate that each function is fully operational.

5.2.2 SOFTWARE TESTING STRATEGIES VALIDATION TESTING

 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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 33


CRIMINAL FACE DETECTION USING MACHINE LEARNING

 USER ACCEPTANCE TESTING


User acceptance of the system is the key factor for the success of the system. The system under
consideration is tested for user acceptance by constantly keeping in touch with prospective
system at the time of developing changes whenever required.
 OUTPUT TESTING
After performing the validation testing, the next step is output asking the user about the format
required testing of the proposed system, since no system could be useful if it does not produce
the required output in the specific format. The output displayed or generated by the system under
consideration. Here the output format is considered in two ways. One is screen and the other is
printed format. The output format on the screen is found to be correct as the format was designed
in the system phase according to the user needs. For the hard copy also output comes out as the
specified requirements by the user. Hence the output testing does not result in any connection in
the system.

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 34


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 20: HOMEPAGE B. Criminal Registration

FIG 21: Criminal Registration Page

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.

C. Detect Criminal Page


This page. allows the user to browse an image from the system and helps in detecting one or
more criminals in it. User can also see the profile of the criminal by clicking on detected criminal
names.

VSMSRKIT,NIPANI | DEPT OF CSE Page 35


CRIMINAL FACE DETECTION USING MACHINE LEARNING

FIG 22: Detect Criminal Page


D. Detecting Unknown Criminal
Our system is able to identify a non-criminal face.

FIG 23: Non-Criminal Face

E. Video Survelliances

FIG 24: Output: Video Surveillance

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.

VSMSRKIT,NIPANI | DEPT OF CSE Page 36


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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

VSMSRKIT,NIPANI | DEPT OF CSE Page 37


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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

VSMSRKIT,NIPANI | DEPT OF CSE Page 38


CRIMINAL FACE DETECTION USING MACHINE LEARNING

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.

[8]. Adriana Kovashka Margaret Martonosi- Feature-Based Face Recognition for


Identification of Criminals vs. Identification for Cashless Purchase

[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.

[12]. Fu Jie Huang Zhihua Zhou “Pose Invariant Face Recognition”.


VSMSRKIT,NIPANI | DEPT OF CSE Page 39
CRIMINAL FACE DETECTION USING MACHINE LEARNING

[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)

[14].Apoorva.P, Ramesh.B and Varshitha.M.R “Automated criminal identification by face


recognition using open computer vision classifiers” Third International Conference on
Computing Methodologies and Communication (ICCMC 2019)

[15].Rasanayagam, K.Kumarasiri, S.D.D, Tharuka, W. A. D. Samaranayake, N. Samarasinghe


and P. Siriwardana “CIS: An Automated Criminal Identification System”. 2018 IEEE
International Conference on Information and Automation for Sustainability (ICIAfS)

[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).

[17].Chang L , Yang J, Li S, Xu H, Liu K & Huan, C. (2018). ”Face Recognition Based on


Stacked Convolutional Autoencoder and Sparse Representation”. 2018 IEEE 23rd
International Conference on Digital Signal Processing (DSP).

[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 ”

VSMSRKIT,NIPANI | DEPT OF CSE Page 40


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

Criminal Face Detection Using Machine Learning


Prof. Anup Ganji, Rashmi Kamat, Swapnali Chougule Pooja Biradar, Srushti Gadivaddar
Dept. of Computer Science & Engg.
Vsmsrkit Engg College
KA,India
Nipani [email protected], [email protected], [email protected], [email protected],
[email protected]

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.

Keywords- Machine learning, face recognition, criminal identification, CCTV.


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 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.

© 2023 IJSRET 424


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

FACE RECOGNITION OVERVIEW


Face recognition in simple words means identifying and recognizing an individual on the basis of pictures of
their faces.

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

© 2023 IJSRET 425


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

System design defines the architecture, components, modules, interfaces and data for a system requirement.
Figure 1 presents the overall system design of Facial Recognition.

Fig 1. Architecture 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.

IMPLEMENTATION AND TESTING


Implementation phase of FRCI involves implementation on the interface and on the backend coding. The
system interface was implemented using Microsoft Visual Studio while the backend components, which are
database and coding, were implemented fully using MATLAB R2013b.

Fig 2. Login - is used to login to application.

© 2023 IJSRET 426


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

Fig 3. Registration- is used to register criminal.

Fig 4. Training Data - is used to train the images

© 2023 IJSRET 427


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

Fig 5. Criminal Dataset Collection & Testing

RESULT AND DISCUSSION


This section highlights the main outcome of Facial Recognition and its advantages. This study aims to design,
develop and test the Face Recognition for Criminal Identification, all system functionalities are running well
and therefore, this study successfully achieved the objectives.

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.

© 2023 IJSRET 428


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

• 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.

CONCLUSION AND FUTURE WORK


As for the future work, a lot more testing and debugging is needed as this system was developed in a very
limited time and resources. However, since it is open source software, developer can easily add new function
and improve the default function.

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

[1] S. H Lin, “An Introduction to Face Recognition


Technology”, Informing Science Special Issues on Multimedia. Informing Technologies, 3:1, (2000).
[2] R. Rathi, M. Choudhary & B. Chandra, “An
Application of Face Recognition System using Image
Processing and Neural Networks”, International Journal Computer Technology Application, 3:1, (2012),
pp. 45-49.

© 2023 IJSRET 429


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 430


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 431


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 432


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 433


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 434


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 435


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 436


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 437


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 438


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 439


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 440


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 441


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 442


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 443


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 444


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 445


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

6.1

© 2023 IJSRET 446


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 447


International Journal of Scientific Research & Engineering Trends
Volume 9, Issue 2,-ar
Apr
M -2023
, ISSN (Online): 239
-566X

© 2023 IJSRET 448

You might also like