Vous êtes sur la page 1sur 21

Objective

The aim of this project is to study and design an Efficient Signature Identification system in MATLAB. Project objectives are listed as follows: To study and understand Signature Identification system using neural network. To design a model for an ideal Signature Identification system. To enhance the model for a high-speed Signature Identification system. To develop a program in MATLAB based on the designed model. To create a database set of signature images. To validate and test the Signature Identification system. To perform tests for program optimization and accuracy. To demonstrate an effective and Signature Identification system.

Abstract
Automatic recognition of signatures is a challenging problem which has received much attention during the recent years due to its many applications in different fields. Signature identification is one of those challenging problems and up to date, there is no technique that provides a robust solution to all situations and different applications that signature identification may encounter. It is a hard problem to decide whether two signatures given as scanned binary images are written by the same person or not. Our major project gives a complex strategy to solve this problem including the preprocessing of the scanned image, conversion from RGB to Gray scale, cropping the images, image resize, reshaping of images and a decision process using a back propagation neural network model. Signature Identification focuses on still images, which can be broadly grouped into image-based and feature-based approaches. Signature identification is commonly used in applications such as human-machine interfaces, automatic access control systems, security purposes which involve comparing an image with a database of stored signatures in order to identify the signature. This project involves the design and development of an efficient signature identification system. The pattern recognition algorithm designed for this project is based on general architecture of Signature identification systems. Program source code and simulation is executed in MATLAB.

Chapter-1 Introduction
The problem of signature identification basically means to decide whether or not a current test signature corresponds to a given reference signature. HUMANS recognize each other according to their various characteristics for ages. We recognize others by their face when we meet them and by their voice as we speak to them. Identity verification (authentication) in computer systems has been traditionally based on something that one has (key, magnetic or chip card) or one knows (PIN, password). Things like keys or cards, however, tend to get stolen or lost and passwords are often forgotten or disclosed. To achieve more reliable verification or identification we should use something that really characterizes the given person. Biometrics offer automated methods of identity verification or identification on the principle of measurable physiological or behavioral characteristics such as a signature or a voice sample. These characteristics should not be duplicable, but it is unfortunately often possible to create a copy that is accepted by the biometric system as a true sample. Signature authentication technology uses the dynamic analysis of a signature to authenticate a person. The technology is based on measuring speed, pressure and angle used by the person when a signature is produced. This technology uses the individual's handwritten signature as a basis for authentication of entities and data. An electronic drawing tablet and stylus are used to record the direction, speed and coordinates of a handwritten signature. There is no encryption or message confidentiality offered yet with signature dynamics, but more modern examples use one-way hash functions to encrypt the signature dynamics and data and append it to the document being signed. In one iteration, Created by Topaz Systems, the signature actually disappears from view if the document is tampered with after signature.

Chapter-2 Problem Domain


Signature identification has become a popular area of research in computer vision, mainly due to increasing security demands and its potential, commercial and law enforcement applications. It is a very challenging problem and up to date and there is no technique that provides a robust solution to all situations and different applications that signature identification may encounter specially in the Banking field where the faster method for identification of signature is required. Hence, this project focuses on developing a technique that provides a solution for an efficient Signature Identification system in different applications.

Chapter-3 Literature survey


A number of biometric methods have been introduced, but few have gained wide acceptance. Before we discuss about our approach, we have concentrated on some techniques to gather knowledge. In 2001 Adrian Perrig introduces the BiBa signature scheme. BiBa signature scheme is a new signature construction that uses one-way functions without trapdoors. The most important features of BiBa signature scheme is a low verification overhead and a relatively small signature size. In comparison to other one-way function based signature schemes, BiBa has smaller signatures and is at least twice as fast to verify (which probably makes it one of the fastest signature scheme to date for verification). BiBa stands for Bins and Balls signature a collision of balls under a hash function in bins forms the signature. In the year of 2004 Sascha Schimke, Claus Vielhauer, Jana Dittmann in the Proceedings of the 17th International Conference on Pattern Recognition they discussed about the problem of authenticating for on-line signature. They are explained a method for on-line signature authentication. Use of Artificial neural networks in pattern recognition is a popular technique. Neural network based invariant character recognition system using double back propagation model has proposed, the model consists of two parts. The first is a preprocessor, which is intended to produce a translation, rotation and scale invariant representation of the input pattern. The second is a neural net classifier. The outputs produced by the preprocessor at the first stage are classified by this neural net classifier trained by a learning algorithm called double back-propagation. The recognition system was tested with ten numeric digits (0-9). The test included rotated, scaled and translated version of exemplar patterns. An artificial neural network is trained to identify similarities and patterns among different handwriting samples. Artificial neural network techniques have also proven helpful in the preprocessing that must take place before a handwriting sample can be considered suitable input for an artificial neural network. Another major research is the integration of a feed-forward back propagation neuronal network.

