Sie sind auf Seite 1von 47

PROJECT REPORT FACE IDENTIFICATION

1 INTRODUCTION

1.1 PURPOSE OF THE PROJECT:


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.

1.2 PROJECT OBJECTIVE:


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.

1.3 PROJECT SCOPE:


The scope of the project is confined to store the image and store in the
database. When a person has to be identified the images stored in the database are
compared with the existing details.

1.4 PROJECT OVERVIEW:


This project can be used to identify a criminal in the investigation
department. The project maintains the photographs of all the criminals. Each
photograph is clipped into different parts.

-1-
PROJECT REPORT FACE IDENTIFICATION

2. SYSTEM REQUIREMENTS ANANLYSIS

2.1EXISTING SYSTEM
The development of face identification has been past from the year to
years. In recent years to identify any criminal face they used to make a sketch or draw
a image based on the eyewitnesses. It used to take more amount of time and it was
very difficult task for any investigation department to easily catch the criminals within
a stipulated time. In order to catch the criminals first they used to search their record
whether to find out is there any record about that particular person in the past. In olden
days each and every record was maintained in the books or registers or files which
used to contain information about previous criminals with their names, alias name,
gender, age, crime involved, etc. Here each and every task used to take the help of the
person because they used to write in them and it needed very much of manual effort.
There are three major research groups, which propose three different
approaches to the face recognition problem. The largest group has dealt with facial
characteristics. The second group performs human face identification based on feature
vectors extracted from profile silhouettes. The third group uses feature vectors
extracted from a frontal view of the face. The first method is based on the information
theory concepts in other words on the principal component analysis methods. In this
approach, the most relevant information that best describes a face is derived from the
entire face image. The second method is based on extracting feature vectors from the
basic parts of a face such as eyes, nose, mouth and chin.

2.2PROPOSED 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.

2.2.1Overview of Proposed System:

-2-
PROJECT REPORT FACE IDENTIFICATION

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

2.3 FEASIBILITY STUDY


Once the problem is clearly understood, the next step is to conduct
feasibility study, which is high-level capsule version of the entered systems and
design process. The objective is to determine whether or not the proposed system is
feasible. The three tests of feasibility have been carried out.
• Technical Feasibility
• Economical Feasibility
• Operational Feasibility

2.3.1 Technical Feasibility


In Technical Feasibility study, one has to test whether the proposed
system can be developed using existing technology or not. It is planned to implement
the proposed system using java technology. It is evident that the necessary hardware
and software are available for development and implementation of the proposed
system. Hence, the solution is technically feasible.

2.3.2 Economical Feasibility


As part of this, the costs and benefits associated With the proposed system
compared and the project is economically feasible only if tangible or intangible
benefits outweigh costs. The system development costs will be significant. So the
proposed system is economically feasible.

2.3.3Operational Feasibility
It is a standard that ensures interoperability Without stifling competition and
innovation among users, to the benefit of the public both in terms of cost and service
quality. The proposed system is acceptable to users. So the proposed system is
operationally feasible.

-3-
PROJECT REPORT FACE IDENTIFICATION

2.4 SYSTEM REQUIREMENT SPECIFICATION

2.4.1 Software Requirements:


Operating System : Windows 2000
Database Server : Oracle 9i
Programming Language : Java
Frame Work : Swing

2.4.2 Hardware Requirements:


Processor : Pentium IV
Clock Speed : 2.86GHZ Processor
Hard disk : 2GB or above
RAM : 256MB or above

2.5 SYSTEM MODULE DESCRIPTION

 Add Image
 Clip Image
 Construct Image
 Identify Image

A module is a small part of our project. This plays a very important role in
the project and in coding concepts. In Software Engineering concept we treat it has a
small part of a system but whereas in our programming language it is a small part of
the program, which we also called as function in, some cases which constitute the
main program.

Importance of modules in any software development side is we can easily


understand what the system we are developing and what its main uses are. At the time
of project we may create many modules and finally we combine them to form a
system.
2.5.1 Add Image
Add Image is a module that is considered with adding image along
with the complete details of the person of whom we are taking image. In this we add

-4-
PROJECT REPORT FACE IDENTIFICATION

Image and store them in our database. This module is mainly considered for adding
details of the criminals like name, age, alias name, gender, location, state, Arrested
Date, etc. At the time of the adding image we give some criminal id to that particular
person, so that it can be easily added to the database with any duplication of the data.

2.5.2 Clip Image


This modules main function is to divide the images into different
pieces such as hairs, forehead, eyes, nose and lips and store them in the database and
also creates the files onto our system.

2.5.3 Construct Image


Based on the eyewitness’s clues we are going to construct the images.
The witness will give us instruction by looking onto the screen on which there will be
the parts of the images like eyes, hairs etc.

2.5.4 Identify Image


