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

Face Identification System

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

Face Identification System

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

Artificial Intelligence And Machine Learning

Subject Code: MCAL21

MASTER

In COMPUTER APPLICATION
Year 2023-2024

By

Mr. KADAM GAURAV PRAKASH RUPALI


(Application Id-78187)

Semester-II

Under the Guidance of

Prof.

Centre for Distance and Online Education


Vidya Nagari, Kalina, Santacruz East-
400098. University of Mumbai
PCP Center
[Satish Pradhan Dyanasadhana College,Thane]
TABLE OF CONTENTS

Serial No. Chapter Name Page No.


CERTIFICATE
Approval of Dissertation
Declaration
Abstract i
List of Tables iii
List of Figures iv
List of Abbreviations v
Chapter 1 Introduction 1
1.1 Background 1

Chapter 2 Review of Literature 11


2.1 Research Paper 13
Chapter 3 Software Requirement Specification 18

3.1 Perspective 18

3.2 Functional and Non-Functional requirement 19

3.2.1 Functional Requirement 19

3.2.2 Non-Functional Requirement 19

3.2 Requirement Analysis 20


3.2.1 Hardware Interface 20
3.2.2 Software Interface 20
3.3 Resource Requirement 20
3.3.1 About Visual Studio 20

Chapter 4 Proposed Method 22


4.1 Proposed Architecture of Secure DBaaS 22

Chapter 5 System Implementation 31


5.1 Metadata Management 31
Chapter 6 Results and Analysis 42
6.1 GUI Module description 42
6.2 Encrypted database module 50
6.3 DFD 51

Chapter 7 Conclusions and Future Scope 52


References/Bibliography 54
Publications(optional) 56
Acknowledgement 57
Institute of Distance and Open Learning
Vidya Nagari, Kalina, Santacruz East – 400098.

CERTIFICATE

This is to certify that, this project report entitled “Face Detection System” is a record of
work carried out by Mr. Kadam Gaurav Prakash Rupali (Seat no-1910493), studentof MCA
semester-II class and is submitted to University of Mumbai, in partial fulfilment of the
requirement for the award of the degree of Master in Computer Application. The project
report has been approved.

Guide External Examiner Coordinator – M.C.A


Approval of Project

This is to certify that the project work entitled “Face Detection System”,
for Master in Computer Application submitted to University of Mumbai by Mr.
Kadam Gaurav Prakash Rupali (Seat no-1910493) a bonafide student of
Institute of Distance and Open Learning, Vidyanagari, Kalina, Santracruz East has
been approved for the award of Master in Computer Application.

Examiner1.

2.

Date:

Place:
Declaration

I declare that this written submission represents my ideas in my own words and where
other's ideas or words have been included, I have adequately cited and referenced the
original sources. I also declare that I have adhered to all principles of academic
honesty and integrity and have not misrepresented or fabricated or falsified any
idea/data/fact/source in my submission. I understand that any violation of the above
will be cause for disciplinary action by the Institute and can also evoke penal action
from the sources which have thus not been properly cited or from whom proper
permission has not been taken when needed.

(Signature)
Ms. Kadam Gaurav Prakash Rupali
Seat No-1910493

Date:
Place:
ABSTRACT

Criminal record generally contains personal information about particular

person along with photograph. To identify any Criminal we need some identification

regarding person, which are given by eyewitness. 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 software. Identification can be

done in many ways like finger print, eyes, DNA etc. One of the applications is face

identification. The face is our primary focus of attention in social inters course

playing a major role in conveying identify and emotion. Although the ability to infer

intelligence or character from facial appearance is suspect, the human ability to

recognize face is remarkable.


List Of Tables:
E-R Diagrams between Administrator and Employee

User id Pwd User id Pwd

Administrator Authentication
Employee

E-R Diagrams between Employee and Eyewitness:

User id Pwd Criminal


User id Pwd
images

Viewing &
Eyewitness
Employee selecting,
images