Chapter-4 Project Methodology


The methodology of this project is based upon information collected and processed the study and research phase. The technique to be applied for the design and implementation of the Signature identification systems is as follows: Data gathering of signature images of subjects from a digital camera. Pre-processing of face images in Adobe Photoshop. Importing face images into MATLAB. Design of a Feed-Forward Back Propagation Neural Network in MATLAB. Input face images into FF Artificial Neural Network (ANN). Training the neural network and simulating it for different input images. Testing and validation of the program and technique. Creating a user-friendly program in MATLAB from the source code.

Chapter-5 Block Diagram & Description

INPUT An image is passed to the system for classification. Images vary in format, size and resolution.

PRE-PROCESS The signature is pre-processed to remove unwanted noise from light and the environment. The image also resized, threshold and normalized.

CLASSIFIER The classifier decides whether the signature belongs to the training images or not based on the information learned during training.

OUTPUT The output indicates whether the original input signature is identified or not or matches with the training signatures or not

Figure 5.0.Generic representation of a Signature Identification system

5.1 Back Propagation Algorithm


The generalized delta also known as back propagation algorithm is explained here briefly for feed forward Neural Network (NN). The explanation here is intended to give an outline of the process involved in back propagation algorithm. The NN explained here contains three layers. These are input, hidden, and output Layers. During the training phase, the training data is fed into to the input layer. The data is propagated to the hidden layer and then to the output layer. This is called the forward pass of the back propagation algorithm. In forward pass, each node in hidden layer gets input from all the nodes from input layer, which are multiplied with appropriate weights and then summed. The output of the hidden node is the nonlinear transformation of this resulting sum. Similarly each node in output layer gets input from all the nodes from hidden layer, which are multiplied with appropriate weights and then summed. The output of this node is the non-linear transformation of the resulting sum. The output values of the output layer are compared with the target output values. The target output values are those that we attempt to teach our network. The error between actual output values and target output values is calculated and propagated back toward hidden layer. This is called the backward pass of the back propagation algorithm. The error is used to update the connection strengths between nodes, i.e. weight matrices between input-hidden layers and hidden-output layers are updated. During the testing phase, no learning takes place i.e., weight matrices are not changed. Each test vector is fed into the input layer. The feed forward of the testing data is similar to the feed forward of the training data. 7

5.2 Training Signatures: The signatures from four different persons are taken in
a blank page. Five set of each signature is taken from each person, so we have total of 20 training signatures. These are shown below:

Figure 5.2. Showing Training Signatures

5.3 Signature Preprocessing:


In the preprocessing of signatures involves the various operations performed on signature images before fed to the artificial neural network for training. Following are the preprocessing operations performed on the training signatures in MATLAB: 1. Image Read i.e. Load data to MATLAB. 2. Convert to Gray Scale 3. Resize 4. Reshape 5. Double 6. Create Database.

5.3.1 Image Read: Read image from graphics file Syntax


A = imread (filename);

Description
A =

imread (filename) reads a grayscale or color image from the file

specified by the string filename. If the file is not in the current folder, or in a folder on the MATLAB path, specify the full pathname.

5.3.2 Convert to Gray Scale: The RGB color image is then converted to Gray Scale. Syntax
I = rgb2gray (RGB)

Description
I = rgb2gray(RGB) converts the true color image RGB to the grayscale intensity image I. rgb2gray converts RGB images to grayscale by eliminating the hue and saturation information while retaining the luminance..

Class Support
If the input is an RGB image, it can be of class uint8, uint16, single, or double. The output image I is of the same class as the input image. If the input is a color map, the input and output color maps are both of class double.

5.3.3 Resize: Enlarge or shrink image sizes Syntax


B = imresize(A, scale) B = imresize(A, [mrows ncols])

Description
B = imresize(A, scale) It returns image B that is scale times the size of A. The input image A can be a grayscale, RGB, or binary image. If scale is between 0 and 1.0, B is smaller than A. If scale is greater than 1.0, B is larger than A.

5.3.4 Reshape: Reshape array, to convert parallel data into serial data of image matrix. Syntax
B = reshape(A,m,n) B = reshape(A,m,n,p,...) B = reshape(A,[m n p ...])