This module contains the interface to take the image from above
module and it compares or searches with the images already there in the database. If
any image is matched then we identify him/her as the criminal else we add that new
image again to the database.

SYSTEM DESIGN

-5-
PROJECT REPORT FACE IDENTIFICATION

UML DIAGRAMS

UNIFIED MODELING LANGUAGE

UML is the international standard notation for object-oriented analysis and design.
The Object Management Group defines it. The heart of object-oriented problem
solving is the construction of a model. The model abstracts the essential details of the
underlying problem from its usually complicated real world. Several modeling tools
are wrapped under the heading of the UML™, which stands for Unified Modeling
Language™.

AN OVERVIEW OF UML:

The UML is a language for


• Visualizing
• Specifying
• Constructing
• Documenting
These are the artifacts of a software-intensive system. The three major elements of
UML are
• The UML’s basic building blocks
• The rules that dictate how those building blocks may be put together.
• Some common mechanisms that apply throughout the UML.
BASIC BUILDING BLOCKS OF THE UML:

The vocabulary of UML encompasses three kinds of building blocks:


 Things
 Relationships
 Diagrams

Things are the abstractions that are first-class citizens in a model.


Relationships tie these things together.
Diagrams group the interesting collection of things.

-6-
PROJECT REPORT FACE IDENTIFICATION

THINGS IN THE UML:

They are the abstractions that are first-class citizens in a model. There are four kinds
of things in the UML
1. Structural things
2. Behavioral things.
3. Grouping things.
4. Annotational things.

These things are the basic object oriented building blocks of the UML. They are used
to write well-formed models.

STRUCTURAL THINGS:

Structural things are the nouns of the UML models. These are mostly static parts of
the model, representing elements that are either conceptual or physical. In all, there
are seven kinds of Structural things.
Class:
A class is a description of a set of objects that share the same attributes, operations,
relationships, and semantics. A class implements one or more interfaces. Graphically
a class is rendered as a rectangle, usually including its name, attributes and operations,
as shown below.

Interface:
An interface is a collection of operations that specify a service of a class or
component. An interface describes the externally visible behavior of that element.
Graphically the interface is rendered as a circle together with its name.

-7-
PROJECT REPORT FACE IDENTIFICATION

ISpelling

Collaboration:

Collaboration defines an interaction and is a society of roles and other elements that
work together to provide some cooperative behavior that’s bigger than the sum of all
the elements. Graphically, collaboration is rendered as an ellipse with dashed lines,
usually including only its name as shown below.

Chain of
Responsibili
ty
Use Case:

Use case is a description of a set of sequence of actions that a system performs that
yields an observable result of value to a particular thing in a model. Graphically, Use
Case is rendered as an ellipse with dashed lines, usually including only its name as
shown below.

Place Order

Active Class:

An active class is a class whose objects own one or more processes or threads and
therefore can initiate control activity. Graphically, an active class is rendered just like
a class, but with heavy lines usually including its name, attributes and operations as
shown below.

-8-
PROJECT REPORT FACE IDENTIFICATION

Face
Identification

Image

Suspend ()
Flush ()

Component:
Component is a physical and replaceable part of a system that conforms to and
provides the realization of a set of interfaces. Graphically, a component is rendered as
a rectangle with tabs, usually including only its name, as shown below.

orderform.java

Node:
A Node is a physical element that exists at run time and represents a computational
resource, generally having at least some memory and often, processing capability.
Graphically, a node is rendered as a cube, usually including only its name, as shown
below.

server

BEHAVIORAL THINGS:
Behavioural Things are the dynamic parts of UML models. These are the verbs of a
model, representing behaviour over time and space.

-9-
PROJECT REPORT FACE IDENTIFICATION

Interaction:
An interaction is a behavior that comprises a set of messages exchanged among a set
of objects within a particular context to accomplish a specific purpose. Graphically, a
message is rendered as a direct line, almost always including the name if its operation,
as shown below.

Display

State Machine:
A state machine is a behavior that specifies the sequence of states an object are an
interaction goes through during its lifetime on response to events, together with its
responses to those events. Graphically, a state is rendered as a rounded rectangle
usually including its name and its sub-states, if any, as shown below.

Waiting

GROUPING THINGS:
Grouping things are the organizational parts of the UML models. These are the boxes
into which a model can be decomposed.
Package:
A package is a general-purpose mechanism for organizing elements into groups.

Business Rules

ANNOTATIONAL THINGS:
Annotational things are the explanatory parts of the UML models.
Note:

- 10 -
PROJECT REPORT FACE IDENTIFICATION

A note is simply a symbol for rendering constraints and comments attached to an


element or a collection of elements.
Graphically a note is rendered as a rectangle with dog-eared corner together, with a
textual or graphical comment, as shown below.

RELATIONSHIPS IN THE UML:


There are four kinds of relationships in the UML:
1. Dependency
2. Association
3. Generalization
1.Dependency: This is relationship between two classes whenever one class is
completely dependent on the other class. Graphically the dashed line represents it
with arrow pointing to the class that it is being depended on.

2. Association: It is a relationship between instances of the two classes. There is


an association between two classes if an instance of one class must know about the
other in order to perform its work. In a diagram, an association is a link connecting
two classes. Graphically it is represented by line as shown.

3. Generalization: An inheritance is a link indicating one class is a super class of


the other. A generalization has a triangle pointing to the super class. Graphically it
is represented by line with a triangle at end as shown.

DIAGRAMS IN UML:

- 11 -
PROJECT REPORT FACE IDENTIFICATION

Diagrams play a very important role in the UML. There are nine kind of modeling
diagrams as follows:

• Use Case Diagram


• Class Diagram
• Object Diagram
• Sequence Diagram
• Collaboration Diagram
• State Chart Diagram
• Activity Diagram
• Component Diagram
• Deployment Diagram

CLASS DIAGRAM:

Class diagrams are the most common diagrams found in modeling object-oriented
systems. A class diagram shows a set of classes, interfaces, and collaborations and
their relationships. Graphically, a class diagram is a collection of vertices and arcs.
Contents:
Class Diagrams commonly contain the following things:
Classes
Interfaces
Collaborations
Dependency, generalization and association relationships

USE CASES DIAGRAM:

Use Case diagrams are one of the five diagrams in the UML for modeling the dynamic
aspects of systems(activity diagrams, sequence diagrams, state chart diagrams and
collaboration diagrams are the four other kinds of diagrams in the UML for modeling
the dynamic aspects of systems). Use Case diagrams are central to modeling the
behavior of the system, a sub-system, or a class. Each one shows a set of use cases
and actors and relationships.

- 12 -
PROJECT REPORT FACE IDENTIFICATION

Common Properties:
A Use Case diagram is just a special kind of diagram and shares the same common
properties, as do all other diagrams- a name and graphical contents that are a
projection into the model. What distinguishes a use case diagram from all other kinds
of diagrams is its particular content.

Contents
Use Case diagrams commonly contain:
Use Cases
Actors
Dependency, generalization, and association relationships

Like all other diagrams, use case diagrams may contain notes and constraints. Use
Case diagrams may also contain packages, which are used to group elements of your
model into larger chunks. Occasionally, you will want to place instances of use cases
in your diagrams, as well, especially when you want to visualize a specific executing
system.

INTERACTION DIAGRAMS
An Interaction diagram shows an interaction, consisting of a set of objects and their
relationships, including the messages that may be dispatched among them. Interaction
diagrams are used for modeling the dynamic aspects of the system.

A sequence diagram is an interaction diagram that emphasizes the time ordering of the
messages. Graphically, a sequence diagram is a table that shows objects arranged
along the X-axis and messages, ordered in increasing time, along the Y-axis and
messages, ordered in increasing time, along the Y-axis.

Contents
Interaction diagrams commonly contain:
Objects
Links
Messages
Like all other diagrams, interaction diagrams may contain notes and constraints.

- 13 -
PROJECT REPORT FACE IDENTIFICATION

SEQUENCE DIAGRAMS:
A sequence diagram is an interaction diagram that emphasizes the time ordering of the
messages. Graphically, a sequence diagram is a table that shows objects arranged
along the X-axis and messages, ordered in increasing time, along the Y-axis.
Typically you place the object that initiates the interaction at the left, and increasingly
more sub-routine objects to the right. Next, you place the messages that these objects
send and receive along the Y-axis , in order of increasing time from top to the bottom.
This gives the reader a clear visual cue to the flow of control over time.

Sequence diagrams have two interesting features:

1. There is the object lifeline. An object lifeline is the vertical dashed line that
represents the existence of an object over a period of time. Most objects that
appear in the interaction diagrams will be in existence for the duration of the
interaction, so these objects are all aligned at the top of the diagram, with their
lifelines drawn from the top of the diagram to the bottom.

2. There is a focus of the control. The focus of control is tall, thin rectangle that
shows the period of time during which an object is performing an action, either
directly or through the subordinate procedure. The top of the rectangle is
aligns with the action; the bottom is aligned with its completion.

Contents
Sequence diagrams commonly contains
Objects
Object Life Line
Focus Of Control

ACTIVITY DIAGRAM

An Activity Diagram is essentially a flow chart showing flow of control from activity
to activity. They are used to model the dynamic aspects of as system. They can also be
used to model the flow of an object as it moves from state to state at different points in
the flow of control.

- 14 -
PROJECT REPORT FACE IDENTIFICATION

An activity is an ongoing non-atomic execution with in a state machine. Activities