Criminal
Criminal Images
details
E-R Diagram Between Eyewitness and Criminal:

Crimin
Criminal Criminal id Criminal
images details

Eyewitness Identification Criminal

E-R Diagram Between Employee And Criminal:

Criminal
Criminal Id
User id details
Pwd

Getting
details
Employee Criminal
of
criminal
List Of Figures:

Authentication Criminal split image() Face System

login into system as administrator()

giving/retrieving Details()

Ask details()

insert/Updat details()

split image()

insert/update face()

delete crimminal()
Administrator:

Login

Inserting/Updating
Criminal Details

Already Existed
Criminal
Splitting/Updating
Images
Administrator criminal
New Criminal
Inserting/Updating
Face Details

Deleting Images

Client (Operator):

Operator Login

retriving the images

Identifying the
Criminal
images
List Of Abbreviations:

N-TIER APPLICATIONS

N-Tier Applications can easily implement the concepts of Distributed Application


Design and Architecture. The N-Tier Applications provide strategic benefits to
Enterprise Solutions. While 2-tier, client-server can help us create quick and easy
solutions and may be used for Rapid Prototyping, they can easily become a
maintenance and security night mare

The N-tier Applications provide specific advantages that are vital to the business
continuity of the enterprise. Typical features of a real life n-tier may include the
following:

 Security

 Availability and Scalability

 Manageability

 Easy Maintenance

 Data Abstraction

The above mentioned points are some of the key design goals of a successful n-tier
application that intends to provide a good Business Solution.

DEFINITION

Simply stated, an n-tier application helps us distribute the overall functionality into
various tiers or layers:

 Presentation Layer
 Business Rules Layer

 Data Access Layer

 Database/Data Store

Each layer can be developed independently of the other provided that it adheres to
the standards and communicates with the other layers as per the specifications.

This is the one of the biggest advantages of the n-tier application. Each layer can
potentially treat the other layer as a ‘Block-Box’.

In other words, each layer does not care how other layer processes the data as long
as it sends the right data in a correct format.

Presentation Layer

Business Rules Layer


Services

Data Access Layer

Services
DB

N-Tier Architecture
1. THE PRESENTATION LAYER

Also called as the client layer comprises of components that are dedicated to
presenting the data to the user. For example: Windows/Web Forms and
buttons, edit boxes, Text boxes, labels, grids, etc.

2. THE BUSINESS RULES LAYER

This layer encapsulates the Business rules or the business logic of the
encapsulations. To have a separate layer for business logic is of a great
advantage. This is because any changes in Business Rules can be easily
handled in this layer. As long as the interface between the layers remains the
same, any changes to the functionality/processing logic in this layer can be
made without impacting the others. A lot of client-server apps failed to
implement successfully as changing the business logic was a painful process.

3. THE DATA ACCESS LAYER

This layer comprises of components that help in accessing the Database. If


used in the right way, this layer provides a level of abstraction for the
database structures. Simply put changes made to the database, tables, etc do
not affect the rest of the application because of the Data Access layer. The
different application layers send the data requests to this layer and receive
the response from this layer.

4. THE DATABASE LAYER

This layer comprises of the Database Components such as DB Files, Tables,


Views, etc. The Actual database could be created using SQL Server, Oracle,
Flat files, etc.

In an n-tier application, the entire application can be implemented in such a


way that it is independent of the actual Database. For instance, you could
change the Database Location with minimal changes to Data Access Layer.
The rest of the Application should remain unaffected.
Chapter 1: Introduction

This project is aimed to identify the criminals in any investigation

department. Here the technique is we already store some images of the criminals in

our database along with his details and that images are segmented into many slices

say eyes, hairs, lips, nose, etc. These images are again stored in another database

record so to identify any criminals; eyewitnesses will see the images or slices that

appear on the screen by using it we develop the face, which may or may not be

matched with our images. If any image is matched up to 99% then we predict that