Description
B = reshape(A,m,n) returns the m-by-n matrix B whose elements are taken column-wise from A. An error results if A does not have m*n elements.

5.3.5 Double: To convert a uint8 or uint16 indexed image to double. Syntax 10

B = double (A);

Description
In a true color image of class double the data values are floatingpoint numbers in the range [0, 1]. In a true color image of class uint8, the data values are integers in the range [0, 255], and for true color images of class uint16 the data values are integers in the range [0, 65535].

5.3.6 Create Database: A database is created with Imwrite command. Syntax


imwrite(A,filename,fmt) imwrite(X,map,filename,fmt)

Description
imwrite(A,filename,fmt) writes the image A to the file specified by filename in the format specified by fmt.

5.3.7 NNTOOL: It is the neural network toolbox in MATLAB for training of Signature Database. As Shown in the Figure. Purpose
Open Network/Data Manager

Syntax
nntool

Description
nntool opens the Network/Data Manager window, which allows you to import, create, use, and export neural networks and data.

11

Figure 5.3. NNtoolbox GUI in MATLAB.

12

Chapter-6 GUIDE
Guide is Graphical User Interface design environment is Open GUI Layout Editor in MATLAB Syntax
guide guide('filename.fig') guide('fullpath') guide(HandleList)

Description
Guide initiates the GUI design environment (GUIDE) tools that allow you to create or edit GUIs interactively. Guide opens the GUIDE Quick Start dialog where you can choose to open a previously created GUI or create a new one using one of the provided templates. Guide('filename.fig') opens the FIG-file named filename.fig for editing if it is on the MATLAB path.

Figure 6.1 Showing GUI creator in MATLAB.

13

6.1 GUIDE Tools Summary


The GUIDE tools are available from the Layout Editor shown in the figure below. The tools are called out in the figure and described briefly below. Subsequent sections show you how to use them.

Figure 6.2: GUIDE Tools

14

Chapter-7 Software requirements


1. Matlab (R2009b) 2. Adobe Photoshop 7.0 (for Preprocessing)

Chapter-8 Flowchart

Signature Image

Signature Preprocessing

Result

Feed-Forward Back Propagation Neural Network

Figure 8.1 Illustrates the flowchart proposed for the design of the Signature Identification system, based on the methodology.

15

Chapter-9 GUIDE for Signature Identification System


The Figure below showing the proposed GUI for Signature Identification System. And it is still under the Development Process.

Figure 9.1: Guide for Signature Identification System

16

Chapter-10 Software Programming 11.1 Reading Images:


A11=imread('A1.jpg'); A13=imread('A3.jpg'); A15=imread('A5.jpg'); B12=imread('B2.jpg'); B14=imread('B4.jpg'); C11=imread('C1.jpg'); C13=imread('C3.jpg'); C15=imread('C5.jpg'); D12=imread('B2.jpg'); D14=imread('B4.jpg'); A12=imread('A2.jpg'); A14=imread('A4.jpg'); B11=imread('B1.jpg'); B13=imread('B3.jpg'); B15=imread('B5.jpg'); C12=imread('C2.jpg'); C14=imread('C4.jpg'); D11= imread('D1.jpg'); D13=imread('B3.jpg'); D15=imread('B5.jpg');

11.2 Converting to Grayscale:


A11=rgb2gray(A11); A13=rgb2gray(A13); A15=rgb2gray(A15); B12=rgb2gray(B12); B14=rgb2gray(B14); C11=rgb2gray(C11); C13=rgb2gray(C13); C15=rgb2gray(D15); D12=rgb2gray(D12); D14=rgb2gray(D14); A12=rgb2gray(A12); A14=rgb2gray(A14); B11=rgb2gray(B11); B13=rgb2gray(B13); B15=rgb2gray(B15); C12=rgb2gray(C12); C14=rgb2gray(C14); D11=rgb2gray(D11); D13=rgb2gray(D13); D15=rgb2gray(D15);

11.3Reshaping the data:


A11=reshape(A11,64,1); A13=reshape(A13,64,1); A15=reshape(A15,64,1); B12=reshape(B12,64,1); B14=reshape(B14,64,1); A12=reshape(A12,64,1); A14=reshape(A14,64,1); B11=reshape(B11,64,1); B13=reshape(B13,64,1); B15=reshape(B15,64,1); 17

C11=reshape(C11,64,1); C13=reshape(C13,64,1); C15=reshape(C15,64,1); D12=reshape(D12,64,1); D14=reshape(D14,64,1);