ultimately result in some action, which is made up of executable atomic computations
that result in a change of state of distinguishes a use case diagram from all other kinds
of diagrams is its particular content.

Contents
Activity diagrams commonly contain:
Fork
Start & End Symbol

STATE CHART DIAGRAMS

A state chart diagram shows a state machine. State chart diagrams are used to model
the dynamic aspects of the system. For the most part this involves modeling the
behavior of the reactive objects. A reactive object is one whose behavior is best
characterized by its response to events dispatched from outside its context. A reactive
object has a clear lifeline whose current behavior is affected by its past.

A state chart diagram show a state machine emphasizing the flow of control from state
to state. A state machine is a behavior that specifies the sequence of states an object
goes through during its lifetime in response to events together with its response to
those events. A state is a condition in the life of the object during which it satisfies
some conditions, performs some activity or wait for some events. An event is a
specification of a significant occurrence that has a location in time and space.
Graphically a state chart diagram is a collection of vertices and arcs.

Contents:
State chart diagram commonly contain:
Simple states and Composite states.
Transitions, events and actions.

- 15 -
PROJECT REPORT FACE IDENTIFICATION

CLASS DIAGRAM

USE CASE DIAGRAM

- 16 -
PROJECT REPORT FACE IDENTIFICATION

SEQUENCE DIAGRAM

- 17 -
PROJECT REPORT FACE IDENTIFICATION

ACTIVITY DIAGRAM

Login

Authentication

Valid User

Invalid User
Main Screen

Choose Option

Clip Update Construct Search


Add Image
Image Details Image Process

Open Open
Enter Specify Search
Image& Record &
Details Feature Image &
Make Clips Update
Get Details

Add Clips
Add to Add to Search
to Result
Database database Image
Database

End

- 18 -
PROJECT REPORT FACE IDENTIFICATION

OVERVIEW OF E-R DIAGRAM

An E-R Diagram stand for Entity Relationship model is a tool


that is commonly used to translate different views of data among managers, users and
programmers to fit into a common framework, define data processing and constraint
requirements to help us meet the different views and helps to implement the database.

The E-R model forms the basis of E-R diagram that represent
the conceptual database as viewed by the end user. These diagrams depict the E-R
model three main Components:

 Entities
 Attributes
 Relationships.

1. ENTITIES
An entity at the E-R modeling level actually refers to the
entity set not to a single entity occurance. In other words the word “entity” in the E-R
model corresponds to a table and not to a row in the relational environment. The E-R
model refers to a specific table row as an entity instance or entity occurrence. An
entity is represented by a rectangle containing the entity occurrence. An entity is
represented by a rectangle containing the entities name.

It is denoted by rectangle by specifying the table name in it.

2. ATTRIBUTES

Attributes are represented by ovals and are connected to the


entity with a line. Each oval contain the name of the attribute it represents. For
example Criminal Details entity includes the attributes cid, fname, lname, etc.

- 19 -
PROJECT REPORT FACE IDENTIFICATION

3. RELATIONSHIP

A relationship is an association between entities. Each


relation is identified so that its name is descriptive of the relation. Ideally the
name is an active verb.

Ci fnam Forehead Nos


Crime Hairs
d ee age e Chi
Involve n
d

Con
FACE Face_heights
n-
ecte
d by

Crime Cid
Crim Suspect
Id
e Id Photo Photo
Height
Con
n- Face_Suspects
Face_Suspect ecte
photo d by

NORMALIZATION

In relation database design the process of organizing data to minimize


redundancy. Normalization usually involves dividing a database into two or more
tables and defining relations among tables. The objective is to isolate data so addition,
deletion and modification of a field can be made in just one table and they propagated
through rest of the database visa defined relations.
There are there main normal forms each with increasing level of normalization.

- 20 -
PROJECT REPORT FACE IDENTIFICATION

 First Normal From (1NF): - Each field in table contains different


information. For example in an employee list each table would contain only
one birth date field.
 Second Normal From (2NF): - Each field in table that is not determining of
the contents of another field must it self are function of the other fields in the
table.
 Third Normal From (3Nf): - No duplicate information is permitted. So, for
example if two tables both require birth date fields the birth date information
would be spread in to separate table, and two another tables would then access
the birth date information via an index field in the birth date table. Any
changes in birth date would automatically reflect in all tables that link to that
birth date

DATABASE TABLES
FACE

Field Name Data Type Size

Criminal Id Number 5 (Primary Key)


First Name Varchar2 15
Last Name Varchar2 15
Alias Name Varchar2 15
D.O.B Date
Age Number 5
Gender Varchar2 15
Address Varchar2 15
City Varchar2 15
State Varchar2 15
Arrested Date Date
Crime Involved In Varchar2 15
Photo Varchar2 15

- 21 -
PROJECT REPORT FACE IDENTIFICATION