he is only the criminal. Thus using this project it provides a very friendly

environment for both operator and eyewitness to easily design any face can identify

criminals very easy. This project is intended to identify a person using the images

previously taken. The identification will be done according the previous images of

different persons.

This project is aimed to identify the criminals in any investigation department.

Here the technique is we already store some images of the criminals in our database

along with his details and those images are segmented into many slices say eyes,

hairs, lips, nose, etc. These images are again stored in another database record so to

identify any criminals; eyewitnesses will see the images or slices that appear on the

screen by using it we develop the face, which may or may not be matched with our
images. If any image is matched up to 99% then we predict that he is only the

criminal. Thus using this project it provides a very friendly environment for both

operator and eyewitness to easily design any face can identify criminals very easy.

The project is aimed at identifying the criminals with the help of eye witness. There

are mainly four modules in our project. They are Adding, Deleting, Updating and

identifying the criminals. There are mainly three roles in our project. They are:

 Administrator

 Operator

 Eyewitness

The administrator is responsible for providing User id’s and passwords. He provides

authentication to the users. He creates deletes and Updates the User ids and

Passwords. The operator, who belongs to the investigating department, is

responsible for entering the criminal details and maintains them. He adds, deletes

and updates the criminal details. He also constructs the criminal face with the help

of eye witness.
Review of Literature: Research Paper

Feasibility Study

A feasibility study is a high-level capsule version of the entire System analysis and

Design Process. The study begins by classifying the problem definition. Feasibility

is to determine if it’s worth doing. Once an acceptance problem definition has been

generated, the analyst develops a logical model of the system. A search for

alternatives is analyzed carefully. There are 3 parts in feasibility study.

Operational Feasibility:

Question that going to be asked are

 Will the system be used if it developed and implemented.

 If there was sufficient support for the project from the management and from

the users.

 Have the users been involved in planning and development of the

Project.

 Will the system produce poorer result in any respect or area?


This system can be implemented in the organization because there is adequate

support from management and users. Being developed in Java so that the

necessary operations are carried out automatically.

Technical feasibility:

 Does the necessary technology exist to do what is been suggested

 Does the proposed equipment have the technical capacity for using the new

system?

 Are there technical guarantees of accuracy, reliability and data security?

 The project is developed on Pentium IV with 256 MB RAM.

 The environment required in the development of system is any windows

platform.

 The observer pattern along with factory pattern will update the results

eventually

 The language used in the development is JAVA 1.5 & Windows

Environment

Financial and Economical Feasibility:

The system developed and installed will be good benefit to the organization.

The system will be developed and operated in the existing hardware and software
infrastructure. So there is no need of additional hardware and software for the

system.

Chapter 3: Software Requirement specification

Percpective:

The product perspective for a face identification system using a real-time

database is to provide a convenient, accurate, and reliable way to identify the face of

criminals.

The system should be able to identify and verify the faces of individuals in real

time, and store their identification data in a database. The system should be able to

generate the report at the end of the identification and send mails do not identify.

The system should be designed to be easy to use for both administrators and

criminals. Administrators should be able to easily add, edit, and delete criminal

accounts from the database.

The system should also be secure and reliable. The database should be protected f

rom unauthorized access, and the system should be able to handle a large number of

users and transactions without any problems.


Functional Requirement:

By conducting the requirements analysis we listed out the requirements that are

useful to restate the problem definition.

 Insert the image into database

 Split the image into no of parts.

 Merge the parts.

 Identify the image.

 Draw image manually.

 Maintain separate login for admin and operator.

 Maintain information about each criminal.

Module Description

Well structured designs improve the maintainability of a system. A structured


system is one that is developed from the top down and modular, that is, broken down
into manageable components. In this project we modularized the system so that they
have minimal effect on each other.
This application is designed into five independent modules which take care of
different tasks efficiently.

1. User Interface Module.

2. Admin Module.
3. Client Module.
User Interface Module:

Actually every application has one user interface for accessing the entire
application. In this application also we are providing one user interface for
accessing this application. The user interface designed completely based on the
end users. It is provide friendly accessing to the users. This user interface has
attractive look and feel. Technically I am using the swings in core java for
preparing this user interface.

Admin Module:

User requirements Elaboration Further Elaboration


Create Assign new user id &
password for an
employee.

Delete Administrator can


delete the user id &
password of unwanted
employee.
Update First the details of After obtaining the
employees are to be original details the updated
obtained by using user details are submitted.
id & password.

Client Module:

User requirements Elaboration Further Elaboration

Login Employee log in to


home page by entering
id & password.

Adding details Personal details of Images are cropped and


criminal store in to saved in database.
data base

Update process Enter criminal id and Update the details and


obtain his details images of existing criminal

Delete process Enter criminal id Delete the details and image


of unwanted criminal

Logout Logout in to the home


page
Non-Functional Requirement:

Non-Functional Requirements are the characteristics or attributes of


the system that are necessary for the smooth operation of the system. Those
requirements are listed below.

➢ The system should perform the process accurately and precisely to


avoid problems.

➢ The system should be easy to modify for any updates. Any errors or bugs
that are identified should be easy to mend.

➢ The system should be secure and maintain the privacy of the students.

➢ The system should be easy to understand and use.

➢ Execution of the operation should be fast.


Requirement Analysis:

Software Requirements:

Operating System : Windows

Graphical User Interface : Java Swing, AWT.

Application Logic : Java 9

Database : Oracle

IDE/Workbench : My Eclipse

Hardware Requirements:

System Configuration
Processor: Intel(R) Core(TM) i3-10110U CPU @2.10GHz 2.59GHz

Hard Disk: 465 GB

RAM: 8.00 GB

Resource requirement:

About Eclipse:-

In the computing world, Eclipse is an integrated development program for


developing various computer applications using especially Java language as well
as others, including C/C++, Python, PERL, Ruby, and many more.
Being free and open source, Eclipse IDE is one of the most popular JAVA IDE in
the computing market. Its extensive plugin ecosystem makes it lovable by
developers as it supports customizable plugins and functions for developing any
application.
Eclipse IDE can run on the most popular Operating Systems, including Windows,
Mac OS, and Linux. Before installing Eclipse IDE, we must install the latest Java
version on our PCs. We can download the latest Java Kit with complete step-by-
step guidance with this link: Download and Install Java Development Kit (JDK)
for Windows.

 Everything is a plugin.
 There is a work base where you can develop any project per the user's
custom needs.
 Any functionality can be extended using the number of plugins the user
desires
 It supports powerful knowledge tools, including folding and hyperlink
navigation, grading, macro definition browser, and code editing with syntax
highlight.
 It comes with a visual code debugging tool which can easily debug any
loopholes in the project.
 Drag and drop facility for all user-interface designs
 Assist project development along with appropriate supervision for using
different toolchains and source navigation
 Java Eclipse IDE also comes with a Java Doc facility which can be used for
any kind of documentation by the users.

Chapter 4 : Proposed Method 4.1 Proposed Architecture of Secure


DBaaS

Providing confidentiality is very much difficult in electronic world