C12=reshape(C12,64,1); C14=reshape(C14,64,1); D11=reshape(D11,64,1); D13=reshape(D13,64,1); D15=reshape(D15,64,1);

11.4Converting to Double: A11=double(A11); A13=double(A13); A15=double(A15); B12=double(B12); B14=double(B14); C11=double(C11); C13=double(C13); C15=double(C15); D12=double(D12); D14=double(D14); A12=double(A12); A14=double(A14); B11=double(B11); B13=double(B13); B15=double(B15); C12=double(C12); C14=double(C14); D11=double(D11); D13=double(D13); D15=double(D15);

11.5 Creating Database for training: P= [A11 A12 A13 A14 A15 B11 B12 B13 B14 B15 C11 C12 C13 C14 C15 D14 D15]; 11.6 Creating Target Vectors: T= [000 000 000 000 000 001 001 001 001 001 100 100 100 100 100 111 111 111 111];

18

Chapter-11 Result
The signature is identified after giving training to the neural network and the output of the neural network will be generated corresponding to the target vectors. The output value when more closer to the corresponding target value. Then the signature corresponding to that target value will be shown and hence the person will be identified. The graphical user interface (GUI) in the project and the programming in the call back of every pushbutton will perform the corresponding function and will show us the details of identified person.

Chapter-12 Applications
There is a tradeoff between security and convenience. An unlocked car with the keys in the ignition is very convenient to use, but also easy to steal. Banks who issue credit cards want their customers to use their cards frequently, while minimizing their exposure to fraud. In general, once a credit card is issued, credit transaction practices lean toward giving the buyer the benefit of the doubt, as a moderate amount of fraud is preferable to lost business and frustrated customers that results if the authentication process is too burdensome or stringent. So, credit card use generally does not require photo ID; card possession and a modest attempt to approximate the signature on the card are typically sufficient to purchase merchandise.

Signature in Retail Reliable authentication and authorization are increasingly becoming necessary for many commonplace activities such as boarding an aircraft, crossing international borders, entering a secure physical location, and performing financial transactions. Biometrics is a useful method to verify identity.

Identity Theft Identity theft occurs when a thief assumes the identity of an individual, usually by collecting personal information on the victim, such as name, address, date of birth, Social Security number, and credit card number, and uses this information to bill charges to the victims name. The signature on the back of a credit card will not deter an identity thief who requests and signs a new card. However, by electronically

19

monitor the accounts with dynamic signature verification algorithms, abrupt changes in signatures may be detected, indicating potential fraud.

20

REFERENCES
[1] J. F. Vlez, . Snchez , and A. B. Moreno, Robust Off-Line Signature Verification Using Compression Networks And Positional Cuttings, Proc. 2003 IEEE Workshop on Neural Networks for Signal Processing, vol. 1, pp. 627-636, 2003. [2] Sansone and Vento, Signature Verification: Increasing Performance by a MultiStage System, Pattern Analysis & Applications, vol. 3, pp. 169181, 2000. [3] E. J. R. Justino, F. Bortolozzi and R. Sabourin, Off-line Signature Verification Using HMM for Random, Simple and Skilled Forgeries, ICDAR 2001, International Conference on Document Analysis and Recognition, vol. 1, pp. 105--110. 2001 [4] B. Zhang, M. Fu and H. Yan, Handwritten Signature Verification based on Neural Gas Based Vector Quantization, IEEE International Joint Conference on Neural Net-works, pp. 1862-1864, May 1998. [5] M. Arif and N. Vincent, Comparison of Three Data Fu-sion Methods For An OffLine Signature Verification Prob-lem, Laboratoire dInformatique, Universit de Franois Rabelais, 2003 [6] A. Chalechale and A. Mertins, Line Segment Distribu-tion of Sketches for Persian Signature Recognition, IEEE Proc. TENCON, vol. 1, pp. 1115, Oct. 2003 [7] C.Cortes and V.Vapnik, Support-vector networks. Machine Learning, vol. 20, pp.:273-297, Nov. 1995. [8] V.N.Vapnik, The Nature of Statistical Learning Theory, Springer, 1995.

WEBLINKS:
[9] http://www.epadlink.com/ ePad POS Electronic Signature Solution Interlink Electronics [10] http://www.wacom.com/productinfo/4x5.cfm Wacom Intuos2 4x5 Product Information, Wacom Technology Corporation

21

Vous aimerez peut-être aussi