CRIMINAL_SUSPECT TABLE

Field Name Data Type Size


Criminal Id Number 5 (Primary Key)
Cid Number 5

FACE_HEIGHTS TABLE

Field Name Data Type Size


Criminal Id Number 5
Hair Number 5
Forehead Number 5
Eyes Number 5
Nose Number 5
Lips Number 5
Chin Number 5

FACE_SUSPECTPHOTO

Field Name Data Type Size


Cid Number 5
Suspect Photo Varchar2 15
Suspect Height Varchar2 15

4. IMPLEMENTATION

- 22 -
PROJECT REPORT FACE IDENTIFICATION

OVERVIEW OF JAVA

Java was conceived by James Gosling, Patrick Naughton, Chris Warth, Ed Frank and
Mike Sheridan at Sun Microsystems Inc.in 1991. It took 18 months to develop the
first working version. This language was initially called “Oak” but was renamed as
“Java” in 1995. Between the initial implementation of Oak in the fall of 1992 and the
public announcement of Java in the spring of 1995, many more people contributed to
the design and evolution of the language.

The main properties of the Java, which made Java so popular, are as follows:
1. Simple
2. Secure
3. Portable
4. Object-Oriented
5. Robust
6. Multithreaded
7. Architecture-Neutral
8. Interpreted
9. High performance
10.Distributed
11.Dynamic

The most striking feature of the language is that is a platform-neutral language.


Java is first programming language that is not tied to any particular hardware or
operating system. Programs developed in Java can be executed anywhere on any
system.

THE KEY FEATURES OF JAVA IS BYTE CODE:


The key that allows Java to solve both the security and the portability
problems just described is that the output of a Java compiler is not executable code.
Rather, it is Byte code. Byte code is a highly optimized set of instructions designed to
be executed by the Java runtime systems, which is called the Java Virtual Machine

- 23 -
PROJECT REPORT FACE IDENTIFICATION

(JVM). That is, in its standard form, the JVM is an interpreter for Byte code. This may
come has a bit of surprise.

Translating a Java program into a byte code helps and makes it much
easier to run a program in a wide variety of environments. The reason is
straightforward only the JVM needs to be implemented for each platform. Once the
runtime package exists for a given system, any Java program can run on it.
Remember, although the details of the JVM will differ from platform to platform, all
interpret the same Java Byte code.

JAVA ENVIRONMENT:

Java environment includes a large number of development tools and


hundreds of classes and methods. The development tools are the part of the system
known as Java Development Kit (JDK) and the classes are methods are part of the
Java standard library (JSL), also known as the Application Programming Interface
(API).

JAVA DEVELOPMENT KIT:


The Java development kit comes with a collection of tools that are used
for developing and running Java programs. They include:
1. Applet Viewer (for viewing Java Applets)
2. Javac (Java Compiler)
3. Java (Java interpreter)
4. Javap (Java Disassembler)
5. Javah (for C header files)
6. Javadoc (for creating HTML documents)
7. Jdb (Java Debugger)

APPLICATION PROGRAMMING INTERFACE:


The Java standard library includes hundreds of classes and methods
grouped into several functional packages. Most commonly used packages are:
 Language support package: A collection of classes and methods required for
implementing basic features of java.

- 24 -
PROJECT REPORT FACE IDENTIFICATION

 Utilities package: A collection of classes to provide utility functions such as


date and time functions.

 Input/Output package: A collection of classes required for input & output


manipulations.

 Networking package: A collection of classes for communication with other


computers via Internet.

 AWT package: The abstract window toolkit package contains classes that
implements platform independent graphical user interface.

 Applet package: This includes a set of classes that allows us to create Java
applets.
OVERVIEW OF SWINGS

Swings are basically used to create a GUI look i.e. graphical user
interface. A GUI presents a pictorial interface to a program. It allows the user to spend
less time trying to remember which keystroke sequence do what and spends more time
using the program in a productive manner.

The classes that are used to create the GUI components of swing are part
of javax.swing package. These are the latest GUI components of java2 platform.
Swing Components are written, manipulated and displayed completely in java.

Difference Between AWT & Swings:


The original GUI components from Abstract Windows Toolkit package
java.awt are tied directly to the local platforms graphical user interface capabilities.
So, a java program executing on a different java platforms has a different appearance
and sometimes even different user interaction on each platform.

- 25 -
PROJECT REPORT FACE IDENTIFICATION

The swing component allows the programmer to specify a different look


and feel for each platform, or uniform look and feel across all platforms. Because
swing components are written in Java, they provide a greater level of portability and
flexibility than original java GUI component i.e. AWT. Swing components are often
referred as lightweight components because they are written completely in Java so
they are not “weighed down” by complex GUI capabilities of the platform on which
they are used. Whereas AWT components that are tied to local platform are
correspondingly called heavyweight components as they rely on the local platform
windowing system to determine their functionality and their look and feel.