where individuals, devices, and sensors are connected and information is created,
accessed and shared widely with one another. To ensure the clients safety,
governments in addition came up with authentic measures. For example, the US
federal law called The Secret Data Assurance and Measurable Productivity Act
(CIPSEA). Same as organizations have utilized different information de-ID
routines, for example, pseudonymization, and encryption and so on to remove/hide
any data that recognizes people. However these de-ID strategies have not been
totally ready to secure the client's protection. The operator first submits the
criminal id and searches for the availability of the id in the database. If that id is
available in the database, then the operator may delete the record of that particular
r criminal. The operator first enters the criminal id and searches for the availability
of that id. If that id is available in the database , then the details of that criminal are
retrieved and the operator can update the details of that criminal and that updated
details of the criminal are stored in the database again for future retrieval. The
cropped parts of the criminals, along with the criminal Id are viewed by the
eyewitness .The eyewitness selects particular cropped part of the criminal and it is
freeze by the operator., then complete face of the criminal is constructed and the
details of the criminal is retrieved. A Secure DBaaS allow multiple and
independent clients to connect directly to untrusted cloud. Assume an organization
obtain database as a service from untrusted cloud provider. A secure DBaaS
manage database related information, such as encrypted database and encrypted
metadata. An encryption of database in cloud database prevents the violation of
confidentiality by untrusted cloud provider. Secure DBaaS stores a metadata in
cloud. And allow Secure DBaaS client to retrieve necessary metadata, which is
required to extract data from cloud database. Assume that data stored in cloud
database is relational database. Encrypted data is stored through secure table in
cloud database. Encryption operation is done at Secure DBaas client.

Chapter 5: System implementation Metadata Management

The system designer must make the following decisions:

 Organize the system into subsystems.

 Identify the concurrency inherent in the problem.

 Allocate subsystems to processors and tasks.

 Choose an approach for management of data stores.

 Handle access to global resources.

 Choose the implementation of control in software.

 Handle boundary conditions.

 Set trade-off priorities.

Breaking the System into Subsystems:

 The first step in system design is to divide the system into small

number of components. Each major component of a system is called a sub

system. Each subsystem encompasses aspects of the system that share some
common property – similar functionality, the same physical location, or

execution on the same kind of hardware.

 A subsystem not an object nor a function but a package of classes,

associations, operations, events, and constraints that are interrelated and that

have a reasonably well-defined and small interface with other subsystems. A

subsystem usually identified by the services it provides. A service is a group

of related functions that share some common purpose such as I/O processing.

A subsystem defines a coherent way of looking at one aspect of the problem.

 Each subsystem has a well-defined interface to the rest of the system.

The interface specifies the form of all interactions and the information flow

across subsystem boundaries but does not specify how the sub system is

implemented internally. Each subsystem then can be designed independently

without affecting the others.

 The decomposition of systems into subsystems may be organized as a

sequence of horizontal layers or vertical partitions.

 A layered system is an ordered set of virtual worlds, each built in

terms of the ones below it and providing the basis of implementation for the

ones above it. The objects in each layer can be independent, although there

is often some correspondence between objects in different layers.

Knowledge is one-way only: a subsystem knows about the layers below it,
but has no knowledge of the above layers. Each layer may have its own set

of classes and operations. Each layer is implemented in terms of the classes

and operations of lower layers.

 Layered architecture comes in two forms: closed and open. In a closed

architecture, each layer is built only in terms of the immediate lower layer. In

a open architecture, a layer can use features of any lower layer to any depth.

 We decomposed our system into three subsystems as layers. The three

layers are closed architecture form. The three layers are GUI layer, Network

layer and I/O layer. The purpose of GUI layer is to provide an efficient user

interface to the user to interact with the system. It is built upon the Network

layer which provides basic FTP services. The lowest layer is the I/O layer that

provides services like reading or writing file to and from local and remote

systems.
Coding :
import java.awt.*;

Import java.awt.event.*;

Import javax.swing.*;

public class Operator extends JFrame implements ActionListener

Label l,l3;

JLabel l2,l1;

Font f;

Button b1,b2,b3,b4,b5,b8,b9,b10;

Container c1;

Operator()

c1=getContentPane();

c1.setLayout(new FlowLayout());
setBackground(Color.LIGHT_GRAY);

f=new Font("Arial",Font.BOLD,20);

setFont(f);

ImageIcon i=new ImageIcon("criminal1.jpg");

