Verification of Dynamic Signature Using Pattern Signature.

                                  Signature Verification 
         Using Static and Dynamic Features

1 Introduction
 Identification of an individual using behavioral biometrics is becoming prevalent and includes online and offline signature verification. Online verification deals with both static (number of black pixels, length and height of signature, etc) and dynamic features (time taken and the speed of signing, etc) of the signature, while offline verification extracts only the static features.
       In this paper, we present an online signature verification algorithm which uses the online and offline features extracted from data tablet. Online features such as pressure values, breakpoints, and time taken to generate a signature are used to compute the matching score. Signature pattern is generated using the data points extracted from the tablet and then the static features, i.e. texture and topological features are analyzed to perform the matching. 1D-log Gabor  is used to extract the textural features of the signature pattern and Euler number is used to extract the topological features to compute the matching score for the static features. The weighted sum rule based multi classifier decision algorithm combines the matching scores of online and offline features. The following sections describe the algorithm in detail and discuss the experimental results.

2 Signature Verification System
The block diagram of the signature verification system is shown in Figure 1. Forgery of signatures can be classified as: a) Random forgery, where the forger randomly guesses the signature, b) Skilled forgery, where the forger has prior knowledge of the

signature and might have practiced in advance, and
c) Tracing, where a signature instance is used as a reference to attempt forgery. Most systems have high verification rates for random forgery but low rates for skilled forgery and tracing. Our proposed signature verification algorithm combines static and dynamic feature set to obtain a high accuracy for both skilled forgery and tracing.

2.1 Data Preprocessing
The data acquisition process involves reading the reference signature data with the help of a digitizing tablet and obtaining the dynamic parameters (pressure, breakpoints and total time for a signature) and the image of the signature. Next, the input data is preprocessed using a low-pass filter to eliminate spurious noise inherent in the acquisition process .

2.2 Extraction of Static Features The textural and topological features of a signature are extracted using algorithms based on 1D log Gabor and Euler numbers respectively. The resultant image generated by encoding the textural features is called Signature Code - log Gabor (SCLG). Euler numbers give a vector matrix which contains values extracted from the topological behavior of the signature. This vector matrix is called Signature Code -Euler (SCE).
Generating Signature Code -log Gabor:
For generating the Signature Code using 1D - log Gabor wavelet, 2D normalized pattern is decomposed into a number of 1D signals. 1D signals are convolved with the 1D log-Gabor wavelets. A Gabor function is a harmonic wave modulated by a Gaussian function. In , log-Gabor filters are used for natural textures which often exhibit a linearly decreasing log power spec-trum. In the frequency domain, log-Gabor filter bank according to Bigun et al. is defined as:
Generating Signature Code - Euler: For generating the SCE from Euler numbers , four binary images corresponding to the four most significant bits of signature template are extracted from the signature image. Corresponding to each MSB extracted, one binary image is obtained for the whole image. Euler number is then computed for each of these binary images to obtain the topological property of the image i.e. (Number of Connected Components - Number of Holes). The topological property is useful for global description of regions in the image as it is unaffected by deformation or rotation. To generate the SCE, Euler numbers of the four binary images are stored in a vector matrix as its first four elements. The next three values represent the difference between adjacent Euler numbers shows the SCE of a person at different instances.
2.3 Online Data Extraction
The parameters obtained from online signatures consist of pressure values, time, x-tilt, y-tilt, x-value, y-value and breakpoints. In our algorithm, we use pressure, time and breakpoints for matching purposes. Although x-tilt and y-tilt are two important online features, these depend on holding style of the pen and orientation of the data tablet. Xvalues and y-values generate the signature pattern (static) and are therefore not considered again for online data matching.
2.4 Matching
Matching of the signatures includes matching of SCLG, matching of SCE, and matching of online data with stored signature data. For matching SCLG, Hamming distance based matching algorithm  is used. Hamming distance (HD) for the two SCLG is calculated using the equation below:
where Ai and Bi are the two bit-wise SCLGs to be compared, N is the number of bits represented by each SCLG and ⊕ is the XOR operation. HD gives the matching score (MSSCLG) for SCLG. For     handling rotation, templates are shifted left and right bit-wise and a number of HD values are calculated from successive shifts . The bit-wise shifting in the horizontal direction corresponds rotation of the original signature template at an angle based on the angular resolution. 
For SCE based matching, Directional Difference Matching (DDM) algorithm is used. A comparison matrix is constructed with its elements as binary numbers. The matrix stores the results of comparison of input SCE to the SCE from the database. For comparing Euler numbers and Differences we use the following equation: 
For SCE based matching, Directional Difference Matching (DDM) algorithm is used. A comparison matrix is constructed with its elements as binary numbers. The matrix stores the results of comparison of input SCE to the SCE from the database. For comparing Euler numbers and Differences we use the following equation:
                                                           [X , X ] = Y ±ε
 where Y is the Euler number/Difference from the input Euler code and ε is the tolerant error. If the value of X (Euler number / Difference from the stored Euler code) lies between X1 and X2, then we indicate a 1 in the comparison matrix; otherwise we enter a 0. Figure 5 illustrates the completed comparison matrix. In the experiment, FARFRR graph shows that maximum accuracy is achieved for ε = 3.