The important topics that play a very vital role in swings are as follows:

 Component: A class component defines the methods that can be applied to an


object of any subclass of component.

 Container: It is a collection of a related components, we attach components to


the contentpane i.e. Container. Here two important methods which are
important for a container are add & setLayout where we can add any
components and set the size and position of that particular component.

 JLabel: JLabel provides text information or information on GUI. It displays a


single line of read-only text. We can add ToolTip & Icons to JLabel.

 JtextField Or JPasswordField: these are single-line areas in which the users


can enter text from keyboard or text can simply be displayed. JPasswordField
is used to encrypt the text.

 JButton: A Button is a component the user clicks to trigger a specific action.


There are several types of buttons like Command buttons, CheckBoxes,
ToggleButtons and RadioButtons.

 JCheckBox & JRadioButton: The swing GUI component has three types of
state buttons- JToggleButtons, JCheckBox and JRadioButton that have on/off

- 26 -
PROJECT REPORT FACE IDENTIFICATION

or true/false values. A JRadioButton is different from a JCheckBox in the there


are several JRadioButton are grouped and only one of the JRadioButton in the
group can be selected at any time.

 JComboBox: A combobox also called as drop down list provides a list of


items from which the users can make a selection.

 JList: A List display a selection of items from which the user may select one
or more items. JList support single-line selection List and multiple-selection
list.

 JPanel: This is used to arrange component in a exact location.

 JTextArea: It provides an area for manipulating multiple lines of text.

JAVA DATABASE CONNECTIVITY (JDBC)

The Java database connectivity Application Programming Interface


(API) is an API currently being designed by Sun Microsystems that provides a Java
language interface with SQL Call Level Interface standard. This standard provides a
DBMS independent interface to relational databases that defines a generic SQL
database access framework.

The most visible implementation of the SQL CLI is Microsoft’s ODBC


(Open Database Connectivity). This API defines a common SQL syntax and function
calls that can be used by developers to send SQL commands to and retrieve data from
SQL databases. ODBC - enabled applications make use of database drivers (similar to
other device drivers) installed on the system that allows applications to talk to a
vendor’s database. Using this methodology, all of the DBMS specific code is placed
inside the ODBC driver and the application developer is shielded from
implementation specific problems in theory. Practically speaking, it is sometimes
difficult to completely remove vendor’s specific syntax from all ODBC operations,

- 27 -
PROJECT REPORT FACE IDENTIFICATION

but in most cases, it is relatively simple task to port ODBC to run on a new database
server.

ODBC’s primary drawback is that it is written in C. Because of the


limitations inherent in the use of native methods, the JDBC designers have designed
the JDBC specification to most easily use ODBC in short-term, but they have
provided the capability long-term for JDBC to be implemented in other ways.

NOTE: JDBC, like ODBC, is designed to be a Call Level SQL Interface. Because
many of its many of its low-level operations can be combined into a higher level,
object oriented interface, except to see Java class libraries released in the future that
provide a mapping to the underlying JDBC Calls. This happened with ODBC almost
immediately, and the majority of ODBC developers currently use other Interface
rather than using ODBC API directly.

The JDBC API is expressed as a series of abstract Java interfaces


within the java.sql package. Here are the most commonly used interfaces:

• java.sql.DriverManager – manages the loading and unloading of database


drivers from the underlying systems.
• java.sql.Connection – Handles the connections to a specific database.
• java.sql.Statement – contains an SQL statement to be passed to the database:
two sub-types in this interface are the PreparedStatement (for executing a Pre-
Compiled SQL statement) and the CallableStatement (for executing a database
stored procedure).
• java.sql.ResultSet – contains the record result set from the SQL statement
passed to the database.

STEPS REQUIRED TO ACCESS A JDBC DATABASE


The steps required to access a JDBC database should be familiar.
JDBC uses the concept of a “ Connection” handle to manage a program’s connection
to a database.

- 28 -
PROJECT REPORT FACE IDENTIFICATION

ESTABLISING A CONNECTION
The first thing we need to do is establish a connection with the DBMS
you want to use. This involves two steps :

1.Loading the driver: If, we want to use the JDBC-ODBC bridge driver, the
following code will load it :

Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);

Our driver documentation will give us the class name to use. For instance, if the class
name is jdbc.Driverxyz, you would load the driver with the following line of code:

Class.forName(“jdbc.Driverxyz”);

2. Making the connection : the second step in establishing a connection is to have


the appropriate driver connect to the
DBMS. The following line of code illustrates the general syntax:
Connection con;
Con=DriverManager.getConnection (url,”scott”,”tiger”);