l=new Label(" Welcome Chandu!!!!!!!!

");

l2=new JLabel(" Hi,

",i,JLabel.LEADING);

l3=new Label(" This is Operator

",Label.CENTER);

b3=new Button(" Identifying of Images ");


b4=new Button(" Images from Data Base ");

//b5=new Button(" Images from Eyewitnesses ");

b8=new Button(" Drawing of Images ");

// b9=new Button(" Matching of Images ");

//b10=new Button(" Data to Administrator ");

addWindowListener(new WindowAdapter()

public void windowClosing(WindowEvent e)

System.exit(0);

});
l.setForeground(new Color(100,100,100));

l.setFont(new Font("Arial",Font.BOLD,30));

l2.setForeground(new Color(100,100,100));

l2.setFont(new Font("Arial",Font.BOLD,20));

l3.setForeground(new Color(0,64,64));

l3.setFont(new Font("Arial",Font.BOLD,20));

b3.setForeground(new Color(255,255,255));

b3.setBackground(new Color(0,64,64));

b3.setFont(new Font("Arial",Font.BOLD,15));

b4.setForeground(new Color(255,255,255));

b4.setFont(new Font("Arial",Font.BOLD,15));

b4.setBackground(new Color(0,64,64));

// b5.setForeground(new Color(255,255,255));

// b5.setFont(new Font("Arial",Font.BOLD,15));

// b5.setBackground(new Color(0,64,64));
b8.setForeground(new Color(255,255,255));

b8.setFont(new Font("Arial",Font.BOLD,15));

b8.setBackground(new Color(0,64,64));

/*b9.setForeground(new Color(255,255,255));

b9.setFont(new Font("Arial",Font.BOLD,15));

b9.setBackground(new Color(0,64,64));

b10.setForeground(new Color(255,255,255));

b10.setFont(new Font("Arial",Font.BOLD,15));

b10.setBackground(new Color(0,64,64));*/

b3.addActionListener(this);

b4.addActionListener(this);

//b5.addActionListener(this);

b8.addActionListener(this);

//b10.addActionListener(this);
//b9.addActionListener(this);

c1.add(l);

c1.add(l2);

c1.add(l3);

// c1.add(b5);

c1.add(b4);

c1.add(b3);

c1.add(b8);

// c1.add(b9);

// c1.add(b10);

setSize(500,600);

setVisible(true);

public void actionPerformed(ActionEvent ae)


{

if(ae.getSource()==b5)

Insert1 d=new Insert1();

d.setSize(700,600);

d.setVisible(true);

if(ae.getSource()==b3)

System.out.println("Face Framing page opening");

faceIdMain1 f1=new faceIdMain1();

f1.setSize(800,800);

f1.setVisible(true);

if(ae.getSource()==b8)

Draw d1=new Draw();

d1.setSize(600,400);
d1.setVisible(true);

if(ae.getSource()==b9)

MatchingImg mi=new MatchingImg();

mi.setSize(700,600);

mi.setVisible(true);

if(ae.getSource()==b10)

DatafromOp da=new DatafromOp();

da.setSize(600,400);

da.setVisible(true);

}
if(ae.getSource()==b4)

Retr r1=new Retr();

r1.setSize(600,600);

r1.setVisible(true);

public static void main(String args[])

Operator op= new Operator();

}}

Testing :
Software testing is a critical element of software quality assurance and

represents the ultimate reviews of specification, design and coding. Testing

represents an interesting anomaly for the software. During earlier definition and

development phases, it was attempted to build software from an abstract concept to


a tangible implementation. No system is error free because it is so till the next error

crops up during any phase of the development or usage of the product. A sincere

effort however needs to be put to bring out a product that is satisfactory.

The testing phase involves the testing of development system using various

data. Preparation of the test data plays a vital role in system testing. After preparing

the test data, the system under study was tested using those data. While testing the

system, by using the test data, errors were found and corrected by using the following

testing steps and corrections were also noted for future use. Thus, a series of testing

is performed on the proposed system before the system is ready for implementation.

The various types of testing done on the system are:

 Integration testing

 Validation testing

 Unit testing

 Output testing

 User Acceptance testing

