FACE IDENTIFICATION
FACE IDENTIFICATION
-1-
PROJECT REPORT
FACE IDENTIFICATION
ABSTRACT
-2-
PROJECT REPORT
FACE IDENTIFICATION
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 eyewitnesses. In most cases the quality and resolution of the recorded image-segments is poor and hard to identify a face. To overcome this sort of problem we are developing software. Identification can be done in many ways like fingerprint, eyes, DNA etc. One of the applications is face identification. The face is our primary focus of attention in social inter course playing a major role in conveying identity and emotion. Although the ability to infer intelligence or character from facial appearance is suspect, the human ability to recognize faces is remarkable. The operator first logs into the system by entering username and password. Then depending on the work allotted he has to select the screens from main menu screen. There are mainly three important function which he can do they are adding details, clipping image and finally construction of the face by using the eyewitness. The face that is finally formed is one the who has done the crime.
-3-
PROJECT REPORT
FACE IDENTIFICATION
CONTENTS
-4-
PROJECT REPORT
FACE IDENTIFICATION
2. SYSTEM ANALYSIS 2.1 2.2 2.3 Existing System Proposed System Feasibility Study
3. MODULE DESCRIPTION 3.1 3.2 3.3 3.4 Add Image Clip Image Construct Image Identification
-5-
PROJECT REPORT
FACE IDENTIFICATION
5. LITERATURE SURVEY 6. SYSTEM DESIGN 5.1 5.2 Detailed Design 5.1.1 UML Diagrams Database Design 5.2.1 Dataflow Diagrams 5.2.2 Database Tables 5.2.3 E-R Diagrams 5.2.4 Screens. 7. TESTING 8. IMPLEMENTATION 9. CONCLUSION 10. BIBLIOGRAPHY
-6-
PROJECT REPORT
FACE IDENTIFICATION
INTRODUCTION
-7-
PROJECT REPORT
FACE IDENTIFICATION
ORGANIZATION PROFILE
-8-
PROJECT REPORT
FACE IDENTIFICATION
acknowledged
the
participants
COMMANWEALTH
secretariat, various United Nations Agencies, the World Bank, Ministry of External Affairs, Department of personnel, Member
-9-
PROJECT REPORT
FACE IDENTIFICATION
of Parliament, Officers of the Indian Administrative, Foreign and police service, and participants from the ministry of environment & forests and Indian banks. CMC is leading information Technology Company in India providing IT solutions in all the core sectors of economy with a view to increase productivity and to improve the quality of life. CMC provides one point support to customers through its strategic business units namely. Customer Services System Integration Education and Training Indonet.
WHY IT TRAINING:
Information and communication Technologies are rapidly
changing and affecting every facet of human activity. As such huge job potential exists in IT an industry and ITES (IT Enabled Services) industry. India is recognized as a leader in IT and lot of World wide organizations are looking into India.
- 10 -
PROJECT REPORT
FACE IDENTIFICATION
CMC has a very wide network of training centers equipped with modern teaching aids. CMC provides high quality training at affordable prices. CMC through its CET (Center for Education Technology) continuously updates courses/ standard course material. Students coming out of CMC training coming out of CMC training programmers are accepted by industry.
- 11 -
PROJECT REPORT
FACE IDENTIFICATION
technology is CMCs vertical expertise in whole range of industries both infrastructure industries like power, coal, oil and transportation, as well as service industries such as banking, law and order and education. It is this totality of expertise that has enabled CMC to develop a variety of superior IT products and to execute a number of complex and challenging projects, not only in India, but also in Europe, America, Africa, the Middle East and South East Asia.
FIRST CHALLENGE:
CMC limited commenced operation as Computer Maintenance Corporation in October 1976. The first challenge came just one year later in November 1977. June 1978. confusion. IBM announced that it would cease its maintenance and support operations in India form The entire Indian computer community, the It was at this juncture that CMC took a bold majority of whom had IBM equipment, was thrown into decision: it offered to provide maintenance services to all users of IBM equipment in India, regardless of the type, age size or location of their machines. The task was truly a staggering one but CMC faced it with confidence. Exactly six months later, CMC stepped into IBM shoes and took over the maintenance of over 800 IBM installations without any dislocation.
FURTHER A FIELD:
- 12 -
PROJECT REPORT
FACE IDENTIFICATION
Even as maintenance operations for IBM equipment were established, the Corporation began looking further a field. While maintenance activities progressed apace, CMC turned its attention to other areas of computer support. Computer supporter. Computer centers were set up in different cities and a whole range of consultancy services were offered. Computer education and training programmers were started. of contemp9orary technology. The R&D Center at Hyderabad undertook pioneering projects in the areas Software development in data And INDONET, Indias communications and database management became one of the Corporations fastest growing activities. first national computer network began taking shape.
RE-DEFINING PRIORITIES:
It soon became evident that calling CMC maintenance
Corporation did not reflect the wide scope of its activities and services. It was in recognition of this fact that in august, 1984, Computer Maintenance Corporation became CMC Limited.
CMC TODAY:
While hardware maintenance continues to play a major role, CMCs activities have advanced in many new directions. CMC is one of the leading systems Integrators in the country with multifaceted expertise in Information Technology as a part of the globalization activities. In the light of the growth of the communication sector and its importance to the liberalized economy, CMC revamped its communication network INDONET,
- 13 -
PROJECT REPORT
FACE IDENTIFICATION
in terms of new protocols, communication equipment as well as host systems. The need for highly specialized software engineering skills in the coming years has triggered increased Education & Training activities. In order to give focus to the above mentioned business areas; five strategic Business Units (subs) have been formed, namely, customer services, systems Integration, International Each of the and Operations, INDONET and Education & Training. profit center with increased overall
vertical units in the CMCs line of business will operate as a productivity accountability. This will also help to gauge the performance of various business activities in terms of contribution and other measures of excellence to achieve industry standards and ultimately result in greater customer satisfaction. With 18 offices in India, a subsidiary company in USA, 760 software engineers, CMC caters to the IT requirements of customers from various fields, spread over a vast global area.
- 14 -
PROJECT REPORT
FACE IDENTIFICATION
FACE IDENTIFICATION
- 15 -
PROJECT REPORT
FACE IDENTIFICATION
PROJECT REPORT
FACE IDENTIFICATION
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.3
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.2.4
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.2.5
PROJECT OVERVIEW:
This project can be used to identify a
- 17 -
PROJECT REPORT
FACE IDENTIFICATION
the photographs of all the criminals. Each photograph is clipped into different parts.
- 18 -
PROJECT REPORT
FACE IDENTIFICATION
SYSTEM ANANLYSIS
- 19 -
PROJECT REPORT
FACE IDENTIFICATION
EXISTING SYSTEM
- 20 -
PROJECT REPORT
FACE IDENTIFICATION
- 21 -
PROJECT REPORT
FACE IDENTIFICATION
method is based on extracting feature vectors from the basic parts of a face such as eyes, nose, mouth and chin.
- 22 -
PROJECT REPORT
FACE IDENTIFICATION
PROPOSED SYSTEM
- 23 -
PROJECT REPORT
FACE IDENTIFICATION
Comparing the image with the faces that are there in our database.
- 24 -
PROJECT REPORT
FACE IDENTIFICATION
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.
- 25 -
PROJECT REPORT
FACE IDENTIFICATION
FEASIBILITY STUDY
- 26 -
PROJECT REPORT
FACE IDENTIFICATION
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.
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
- 27 -
PROJECT REPORT
outweigh costs. The system
FACE IDENTIFICATION
development costs will be
OPERATIONAL 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.
- 28 -
PROJECT REPORT
FACE IDENTIFICATION
MODULE DESCRIPTION
- 29 -
PROJECT REPORT
FACE IDENTIFICATION
MODULES
Add Image Clip Image Construct Image Identification 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.
PROJECT REPORT
FACE IDENTIFICATION
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.
3.4 IDENTIFICATION
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.
- 31 -
PROJECT REPORT
FACE IDENTIFICATION
SYSTEM REQUIREMENTS
- 32 -
PROJECT REPORT
FACE IDENTIFICATION
SYSTEM REQUIREMENTSPECIFICATION
4.1 SOFTWARE REQUIREMENTS:
Operating System Database Server Frame Work Programming Language : Windows 2000 : Oracle 9i : Java : Swing
4.2
HARDWARE REQUIREMENTS:
Processor Clock Speed Hard disk RAM : Pentium IV : 2.86GHZ Processor : 2GB : 256MB
- 33 -
PROJECT REPORT
FACE IDENTIFICATION
LITERATURE SURVEY
- 34 -
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
- 35 -
PROJECT REPORT
FACE IDENTIFICATION
that is not tied to any particular hardware or operating system. Programs developed in Java can be executed anywhere on any system.
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
- 36 -
PROJECT REPORT
FACE IDENTIFICATION
Development Kit (JDK) and the classes are methods are part of the Java standard library (JSL), also known as the Application Programming Interface (API).
- 37 -
PROJECT REPORT
FACE IDENTIFICATION
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
- 38 -
PROJECT REPORT
FACE IDENTIFICATION
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. 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
- 39 -
PROJECT REPORT
local platform are
FACE IDENTIFICATION
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
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
- 40 -
PROJECT REPORT
Command buttons,
FACE IDENTIFICATION
CheckBoxes, ToggleButtons and
RadioButtons.
JCheckBox & JRadioButton: The swing GUI component has
three types of state buttons- JToggleButtons, JCheckBox and JRadioButton that have on/off 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 singleline 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.
- 41 -
PROJECT REPORT
The Java database
FACE IDENTIFICATION
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 Microsofts 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 vendors 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 vendors specific syntax from all ODBC operations, but in most cases, it is relatively simple task to port ODBC to run on a new database server. ODBCs 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.
- 42 -
PROJECT REPORT
FACE IDENTIFICATION
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 unloading 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. of database manages drivers the loading and
from
the
underlying
- 43 -
PROJECT REPORT
FACE IDENTIFICATION
The steps required to access a JDBC database should be familiar. JDBC uses the concept of a Connection handle to manage a programs connection to a database.
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:
- 44 -
PROJECT REPORT
FACE IDENTIFICATION
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();
OVERVIEW OF ORACLE
DATABASE
- 45 -
PROJECT REPORT
FACE IDENTIFICATION
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.
ensuring that backups are done on regular basis (and that work), installing new software. 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 DBAs to keep the system running smoothly; alternatively, the task might be segmented among the DBAs.
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.
- 46 -
PROJECT REPORT
FACE IDENTIFICATION
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 contents 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;
- 47 -
PROJECT REPORT
FACE IDENTIFICATION
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) 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
- 48 -
PROJECT REPORT
FACE IDENTIFICATION
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;
- 49 -
PROJECT REPORT
FACE IDENTIFICATION
SYSTEM DESIGN
- 50 -
PROJECT REPORT
FACE IDENTIFICATION
DETAILED DESIGN
- 51 -
PROJECT REPORT
FACE IDENTIFICATION
UML DIAGRAMS
PROJECT REPORT
FACE IDENTIFICATION
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 UMLs basic building blocks The rules that dictate how those building blocks may be put together. Some common mechanisms that apply throughout the UML.
- 53 -
PROJECT REPORT
FACE IDENTIFICATION
Things are the abstractions that are first-class citizens in a model. Relationships tie these things together. Diagrams group the interesting collection of things.
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:
- 54 -
PROJECT REPORT
FACE IDENTIFICATION
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.
ISpelling
- 55 -
PROJECT REPORT
FACE IDENTIFICATION
Collaboration:
Collaboration defines an interaction and is a society of roles and other elements that work together to provide some cooperative behavior thats 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.
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
- 56 -
PROJECT REPORT
FACE IDENTIFICATION
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.
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
- 57 -
PROJECT REPORT
FACE IDENTIFICATION
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.
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
- 58 -
PROJECT REPORT
FACE IDENTIFICATION
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
- 59 -
PROJECT REPORT
FACE IDENTIFICATION
ANNOTATIONAL THINGS:
Annotational things are the explanatory parts of the UML models.
Note:
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.
1.Dependency:
whenever
class. Graphically the dashed line represents it with arrow pointing to the class that it is being depended on.
- 60 -
PROJECT REPORT
FACE IDENTIFICATION
3. Generalization: An
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.
4. Realization:
- 61 -
PROJECT REPORT
FACE IDENTIFICATION
DIAGRAMS IN UML:
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
- 62 -
PROJECT REPORT
Interfaces Collaborations
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
- 63 -
PROJECT REPORT
FACE IDENTIFICATION
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 contains: Objects Links Messages
- 64 -
PROJECT REPORT
FACE IDENTIFICATION
Like all other diagrams, interaction diagrams may contain notes and constraints.
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.
- 65 -
PROJECT REPORT
FACE IDENTIFICATION
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. 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:
- 66 -
PROJECT REPORT
Fork Start & End Symbol
FACE IDENTIFICATION
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:
- 67 -
PROJECT REPORT
Simple states and Composite states. Transitions, events and actions.
FACE IDENTIFICATION
CLASS DIAGRAM
- 68 -
PROJECT REPORT
FACE IDENTIFICATION
OBJECT DIAGRAM
- 69 -
PROJECT REPORT
FACE IDENTIFICATION
- 70 -
PROJECT REPORT
FACE IDENTIFICATION
SEQUENCE DIAGRAM
- 71 -
PROJECT REPORT
FACE IDENTIFICATION
COLLABORATION DIAGRAM
- 72 -
PROJECT REPORT
FACE IDENTIFICATION
- 73 -
PROJECT REPORT
FACE IDENTIFICATION
UPDATE DETAILS:
CONSTRUCT MODULE
- 74 -
PROJECT REPORT
FACE IDENTIFICATION
SHOW DETAILS:
- 75 -
PROJECT REPORT
FACE IDENTIFICATION
ACTIVITY DIAGRAM
Login Authentication
Main Screen
Choose Option Update Details Open Record & Update Add to database Construct Image Specify Feature
Add Image
Enter Details
Add to Database
Search Image
Result
End
- 76 -
PROJECT REPORT
COMPONENT DIAGRAM
FACE IDENTIFICATION
- 77 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE DESIGN
- 78 -
PROJECT REPORT
FACE IDENTIFICATION
- 79 -
PROJECT REPORT
FACE IDENTIFICATION
A graphical tool used to describe and analyze the moment of data through a system manual or automated including the process, stores of data, and delays in the system. Data Flow Diagrams are the central tool and the basis from which other components are developed. The transformation of data from input to output, through processes, may be described logically and independently of the physical components associated with the system. The DFD is also know as a data flow graph or a bubble chart.
CONTEXT DIAGRAM:
The top-level diagram is often called a context diagram. It
contains a single process, but it plays a very important role in studying the current system. The context diagram defines the system that will be studied in the sense that it determines the boundaries. Anything that is not inside the process identified in the context diagram will not be part of the system study. It represents the entire software element as a single bubble with input and output data indicated by incoming and outgoing arrows respectively.
- 80 -
PROJECT REPORT
FACE IDENTIFICATION
1. PHYSICAL DFD:
Structured analysis states that the current system should be first understand correctly. The physical DFD is the model of the current system and is used to ensure that the current system has been clearly understood. Physical DFDs shows actual devices, departments, and people etc., involved in the current system
2. LOGICAL DFD:
Logical DFDs are the model of the proposed system. They clearly should show the requirements on which the new system should be built. Later during design activity this is taken as the basis for drawing the systems structure charts.
BASIC NOTATION:
The Basic Notation used to create a DFDs are as follows:
- 81 -
PROJECT REPORT
FACE IDENTIFICATION
DESIGN:
Design is the first step in moving from problem domain to the solution domain. Design is essentially the bridge between requirements specification and the final solution.
- 82 -
PROJECT REPORT
FACE IDENTIFICATION
The goal of design process is to produce a model or representation of a system, which can be used later to build that system. The produced model is called the Design of the System. It is a plan for a solution for the system.
Start
Login
Authentication
Valid User
Invalid User
Main Screen
Add to Database
Search Image
Result - 83 -
End
PROJECT REPORT
FACE IDENTIFICATION
Choose Option
- 84 -
PROJECT REPORT
FACE IDENTIFICATION
EYE WITNESS
OPERATOR
CRIMINAL FACE
Context Flow Diagram Description: Context Flow Diagram gives us the complete
details about the inputs and outputs for a given system. In the above system the main task is to identify a criminal face. So, the operator and eyewitness are the inputs to our system and criminal face is desired output.
LOGIN PROCESS
- 85 -
PROJECT REPORT
FACE IDENTIFICATION
LOGIN
User Id Password
PROCESS
SCREEN
ERROR IN INPUT
Level-1
- 86 -
PROJECT REPORT
FACE IDENTIFICATION
OPERATOR
MAIN SCREEN
CLIP IMAGE
CONSTRUCT IMAGE
Level -2
- 87 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE
OPERATOR
ADD PROCESS
DATA IS ADDED
ERROR
Level-3
CLIPPING PROCESS
- 88 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE
DATABASE
EYES
Level-4 Description: This is used for clipping the image into different
slices say eyes, forehead, lips, hair and nose. The input for this is face which is divided into some slices which are stored in the database. Even though the image is divided into slices, the original image remains as it is.
UPDATE PROCESS
- 89 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE
OPERATOR
UPDATE PROCESS
DATA UPDATED
CONSTRUCT IMAGE
- 90 -
FACE IDENTIFICATION
HAIR FOREHEAD
INSTRUCTION
EYES
FACE
NOSE
LIPS
Level-6 Description:
Based on the instruction given by the
eyewitnesses, the operator brings the clips of the images from the database and then goes for the construction of the image based on those clips.
COMPARISON PROCESS
- 91 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE
FACE
COMPARISON PROCESS
RESULT
- 92 -
PROJECT REPORT
FACE IDENTIFICATION
E-R DIAGRAMS
- 93 -
PROJECT REPORT
FACE IDENTIFICATION
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.
- 94 -
PROJECT REPORT
FACE IDENTIFICATION
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.
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.
- 95 -
PROJECT REPORT
FACE IDENTIFICATION
Ci d
fnam ee
age
Crime Involve d
Forehead
Hairs
Nos e
Crim e Id
Suspect Photo
Crime Id
Cid
Face_Suspect photo
Face_Suspects
- 96 -
PROJECT REPORT
FACE IDENTIFICATION
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.
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
- 97 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE TABLES
- 98 -
PROJECT REPORT
FACE IDENTIFICATION
DATABASE TABLES
FACE
Field Name Criminal Id First Name Last Name Alias Name D.O.B Age Gender Address City State Arrested Date Crime Involved In Photo Data Type Number Varchar2 Varchar2 Varchar2 Date Number Varchar2 Varchar2 Varchar2 Varchar2 Date Varchar2 Varchar2 15 15 5 15 15 15 15 Size 5 (Primary Key) 15 15 15
CRIMINAL_SUSPECT TABLE
Field Name Criminal Id Cid Data Type Number Number Size 5 (Primary Key) 5
- 99 -
FACE IDENTIFICATION
Size 5 5 5 5 5 5 5
FACE_SUSPECTPHOTO
Field Name Cid Suspect Photo Suspect Height Data Type Number Varchar2 Varchar2 Size 5 15 15
- 100 -
PROJECT REPORT
FACE IDENTIFICATION
SCREENS
LOGIN SCREEN
- 101 -
PROJECT REPORT
FACE IDENTIFICATION
MAIN SCREEN
- 102 -
PROJECT REPORT
FACE IDENTIFICATION
- 103 -
PROJECT REPORT
FACE IDENTIFICATION
- 104 -
PROJECT REPORT
FACE IDENTIFICATION
- 105 -
PROJECT REPORT
FACE IDENTIFICATION
- 106 -
PROJECT REPORT
FACE IDENTIFICATION
PROJECT REPORT
FACE IDENTIFICATION
SHOW DETAILS
- 108 -
PROJECT REPORT
FACE IDENTIFICATION
- 109 -
PROJECT REPORT
FACE IDENTIFICATION
- 110 -
PROJECT REPORT
FACE IDENTIFICATION
- 111 -
PROJECT REPORT
FACE IDENTIFICATION
CONSTRUCT SCREEN
- 112 -
PROJECT REPORT
FACE IDENTIFICATION
FIND FACE
- 113 -
PROJECT REPORT
FACE IDENTIFICATION
- 114 -
PROJECT REPORT
FACE IDENTIFICATION
- 115 -
PROJECT REPORT
FACE IDENTIFICATION
- 116 -
PROJECT REPORT
FACE IDENTIFICATION
HELP SCREEN
- 117 -
PROJECT REPORT
FACE IDENTIFICATION
TESTING
- 118 -
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 that consists of its own phases of analysis, implementation, testing and maintenance. Following are the tests conducted on the system.
- 119 -
PROJECT REPORT
FACE IDENTIFICATION
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.
- 120 -
PROJECT REPORT
FACE IDENTIFICATION
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.
- 121 -
PROJECT REPORT
FACE IDENTIFICATION
Unit Testing
S.no. 1 Screen Login Page Input User Id Password 2 Main Screen File New Criminal Details are entered Output User validation Details are stored in the database 3 Main Screen File Show Details Display option is clicked. Criminal Details are displayed Remarks User will enter into Main Screen New Menu is selected to enter new criminal details. Display details menu is selected to get details from 4 Main Screen File 5 Exit Main Screen Edit Clip Image Exit Option is Clicked. Criminal Image is clipped into different parts Screen will be exited The clips are stored in database database. Screen will be shut down Clip image menu is selected to clip image and store them in 6 Main Screen Edit Update Changes in the details of the criminals Details of the criminal database Update details menu is selected to
- 122 -
PROJECT REPORT
Details are entered
FACE IDENTIFICATION
are updated update the details of the criminals Construct face menu is to construct the criminal face from various clips stored in the database. Show more suspect menu is selected to get the details of all suspects and more possible suspect involved in crime. About face identification system menu is selected to get the details of
- 123 -
PROJECT REPORT
FACE IDENTIFICATION
above system.
- 124 -
PROJECT REPORT
FACE IDENTIFICATION
IMPLEMENTATION
IMPLEMENTATION PHASE
- 125 -
PROJECT REPORT
FACE IDENTIFICATION
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 organizations 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.
- 126 -
PROJECT REPORT
FACE IDENTIFICATION
CONCLUSION
CONCLUSION
- 127 -
PROJECT REPORT
FACE IDENTIFICATION
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 into the database. When any and store these clips 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.
- 128 -
PROJECT REPORT
FACE IDENTIFICATION
- 129 -
PROJECT REPORT
FACE IDENTIFICATION
BIBLIOGRAPHY
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.
- 130 -
PROJECT REPORT
FACE IDENTIFICATION
2. Software Engineering, A Practitioners Approach Tata McGraw-Hill Pressman. 3. PL/SQL. By Ivan Bayross. Publishing Company Limited. By Roger S.
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 3. http://www.javaworld.com/ 4. http://www.java2s.com/
- 131 -