This step is also simple with the hardest thing being what to supply for
URL. If you are using the JDBC-ODBC Bridge driver, the JDBC URL will start with
jdbc:odbc:. The rest of the URL is generally your data source name or database
system.

CREATING A STATEMENT

A statement needs to be created so that it can be passed to the database for


processing. This is done by calling the connection class createStatement () method.
Syntax:
Java.sql.Statement st=connection.createStatement();

RETREIVING VALUES FROM RESULT SET

- 29 -
PROJECT REPORT FACE IDENTIFICATION

JDBC returns results in a ResultSet object, so we need to declare in


instance of the class ResultSet to hold our result. The following code demonstrates
declaring the ResultSet object RS and assigning the results to query:
ResultSet rs=st.executeQuery(“SELECT NAME FROM FACE”);

OVERVIEW OF ORACLE

DATABASE
A database is a set of data, organized for easy access. The database is an
actual data; it is the database that you will be accessing when you need to retrieve
data.

DATA DICTIONARY
The data dictionary is a set of tables Oracle uses to maintain information
about the database. The data dictionary contains information about tables, indexes,
clusters and so on.

DBA (DATABASE ADMINISTRATOR)


The DBA is the person responsible for the operation, configuration and
performance of the database. The DBA is charged with keeping the database
operating smoothly, ensuring that backups are done on regular basis (and that backups
work), and installing new software. Other responsibilities might include planning for
future expansion and disk space needs, creating databases and table spaces, adding
users and maintaining security, and monitoring the database and retuning it as
necessary. Large installations might have teams of DBA’s to keep the system running
smoothly; alternatively, the task might be segmented among the DBA’s.

ORACLE
Oracle is a relational database management system, it provides a platform for
client server computing i.e., it supports distributed database and distributed
processing.

STRUCTURED QUERY LANGUAGE (SQL)

- 30 -
PROJECT REPORT FACE IDENTIFICATION

SQL is an ANSI standard computer programming language used to


query relational databases. The ANSI standard for SQL specifies the core syntax for
language itself.

Create Table Command: This is used to create a table in database specifying the
columns in it.

Syntax: create table table_name (column_name datatype(size));

Insertion of values: This is used to insert values to the specified columns in the table.

Syntax: insert into table_name values (expressions);

Viewing Data from tables: This is used to view the content’s of the table created.
Syntax: select * from table_name;

Creating a table from existing table: This is used to create a table from existing
table by taking the columns needed.

Syntax: create table table_name[(column_name)] as select column_name from


table_name;

Inserting data into a table from another table: This is used to insert rows from one
table into another table.

Syntax : insert into table_name values select column_name from table_name;

Delete operation: The verb DELETE in SQL is used to remove all rows from table,
or a selected set of rows from a table.

Syntax: delete from table_name; (deletes all rows)

Syntax: delete from table_name where condition; (deletes specified rows based on
condition)

- 31 -
PROJECT REPORT FACE IDENTIFICATION

Updating the contents of a table: the update command is used to change or modify
data values in a table. To update all the rows from table OR a select set of rows from a
table.

Syntax: update table_name set column_name = expression; (updates all the rows)

Syntax: update table_name set column_name =expression where condition; (updates


selected rows based on condition)

Modifying existing columns: This is used in situation whenever we need to change


the type and size of the column.

Syntax: Alter table table_name modify (column_name new datatype (new size));

Renaming tables: To change the table name.


Syntax: rename oldtable_name to newtable_name;

Destroying tables: This is used to delete any table from the database.

Syntax: drop table_name;

Finding out the tables created by user: To display all the tables which are there in
our database.

Syntax: select * from tab;

Finding out the columns details of a table created: To check which columns are
present and what is there datatype& size we use this command i.e. desc.
Syntax: desc table_name;

- 32 -
PROJECT REPORT FACE IDENTIFICATION

SCREENS

LOGIN SCREEN

MAIN SCREEN

- 33 -
PROJECT REPORT FACE IDENTIFICATION

- 34 -
PROJECT REPORT FACE IDENTIFICATION

- 35 -
PROJECT REPORT FACE IDENTIFICATION

NEW CRIMINAL FORM

SHOW DETAILS

- 36 -
PROJECT REPORT FACE IDENTIFICATION

CLIP IMAGE SCREEN

- 37 -
PROJECT REPORT FACE IDENTIFICATION

UPDATE DETAILS SCREEN

CONSTRUCT SCREEN

FIND FACE

- 38 -
PROJECT REPORT FACE IDENTIFICATION

- 39 -
PROJECT REPORT FACE IDENTIFICATION

HELP SCREEN

- 40 -
PROJECT REPORT FACE IDENTIFICATION

TESTING PHASE

The completion of a system is achieved only after it has been thoroughly