For matching, the number of 1ís and 0ís in the comparison matrix are counted. All 1ís, denote a perfect match and all 0ís signify a perfect mismatch. Although, ideally two SCE generated from the same signature should have a comparison matrix of all 1ís, practically this does not occur because of the errors incurred at various stages. The comparison matrix gives the matching scores (MSSCE) of SCE depending on the number of occurrence of 1ís.
Matching of online data is carried out based on DDM algorithm. Signature tablet gives pressure values A for every signature (depending on the size of the signature, which is generally between 350 ñ 425 values), number of breakpoints B (number of times user has lifted the pen from the tablet) and total time T (time for generating the signature on the tablet). Thus from every signature which is to be matched using Equation 4, we have A + 2 online data, represented by O. After experimenting with different values ofε , for the first A values ε is set to 15 and for the last two values (B and T) ε is 1 in order to achieve optimal accuracy. A comparison matrix is generated by comparing O values of data from the database and input test data. The verification is performed at the threshold of 23 zeros in the comparison matrix. The matching score of online data (MSODM) is calculated as follows: 
2.5 Multi-classifier Decision Algorithm
Weighted sum rule is used as the multi-classifier decision algorithm to obtain the final matching result . Based on three matching scores obtained above, the weighted sum rule for fusion is given as,

 where, a, b and c are the weight factors, and MS is the final matching score of the multi-classifier algorithm. This is the statistical and user specific matching score obtained after experiments. The range of values for MS is given as: 0 ≤ MS ≤ 1, where 0 denotes rejection and 1 denotes acceptance. Best matching results are obtained at a=0.35, b=0.20 and c=0.45 and hence threshold of 0.819 is used for selecting any query as genuine based on the characteristics of the FAR-FRR graphs.

3 Experimental Results
The proposed algorithm was tested using the signature database collected by the authors. The database consists of 1,100 images from 110 different individuals. There are 660 genuine signatures (6 per person), 220 images of random forgery (2 per person), 110 images of skilled forgery (1 per person), and 110 images representing forgery by tracing (1 per person). For training purposes, 330 genuine images from each individual were are and the remaining 770 images are used as test data. Thresholds of different values are determined by analyzing the results of the experiments. FAR-FRR graphs are used to determine the optimal thresholds for best performance. The thresholds of the four matching scores (MS SCLG, MS SCE, MS ODM and MS) are found to be 0.650, 0.875, 0.935 and 0.823 respectively. Using these thresholds in the FAR-FRR graph, the best performance and the accuracy of the multi-classifier decision algorithm is determined. It has been found from the FAR-FRR graph that the proposed algorithm gives the maximum accuracy of 98.18%. Table 1 shows the results obtained from these algorithms.
4 Conclusion
 In this  a signature verification algorithm has been presented which uses the static and dynamic features of the signature data. Signature data includes the signature image, pressure values, number of breakpoints and time. The static behavior of the signature is analyzed using 1D - log Gabor wavelet transform and Euler numbers and matching is performed to obtain the matching scores for the offline features. Online data are matched using statistical method and a matching score is calculated. Finally weighted sum rule is used as multi-classifier decision algorithm for calculating the final matching score which classifies the query data as matched or mismatched. The experimental results show that this algorithm is robust to skilled forgeries and tracing with an overall accuracy of 98.18%.   


Comments

Popular Posts