Unit testing:

Unit testing focuses on verification effort on the smallest unit of software

design module. Using the unit test plans prepared in the design phase of the system

development as a guide, important control paths are tested to uncover errors with in
the boundary of the modules. The interfaces of the modules are tested to ensure

proper flow of information into and out of the modules under consideration boundary

conditions were checked. All independent paths were exercised to ensure that all

statements in the module have been executed at least once and all error-handling

paths were tested.

Each unit is thoroughly tested to check if it might fail in any possible

situation. This testing is carried during the programming state itself. At the end of

this testing phase each module is found to be have an adverse effect working

satisfactorily, as regard to the expected output from the module.

Integration Testing:

Data can be lost across an interface, one module can on another; sub-

functions when combined may not produce the desired major function: global data

structures can present problems. Integration testing is a systematic technique for the

program structure while at the same time concluding tests to uncover errors

associated with interface. All modules are combined in this testing step. Then the

entire program is tested as a whole. Each of the module is integrated and tested

separately and later all modules are tested together for sometime to ensure the system

as a whole works well without any errors.


Output:
Chapter 6 Results and Analysis

The first step in developing anything is to state the requirements. This

applies just as much to leading edge research as to simple programs and to

personal programs, as well as to large team efforts. Being vague about your

objective only postpones decisions to a later stage where changes are much more

costly.

The problem statement should state what is to be done and not how it is to be

done. It should be a statement of needs, not a proposal for a solution. A user manual

for the desired system is a good problem statement. The requestor should indicate

which features are mandatory and which are optional, to avoid overly constraining

design decisions. The requestor should avoid describing system internals, as this

restricts implementation flexibility. Performance specifications and protocols for

interaction with external systems are legitimate requirements. Software engineering

standards, such as modular construction, design for testability, and provision for

future extensions, are also proper.

Many problems statements, from individuals, companies, and government

agencies, mixture requirements with design decisions. There may sometimes be a

compelling reason to require a particular computer or language; there is rarely

justification to specify the use of a particular algorithm. The analyst must separate
the true requirements from design and implementation decisions disguised as

requirements. The analyst should challenge such pseudo requirements, as they

restrict flexibility. There may be politics or organizational reasons for the pseu

requirements, but at least the analyst should recognize that these externally

imposed design decisions are not essential features of the problem domain.

A problem statement may have more or less detail. A requirement for a

conventional product, such as a payroll program or a billing system, may have

considerable detail. A requirement for a research effort in a new area may lack many

details, but presumably the research has some objective, which should be clearly

stated.

Most problem statements are ambiguous, incomplete, or even inconsistent.


Some requirements are just plain wrong. Some requirements, although precisely
stated, have unpleasant consequences on the system behavior or impose
unreasonable implementation costs. Some requirements seem reasonable at first but
do not work out as well as the request or thought. The problem statement is just a
starting point for understanding the problem, not an immutable document. The
purpose of the subsequent analysis is to fully understand the problem and its
implications. There is no reasons to expect that a problem statement prepared
without a fully analysis will be correct.

The analyst must work with the requestor to refine the requirements so
they represent the requestor’s true intent. This involves challenging the
requirements and probing for missing information. The psychological,
organizational, and political considerations of doing this are beyond the scope of
this book, except for the following piece of advice: If you do exactly what the
customer asked for, but the result does not meet the customer’s real needs, you will
probably be blamed anyway.

Existing System:

This system is manual system only. Here, have a facility to store the criminal
images. If you want to compare the criminal images with the existing images it is
manual process. This process is very slow to give the result. It is very critical to find
the criminal images.

Proposed System:
To overcome the drawbacks that were in the existing system we develop a

system that will be very useful for any investigation department. Here the program

keeps track of the record number of each slice during the construction of identifiable

human face and calculate maximum number of slices of the similar record number.

Based on this record number the program retrieves the personal record of the suspect

(whose slice constituted the major parts of the constructed human face) on exercising