tested. Though this gives a feel the project is completed, there cannot be any project
without going though this stage. Though the programmer may have taken many
precautions not to commit any mistakes that crop up during the execution stage.
Hence in this stage it is decided whether the project can under go the real time
environment execution without any break downs, therefore a package can be rejected
even at this stage.

The testing phase involves the testing of the developed system using
various kinds of data. An elaborated testing of data is prepared and a system is tested
using the test data. While testing, errors are noted and corrections remade, the
corrections are also noted for future use.

SYSTEM TESTING
Testing is a set of activities that can be planned in advance and
conducted systematically. The proposed system is tested in parallel with the software

- 41 -
PROJECT REPORT FACE IDENTIFICATION

that consists of its own phases of analysis, implementation, testing and maintenance.
Following are the tests conducted on the system.

 UNIT TESTING
During the implementation of the system each module of the system was
tested separately to uncover errors with in its boundaries. User interface was used as a
guide in the process.

 MODULE TESTING
A module is composed of various programs related to that module. Module
testing is done to check the module functionality and interaction between units within
a module.
It checks the functionality of each program with relation to other programs
within the same module. It then tests the overall functionality of each module.
 INTEGRATION TESTING
Integration testing is a systematic technique for constructing the program
structure while conducting tests to uncover errors associated with interfacing. The
objective is to take unit-tested module and build a program structure that has been
dictated by design.

 ACCEPTANCE TESTING
The software has been tested with the realistic data given by the client and
produced fruitful results. The client satisfying all the requirements specified by them
has also developed the software within the time limitation specified. A demonstration
has been given to the client and the end-user giving all the operational features.

Unit Testing

S.no. Screen Input Output Remarks

1 Login Page User Id User validation User will enter


Password into Main Screen
2 Main Screen Criminal Details Details are New Menu is
 File are entered stored in the selected to enter

- 42 -
PROJECT REPORT FACE IDENTIFICATION

• New database new criminal


details.
3 Main Screen Display option is Criminal Display details
 File clicked. Details are menu is selected
• Show displayed to get details
Details from database.
4 Main Screen Exit Option is Screen will be Screen will be
 File Clicked. exited shut down
• Exit
5 Main Screen Criminal Image is The clips are Clip image menu
 Edit clipped into stored in is selected to clip
• Clip different parts database image and store
Image them in database
6 Main Screen Changes in the Details of the Update details
 Edit details of the criminal are menu is selected
• Update criminals are updated to update the
Details entered details of the
criminals
7 Main Screen Different clips of Face of the Construct face
 Identificat criminals are criminal is menu is to
ion selected and constructed construct the
• Construct arranged in order criminal face
Face from various
clips stored in the
database.
8 Main Screen Show all suspects All suspects Show more
 Identificat is checked detail along suspect menu is
ion with photo are selected to get
• Find Face displayed the details of all
suspects and
more possible
suspect involved
in crime.
9 Main Screen About Face The version About face
 Help Identification is and the identification

- 43 -
PROJECT REPORT FACE IDENTIFICATION

• About checked overview of system menu is


the system is selected to get
displayed the details of
above system.

IMPLEMENTATION PHASE

The implementation is the final and important phase. It involves User


training, system testing and successful running of the developed system. The users test
the developed system when changes are made according to the needs. The testing
phase involves the testing of the developed system using various kinds of data. An
elaborate testing of data is prepared and system is tested using the tests data.

Implementation is the stage where theoretical design turned into a working


system. Implementation is planed carefully to propose system to avoid unanticipated
problems. Many preparations involved before and during the implementation of
proposed system. The system needed to be plugged in to the organization’s network
then it could be accessed from anywhere, after a user logins into the portal. The tasks
that had to be done to implement the system were to create the database tables in the
organization database domain. Then the administrator was granted his role so that the
system could be accessed.

The next phase in the implementation was to educate the system. A


demonstration of all the functions that can be carried out by the system was given to
examination department person, who will make extensive use of the system.

- 44 -
PROJECT REPORT FACE IDENTIFICATION

CONCLUSION

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.

- 45 -
PROJECT REPORT FACE IDENTIFICATION

BIBLIOGRAPHY

BOOKS REFERRED

The following books were used extensively for the project development and
implementation.

1.”The Complete Reference Java2” Tata McGraw-Hill publishing Company Limited.


By Herbert Schildt.

2. “Software Engineering, A Practitioner’s Approach” Tata McGraw-Hill Publishing


Company Limited. By Roger S. Pressman.

3. “PL/SQL”. By Ivan Bayross.

WEBSITES REFERRED

The following links were searched and exploited extensively for the project
development and implementation.

1. http://www.java.sun.com/products\java
2. http://www.jakarta.apache.org

- 46 -
PROJECT REPORT FACE IDENTIFICATION

3. http://www.javaworld.com/
4. http://www.java2s.com/

- 47 -

Das könnte Ihnen auch gefallen