Suspect Detection Using Image Processing: Zeeshan Liaqat
Suspect Detection Using Image Processing: Zeeshan Liaqat
Suspect Detection Using Image Processing: Zeeshan Liaqat
PROCESSING
By
Zeeshan Liaqat
(15-Arid-992)
Ahsan
(15-Arid-826)
Kashif Qureshi
(15-Arid-872)
Supervised by
Ms. Farkhanda Qamar
By
Zeeshan Liaqat
(15-Arid-992)
Ahsan
(15-Arid-826)
Kashif Qureshi
(15-Arid-872)
Supervised by
Ms. Farkhanda Qamar
II
Dedicated to our beloved parents and to all those,
whose prayers always pave to the success for us
III
PROJECT IN BRIEF
IV
ACKNOWLEDGMENT
Our deepest gratitude goes to ALMIGHTY GOD who has provided all that was
needed to complete this project and the program for which it was undertaken for.
There was never lack or want. Throughout this entire study, He took care of
everything that would have stopped us in our tracks and strengthened us even through
our most difficult times.
We would like to thank and sincerely acknowledge the help of our supervisor Ms.
Farkhanda Qamar whose complete guidance, support and encouragement gave us a
real motivation in doing this project. Sincere Thanks for her support and helpful
suggestions, we will be forever thankful to you.
We would like to thank all the volunteers especially Sir Imran Khurram who helped
us out while testing of this application and all the faculty members of UIIT
department for their help, time, and support that was gladly given to us on the time of
need.
Not least of all, we owe so much to our families for their undying support, their
unwavering belief that we can achieve so much. Unfortunately, we cannot thank
everyone by name because it would take a lifetime but, we just want you all to know
that you count so much. Had it not been for all your prayers and benedictions; were it
not for your sincere love and help, we would never have completed this project. So
thank you all.
Zeeshan Liaqat
(15-ARID-992)
Ahsan
(15-ARID-826)
Kashif Qureshi
(15-ARID-872)
V
DECLARATION
We hereby declare that this project, neither whole nor as a part has been copied out
from any source. It is further declared that we have developed this project and
accompanied report entirely on the basis of our personal efforts. If any part of this
project is proved to be copied out from any source or found to be reproduction of
some other. We will stand by the consequences. No Portion of the work presented has
been submitted of any application for any other degree or qualification of this or any
other university or institute of learning.
Zeeshan Liaqat
(15-ARID-992)
Ahsan
(15-ARID-826)
Kashif Qureshi
(15-ARID-872)
VI
CERTIFICATION
It is certified that the contents and form of the project entitled “SUSPECT
DETECTION USING IMAGE PROCESSING” submitted by Zeeshan liaqat (15-
arid-992), Ahsan (15-arid-826) and Kashif Qureshi (15-arid-872) has been found
satisfactory for the requirements of
Supervisor:
Ms. Farkhanda Qamar
Examiner 1:
Mr. Asif Nawaz
Examiner 2:
Ms. Bushra Hamid
Director: ________________________
VII
ABSTRACT
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 creating a digital profile for the people using their
website. In developed countries, the law enforcement creates face database to be used
with their face recognition system to compare any suspect with the database or to
authenticate a verified person. For example, we have seen many cases where
unauthorized person enters the organization having fake Ids. On the other hand, it’s
also common that many students instead of sitting himself in examination halls send
to some other person who attempts a exam on the behalf of invoker student which is
also a leading issue in order to ensure integrity of any educational institute. The
intended system is all concerned about dealing with security issues, or unauthorized
entry, or infiltration. The system takes the images of authorized person/users via
special camera and stores the capture images into the Database. Then at entry point, or
in the premises where the system is installed, it takes the pictures of passing persons
and compare it with the current Database, if pictures matches with the current
database, it means the person is authorized and if the captured picture is not matched,
It will consider it as SUSPECT, then it generates an alert to control room, or admin
room and they will take precaution measurements action against suspect.
VIII
TABLE OF CONTENTS
ACKNOWLEDGMENT .......................................................................................... V
DECLARATION .................................................................................................... VI
Chapter 1....................................................................................................................1
INTRODUCTION ......................................................................................................1
Chapter 2....................................................................................................................7
Chapter 3....................................................................................................................9
IX
SOFTWARE DESIGN ................................................................................................9
Chapter 4.................................................................................................................. 20
Chapter 5.................................................................................................................. 25
PROJECT IMPLEMENTATION............................................................................... 25
5.2 FRAMEWORK................................................................................................... 25
Chapter 6.................................................................................................................. 27
X
6.1 DERIVING TEST ............................................................................................... 27
Chapter 7.................................................................................................................. 36
Chapter 8.................................................................................................................. 39
SCREENSHOTS ...................................................................................................... 39
Chapter 9.................................................................................................................. 48
XI
9.1 REFRENCES ...................................................................................................... 48
XII
LIST OF FIGURES
XIII
LIST OF TABLES
XIV
Chapter 1
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 creating a
digital profile for the people using their website. In developed countries, the law
enforcement creates face database to be used with their face recognition system to
compare any suspect with the database or to authenticate a verified person. For example,
we have seen many cases where unauthorized person enters the organization having fake
Ids. On the other hand, it’s also common that many students instead of sitting himself in
examination halls send to some other person who attempts exam on the behalf of invoker
student which is also a leading issue in order to ensure integrity of any educational
institute. The intended system SUSPECT DETECTION USING IMAGE
PROCESSING is all concerned about dealing with security issues, or unauthorized entry,
or infiltration. The system takes the images of authorized person/users via special camera
and stores the capture images into the Database. Then at entry point, or in the premises
where the system is installed, it takes the pictures of passing persons and compare it with
the current Database, if pictures matches with the current database, it means the person is
authorized and if the captured picture is not matched, It will consider it as SUSPECT,
then it generates an alert to control room, or admin room and they will take precaution
measurements action against suspect .
1
1.1 BRIEF
Suspect Detection System is all concerned about dealing with security issues, or
unauthorized entry, or infiltration. As over the past few years, we learnt about different
cases of intrusion in UIIT where outsider students attempted to sit in exams on the behalf
of another student which is an emerging issue and we need to take swift actions to tackle
this sort of problems. So, the proposed system is used to detect intruders and adopts
proactive approach to avoid unpleasant experience. The system takes the images of
authorized person/users via special camera and stores the capture images into the
Database. Then at entry point, or in the premises where the system is installed, it takes the
pictures of passing persons and compare it with the current Database, if captured image
matches with the current database of authorized people, it means the person is authorized
and if the captured picture is not matched, It will consider it as SUSPECT or INTRUDER,
then it generates an alert to control room, or administration room and they will take
precaution measurements action against suspect.
Our aim is to develop an application that ensure security or to avoid any sort of intrusion
or illegal entrance to place where only authorized people are allowed to enter. It also deals
to tackle any sort of unpleasant situation in advance and Security issues.
Detects unauthorized personnel entry and provides a prompt notice for the response
force to respond to an alarm event.
2
To achieve such a security system which will provide a better way to overcome
intrusion or any sort of infiltration within organization.
Different type of tools and technologies makes it possible to develop such system,
different hardware equipment’s like Camera’s will also be entertained in it.
Ensures integrity or safety of organization or university.
Give new possibilities to do old things, thus removing the fear about new technologies
as hinderer of old fashions.
Administrator: First administrator will perform registration and logins into system.
System enables administrator to login to system with specified credentials and it monitors
the application with given Admin Dashboard. Administrator can further register and
delete security users who monitor application. Security User: Security user must have
valid username and password to login to System. After logging in, user can monitor live-
footage of connected camera. User can also train model of images and further can
perform database registration of individuals such as student, teacher and staff member.
Suspect Detection Engine: I installed or connected camera with the application takes
picture of individual person crossing a door or even sitting in examination hall. System
will have a database which saves pictures of authorized person only. So at the point of
entry camera takes pictures of person and matches it with the database using face
recognition or image processing algorithms using deep learning and if picture matches
with the database then its fine otherwise it generates an alert to admin indicating that
suspect might have entered the organization and then administrator of the system takes an
appropriate actions to tackle any sort of unpleasant event.
Over the years, we have seen many cases where outsider who are not a part of
organization like they are not a student of university, entered the university and attempted
to sit in examination hall on the behalf of another student. Security guards are also not
able to identify the students properly, because they identify students based on ID card.
Security guard is also not paying heed, they are just checking the card and mostly people
show fake card and they allow them to enter. So, in that case, such issue can cause be a
3
big security threat to the university. By doing this project we will able to overcome this
issue.
Proposed system can be utilized effectively to handle above mentioned problems. It will
have three components, first an installed camera which will take picture of authorized
people, second a database to store that images for further processing and then suspect
detection engine. So first we will take images of authorized people and store it into
database, after that camera will be placed at the entry position where it will capture
images of passing person and will pass it to suspect Detection Engine to compare it the
stored images in the database, if image matches it means that person is authorized,
otherwise it generates an alert and administrator take further action to avoid any sort of
unpleasant experience.
4
1.5.1 PRIMARY STAGE:
5
1.5.2 SECONDARY STAGE:
In this chapter we told all about our project that we have done in our project like how we
manage the monthly bills, monthly grocery order remainder, daily cooking items
remainder, payable/receivable remainder, and mobile modes changing notification on
specific places, too much time to call someone remainder. So in this chapter we conclude
that how our project flows in specific time and how it works after final product.
6
Chapter 2
REQUIREMENT ANALYSIS
Functional Requirement 1
ID: FR1.
Title: Admin registration.
Description: Admin logged in with valid credentials.
Functional Requirement 2
ID: FR2.
Title: Live footage capturing.
Description: From live footage, system take picture of person entering in the
university and send it to the detection engine for processing.
Functional Requirement 3
ID: FR3
Title: Train the model.
Description: System first takes the images at least 20 per person for proper
training of model and then the algorithm will process them.
7
Functional Requirement 4
ID: FR4
Description: Matches the image with the saved image of student .if picture
doesn’t match, admin has been alarmed and he/she take particular action against
suspect.
2.3.1 USABILITY
Our project is helpful/useful all kinds of users. Our system met (effectively) user goals in
an efficient manner .Our system will be used in a context where people don’t have time to
manage daily life activities. It is useful for expansion of stores business.
2.3.2 RELIABILITY
Our system is reliable and efficient when internet connection is on otherwise our system
may fail to fulfil module requirement.
2.3.3 INTEGRITY
Our system save all the states and used even after recovery.
2.3.4 PERFORMANCE
Our project save user time and send timely Notification. Our system helps to prevent from
penalties and user save recourses.
This chapter concludes that how our project works and the main discussions in this
chapter are the functional and non-functional requirements of our project.
8
Chapter 3
SOFTWARE DESIGN
9
3.2 LOGIN ACTIVITY DIAGRAM
10
3.3 TRAINING AND STORING IMAGE ACTIVITY DIAGRAM
11
3.4 MATCHING FROM LIVE FOOTAGE ACTIVITY DIAGRAM
12
3.5 CLASS DIAGRAM
13
3.6 DEPLOYMENT DIAGRAM
14
3.7 COMPONENT DIAGRAM
15
3.8 ENTITY-RELATIONSHIP DIAGRAM
16
3.9 LOGIN SEQUENCE DIAGRAM
17
3.10 CAPTURING AND MATCHING IMAGES SEQUENCE
DIAGRAM
18
3.11 SAVING IMAGES
In this chapter, we briefly described the UML part of our project which includes user case,
extended use case, sequence, activity diagram (which model the work flow of the system
and sequence of activities in a process), class diagram, component diagram, deployment
diagram (which represent physical relationship different components) and ERD diagram
as well .These diagrams elaborates the project efficiently.
19
Chapter 4
PROJECT MANAGEMENT
4.1 MILESTONES
20
4.2 PROJECT CLOSEOUT REPORT
Project close-out finalizes all project activities completed across all phases of the project
to formally close the project and transfer the completed or cancelled project as
appropriate. The purpose of project closeout is to assess the project, ensure completion,
and derive any lessons learned and best practices to be applied to future projects.
At the end of any project, a close out report has to be submitted. This means that there has
to be an official conclusion to a project, indicating that the project has come to an end;
that funds and resources will not be needed anymore and the business operations will
continue as normal prior to the conception of the project. Manpower will have to be
restored back to their respective departments and contracts with suppliers will have to be
terminated.
21
must be fulfill.
Code Review June 2019 Review the code after all the testing and
debugging.
In project management, resources are required to carry out the project tasks. They can be
people, equipment, facilities, funding, or anything else capable of definition (usually other
than labor) required for the completion of a project activity. The lack of a resource will
therefore be a constraint on the completion of the project activity. Resources may be
storable or non-storable. Storable resources remain available unless depleted by usage,
and may be replenished by project tasks which produce them. Non-storable resources
must be renewed for each time period, even if not used in previous time periods.
Resource scheduling, availability and optimization are considered key to successful
project management.
22
4.5 RISK MANAGEMENT
4.6 RISK-RESPONSE
The risk response planning involves determining ways to reduce or eliminate any threats
to the project, and also the opportunities to increase their impact. Project managers should
work to eliminate the threats before they occur. Some of the risks that can occur in our
project completion are given below:
23
4.7 CHAPTER SUMMARY
In this chapter we assign milestone to our project according to our project analysis. We
also provide a very short description of each milestone of our project from requirement
gathering to the project testing phase. After assigning milestone to our project, we prepare
a project closeout report, in short deliverables of our project. We provide each
deliverables of our project with the time to be delivered. Then we cover the operation and
the management plan phase. In this phase, we describe how our project can be managed
in order to perform well and how to detect errors and maintenance. The performance
requirement of the system is listed in detail that describes response time, accuracy and
efficiency of the system.
24
Chapter 5
PROJECT IMPLEMENTATION
The language we’ve used in our project is C# with EmguCV. C# provides better
functionalities as compared to other programming languages. The main purpose to use C#
is to make system better and efficient. EmguCV is image processing library that we have
used for facial detection and recognition.
5.2 FRAMEWORK
25
5.4 CHAPTER SUMMARY
26
Chapter 6
SOFTWARE TESTING
The desktop - Application upgraded (added features) occasionally for different reasons.
Requirement listed in SRS document were used as a baseline for testing to ensure that the
existing and new functionality are working. Test case is derived for each requirement as a
way of proving that the system or changes being implemented is ready for day to day
business use without error and/or adverse impact on the existing functionality.
Requirement itself changed from time to time and some become obsolete and to be
removed together with the test case.
This desktop application is tested with the required hardware and software requirements.
The software configuration is Windows 10 Home edition on the given hardware devices:
Dell Vostro i7 7th generation.
HP core i5 5th generation.
A test was planned for every requirement to test the application. The test procedure
adopted was detailed so that the system meets all requirements listed in SRS. The tests
were executed systematically and its output verified, sequentially.
Manual testing is the process of manually testing software for defects. It requires a tester
to play the role of an end user whereby they utilize most of the application's features to
ensure correct behavior. To guarantee completeness of testing, the tester often follows a
written test plan that leads them through a set of important test cases.
27
6.5 TESTING TECHNIQUES
Three types of testing techniques were used to make wellbeing of Application.
Smoke Testing, also known as “Build Verification Testing”, is a type of software testing
that comprises of a non-exhaustive set of tests that aim at ensuring that the most important
functions work. The results of this testing is used to decide if a build is stable enough to
proceed with further testing.
When all the units were working properly and unit testing was performed then came
time for system testing in which we will check all the integrated components and so
looked for whole possible discrepancies, which could have arisen after the integration
The application should be fault tolerant. So it has ability to recover from the errors as
soon as possible and resume the working which has been affected.
28
6.6 TEST CASES
The following test cases are prepared for each test that needs to be performed. The test
cases result in development of test reports, which will be further used for test-output
analysis.
TestCase-1
Test Description: This test Registers the Administrator at the time of system
initialization.
29
Table 6.6.2 TestCase-2
TestCase-1
Test Description: The test verifies the user name and password to get access on system.
30
Table 6.6.3 TestCase-3
TestCase-3
Test Description: Application must be able to receive data from database And send data
to database server.
31
Table 6.6.4 TestCase-4
TestCase-4
Test Description: The test verifies the user name and password to get access on system
as user
32
Table 6.6.5 TestCase-5
TestCase-5
Test Description: This test takes face images of persons and trains the face recognition
model.
33
Table 6.6.6 TestCase-6
TestCase-6
Test Description: This test examines that either System recognizes the trained faces and
detects the unknown or untrained faces.
34
6.7 CHAPTER SUMMARY
We have discussed about testing. The test cases show the functionality of Application.
Each test is assigned a Test Name & Test Number. Test description shows what the aims
of this test procedure are. What are the points need to be considering while testing are
discussed in Item to be tested. Specifications describe what input is given to the System,
what may be happening in output is described in expected out. What should be the output
is described in Actual output. At the end steps to perform the test are described in
Procedure Step to show how an actual test has been performed
35
Chapter 7
7.1 DISCUSSION
In this chapter we will review the entire research thesis objectives and results. We will
emphasis on the scientific contributions that this research work made. At the end we will
give some prospective points for the future work of this research.
7.1.1. ACHIEVEMENTS
It’s a sense of achievement having developed our final project successfully. We thank
ALLAH Almighty for this grant. Before going through this project we had a good
knowledge of software engineering, but now we are independent. We had a very good
interaction with our respected supervisor’s Ms. Farkhanda Qamar who helped us
develop the system in time. During the development of the project, we learnt a lot. Our
learning is summarized below.
It had to be competed in 4 months timeframe. This goal was achieved through proper
planning of our project. In starting a careful analysis was prepared to enlist all the goals
and milestones for our project. After enlisting the goals we crafted a plan for time
management. Split the goals into small deliverables. Each deliverable was divided into
many smaller markers.
Since Application is developed for everyone, so we had a huge sea of potential users. So
we made use of a few of them. This helped us improve our understanding to manage a
complete project.
A compete architecture design of the software is created during the software designing
phase. This design explains the static and dynamic behavior of the software and code as
36
well. The design of the software helped us in creating and implements the code
successfully.
C# is the most frequently updated and most used technology, whose market in the
software industry is very vast. Our project which is an desktop-based application helped
us in learning this new technology. For the development of our project we learnt and used
many different tools and technologies. This has greatly increased our learning experience.
7.2 CONCLUSION
Our system is a proof-of-concept that how new technologies like C# and its libraries can
help build better services and visuals for a better detection of intruders as compared to
other ones. And the database SQL server which provided us the vast storage for images
and it’s descriptions.
Completing our project in a very less budget, we can surely say that anyone who what
proper functionality of a system with least price tag can avail and deploy this software.
7.3 LIMITAITIONS
First the system is not able to match the distant person’s face. Due to camera range
it can only detects and matches the person’s face with in 1 or 2 meter distance.
System can’t detect the objects in low light, because in low light our software is
not able to detect the proper shape of anyone’s face.
We can’t use more than one camera. As it only detects and matches only who is
in front of it.
Using run time image capturing and matching, can result in flicker. I.e. will be a
bit shaky.
The IP camera can be malfunction due to severe weather conditions. But we have
tried our best to used special camera that can deal with weather conditions.
The cabling connected to camera and system can be burn out any time due to
voltage fluctuations. As it is an electronic thing.
The software is not compatible with MAC , Linux , iOS, Android , Macintosh etc.
Only compatible with windows 7 and above.
37
7.4 FUTURE WORK
We will use the latest surveillance camera that can detect far objects, faces etc. to
make our system more efficient.
We make the software that is compatible with other Operating systems.
Will make advancement so that anyone can connect more than one camera.
Will use latest algorithms for detection and recognition of distant objects.
Perform Better working also in low light.
In future, we also looking forward to develop web based suspect detection
application
38
Chapter 8
SCREENSHOTS
39
8.2 LOGIN PAGE
40
8.3 ADMINISTRATOR PANEL
41
8.4 MODEL TRAINING
42
8.5 ADMINISTRATOR PASSWORD CHANGING
43
8.6 RECORD REPOSITORY
44
8.7 DATABASE REGISTRATION
45
8.8 SYSTEM MAINTENANCE
46
8.9 DATA TIME
47
Chapter 9
9.1 REFRENCES
http://www.emgu.com/wiki/index.php/Main_Page
https://ahmedopeyemi.com/main/face-detection-and-recognition-in-c-using-
emgucv3-0-opencv-wrapper-part-1/
https://www.researchgate.net/publication/326348387_Real_Time_Facial_Recognition_
Using_Principal_Component_Analysis_PCA_And_EmguCV
48