the “locate” option.

Advantages:

 Very fast and accurate.


 No need of any extra manual effort.
 No fever of data loss.
 Just need a little knowledge to operate the system.
 Doesn’t require any extra hardware device.
 At last very easy to find the criminals

Overview:

Addition, Clipping, Construction and updating of the criminal record and face.

Comparing the image with the faces that are there in our database. If any new images

are found then it should be entered into our database by add image module and then

it should be segmented into different slices.


6.1 GUI Module description

We decomposed our system into three subsystems as layers. The three layers are

closed architecture form. The three layers are GUI layer, Network layer and I/O

layer. The purpose of GUI layer is to provide an efficient user interface to the user

to interact with the system. It is built upon the Network layer which provides basic

FTP services. The lowest layer is the I/O layer that provides services like reading or

writing file to and from local and remote systems.


Encrypted Database model:

ADD MODULE: The add module is helpful in adding the details of the
criminals along with the details of the criminal photo. While adding the details of
the criminal, we crop the image of the criminal and store those cropped parts in a
separate database.

DELETE MODULE: This module deletes the criminal details along with the
photo. The operator first submits the criminal id and searches for the availability of
the id in the database. If that id is available in the database, then the operator may
delete the record of that particular r criminal.

UPDATE MODULE : The operator first enters the criminal id and searches for
the availability of that id .If that id is available in the database , then the details of
that criminal are retrieved and the operator can update the details of that criminal
and that updated details of the criminal are stored in the database again for future
retrieval.

IDENTIFY MODULE: The cropped parts of the criminals, along with the
criminal Id are viewed by the eyewitness .The eyewitness selects particular
cropped part of the criminal and it is freeze by the operator., then complete face of
the criminal is constructed and the details of the criminal is retrieved.
DFD(Data Flow Diagram) :

LoginDb LoginDb

LEVEL 1 P1 p2

Administrator Userid login login


Authent
psw ication

Level 2 LoginDb
P2.1

ACK
Create
Create id & psw

P2 LoginDb LoginDB
Update id & psw p2.2
Login Update Change detail submit ACK

LoginDb
P2.3
Delete
ACK
Chapter 7 :

Conclusion and Future Scope

The Future enhancements of this project include the following:

 The criminal photos may be of any size.


 By selecting any one cropped part of the criminal, we can get the full image
of the criminals along with details.
 New face constructed by different cropped parts can be saved.
Reference/Bibliography:

Java (Swing & XML):

Java in a Nut Shell O’Rielly

Using Java2 Platform Joseph Weber

The Complete Reference Java 1.2 Herbert Schildt

Core Java Kenneth Paul

System Development:

Fundamentals Of System Concepts Jerry Fitz Gerald

System Analysis And Design Elias M. Awad

Object Oriented Modeling And Design James Rumabah


ACKNOWLEDGMENT
After the completion of this work, words are not enough to express my feelings about all
those who helped me to reach my goal; feeling above this is my indebtedness to the almighty for
providing me this moment in my life.

It’s a great pleasure and moment of immense satisfaction for me to express my profound
gratitude to my project guide, Prof. Dyaneshwar Deore whose constant encouragement enabled
me to work enthusiastically. His perpetual motivation, patience and excellent expertise in
discussion during progress of dissertation work have benefited me to an extent, which is beyond
expression. His depth and breadth of knowledge of Engineering field made me realize that
theoretical knowledge always help to develop efficient operational software, which is a blend of
all core subjects of the field. The completion of this project would not have been possible without
his encouragement, patient guidance and constant support.

I would like to thank all staff members for their valuable cooperation and permitting me to
work in the computer labs.

Special thanks to my colleagues and friends for providing me useful comments, suggestions
and continuous encouragement.

Finally, I thanks my family members, for their support and endurance during this work.

----------------------------------

Mr. kadam gaurav Prakash rupali

(Seat No:1910493)

You might also like