ChatGPT-and-Generative-AI-Landscape Working of generative ai search
Choudhary2015
1. Abstract:
This paper identifies an innovative design for signature
verification which is able to extract features from an individual’s
signatures and uses those feature sets to discriminate genuine
signatures from forgeries. An innovative JAVA-PYTHON
platform is used for the development. Detailed feature study,
algorithm development and feature set verification is carried out
during this experiment.
Keywords: SIGNATURE, VERIFICATINON, JAVA,
PYTHON.
I. INTRODUCTION
Signatures are one of the most commonly used
individual’s identity recognition and verification system.
These are unique, familiar and symbol of consent. Despite
its user friendliness and lack of invasiveness, signature
recognition system has not yet dominated the commercial
market like other biometric technologies such as
fingerprint, retina scan and geometry recognition. Though
signature recognition has not but it certainly has the
potential of becoming one of the leading biometric in
commercial applications.
There are two types of signatures [1] [2] [3]. Type one
are static signature or offline signatures wherein images of
signature are scanned and digitized as an image. Type two
is dynamic signature or online signature, which are captured
by digital media. Offline signature verification task is more
challenging than online signature verification due to the fact
that the signature images can easily be imitated, degradation
during capturing and information loss during acquisition
process. Therefore, it is of great need to develop a system
which decides a signature is genuine or fraud with accuracy
and speed. An idyllic signature verification system has to
reduce intrapersonal variation and improve interpersonal
variations [4].
With a tremendous rise in use of small computational
devices such as smart phones, tablets and phablets has made
it imperative for designers to write applications which
executes on such platforms. Therefore, a JAVA –
PYTHON based verification model is designed and
proposed in this paper which is executable on these small
computational devices. Intrinsic advantages of using such
design approach are:
A. Enable designers to develop applications that run on
all major OS, popular web browsers and every internet
connected smart devices.
B. Built-in security features.
C. Ease to create network based applications and work
with resources across network.
D. Such codes are faster compared to interpreted
language because they are compiled to byte codes
(Portable Intermediate Form).
E. It is dynamic and extensible.
F. Shorter design cycle time.
Section II presents a typical signature verification model.
Section III introduces the proposed model. The detailed
design of proposed system and verification of its feature
extraction algorithm are presented in Section IV. Section V
and VI presents results and conclusions respectively.
II. TYPICAL SIGNATURE VERIFICATION MODEL
PRE
PROCESSING
FEATURE
EXTRACTION
TEMPLATE
GENERATION
CLASSIFIER
STORED
TEMPLATE
APPLICATION
DEVICE
DATA
ACQUISITION
Figure 1: Typical Verification Models
As shown in figure 1, a typical verification model
consists of multiple concatenated blocks.
Data acquisition block samples signals from real world
and convert them into digital numeric values that can
processed. There are two major types of acquisition models:
Static Model and Dynamic Model. In Static model features
are extracted from a pre stored image and represented as
function of x and y. In Dynamic model features are
acquired online from the signer and such information is
function of distance, time and pressure.
The sampled data is subjected to a preprocessing block
which consists of multiple preliminary processing steps to
make the data usable in the subsequent stages.
Preprocessing block is followed by feature extraction stage.
Signature Verification Using Java – Python
for Small Computational Devices
Savita Choudhary Siddanth Kaul Shridhar Mishra Dr. Arun J.B
Faculty CSE Dept. of CSE Dept. of CSE Lecturer
Sir MVIT- Bangalore Sir MVIT- Bangalore Sir MVIT- Bangalore TTC- Rajasthan
choudhary7.mvit@gmail.com
655978-1-4799-8047-5/15/$31.00 c 2015 IEEE
2. In this stage, each character is represented by a feature
vector, which defines it. The objective is to extract a set of
features to increase the recognition rate with the least
amount of elements. A literature survey on established
techniques suggest Position [1], Velocity [2], Acceleration
[3], Direction of pen movement [4], Pressure [5] and Forces
[6]. Other features such as Position, Speed, Acceleration
[7], Total signature time duration [8], Pen down time ratio
[9], Number of pen ups [8] and Mathematical
transformation [10] are also prevalent.
Classification of the data involves assigning of new
inputs to one of a number of predefined discrete classes. It
is performed by partitioning the multidimensional feature
space using statistical techniques or iterative learning
algorithms [12]. The separation may be linear or non-linear.
Literature survey on linear and nonlinear classification
techniques presents Hidden Markov Models (HMM) [13],
Artificial Neural Networks (ANN) [14] and Naive Bayesian
Classifier [15]. There are many other classifiers which have
been proposed for the purpose of signature verification such
as Dynamic Programming Matching [16], DTW [17] and
Tree Based Matching [18].
III. PROPOSED MODEL
General block diagram of this proposed signature
verification model is shown in figure 2. Here signature is
acquired into the model and features are extracted on JAVA
platform. Data classification and Neural Network is
designed on PYTHON.
JAVA
IMAGE
NORMALIZATION
IMAGE PRE
PROCESSING
FEATURE
EXTRACTION
PYTHON
DATA
CLASSIFICATION
INITIALIZATION
OF BACK
PROPAGATION
ALGORITHM
FEED FORWARD
NETWORK
ERROR
PERCENTAGE
INTER PROCESS COMMUNICATION
Figure 2: Soft Computation Models
Distinct advantages of proposed approach:
x Model provides interoperability across different
operating systems.
x Each block is designed using high level language
which can be further optimized and used for specific
applications.
x Open source design.
x Proposed model can be used for web server
applications with minor modifications.
x Model has small foot print and is suitable for Small
Computational devices.
IV. DETAILED DESIGN
A. Software Architecture
1. Preprocessing
It is used to enhance image data to computational
processing. It involves removing low frequency noise,
cutting, cropping and normalizing image intensity. Figure 3
presents flow chart of preprocessing.
Start
Resize Image ()
Width Normalizatoin
Convert to
Grayscale ()
Histogram ()
Image Binarize ()
Skeleton ()
Stop
Figure 3: Preprocessing Flowchart
2. Feature Extractions
The process of extracting the attributes (features) of an
image is called as feature extraction and these features
defines the accuracy of the entire verification system.
Features are classified into two type global and local
features.
i. Global features
Length, width and edge points of the signature image are
among few examples of global features. Such features
describe the information as a whole. Such features are less
sensitive to noise & variations (signature) [14], so it does
not give very high accuracy, but it is suitable for random
forgeries and can be combined with other types of features
[6] [12]. In the current design, Base line shift and Aspect
ratio are also used.
Algorithm 2.1: Calculation of Aspect Ratio
x Start
x Step 1: Scan the Image vertically from left to right,
until a foreground pixel is encountered in the
respective column.
x Step 2: Scan the Image vertically from right to left,
until foreground pixel is encountered in the
column.
656 2015 IEEE International Advance Computing Conference (IACC)
3. x Step 3: Scan the Image horizontally from top to
bottom, until foreground pixel is encountered in a
row.
x Step 4: Scan the Image horizontally from bottom to
top, until a foreground pixel is encountered in a
row.
x Stop
ii. Local features
The local feature set considers a small area of signature
image, extracts information in more detail and are precise
than the global features [12]. The computational time
required is high when compared to global features. They are
divided into two groups - statistical and geometrical
features.
a. Statistical features
Features which represent the pixel distribution of an
image are called as statistical features [15]. For current
design Skewness, Kurtosis, Entropy, Joint Entropy and
Mutual Information are used as statistical features for
signature verification model.
Skewness is asymmetry in a statistical distribution, in
which the data set appears distorted (or skewed) either to
the left or to the right.
Algorithm 2.2: Calculation of Skewness
Input: Binary and Skeletonized image
Output: Skewness along the X axis and Y axis
x Start
x Step 1: Calculate Central moment of order u [3, 0]
and u [2, 0].
x Step 2: Skewness on X axis =
(u [3, 0] / POW ((Square root (u [2, 0]))), 3)).
x Step 3: Calculate Central moment of order u [0, 3]
and u [0, 2].
x Step 2: Skewness on Y axis =
(u [0, 3] / POW ((Square root (u [0, 2]))), 3)).
x Stop
Kurtosis measures peakedness in data set. Similar to
skewness, it is a description for the shape of a distribution.
Algorithm 2.3: Calculation of kurtosis
Input: Binary and Skeletonized image
Output: Kurtosis along the X axis and Y axis
x Start
x Step 1: Calculate Central moment of order u[4,0]
and u[2,0].
x Step 2: Kurtosis on X axis =
((u [4, 0]/ (u [2, 0]*u [2, 0]))-3)
x Step 3: Calculate Central moment of order u[0,4]
and u[0,2].
x Step 2: Skewness on Y axis =
((u [0, 4]/ (u [0, 2]*u [0, 2]))-3)
x Stop
Entropy of an image is a scalar value representing the
randomness which can be used to define the texture of the
input image.
Algorithm 2.4: Calculation of entropy
Input: Binary and Gray scale image
Output: Entropy of image
x Start
x Step 1: Calculate the histogram of the gray scale
image.
x Step 2: Calculate the total number of pixels of the
image.
x Step 3: Entropy = for i 0 to 256 (Summation (log
(H[i]/number of pixels)).
x Stop
b. Geometrical features
Features describing the geometrical characteristics of the
signature image have the skill to endure distortion, style
differences, rotation dissimilarities and certain degree of
conversion [10] [11]. For current design base angle, slant
angle, Center of gravity, peak horizontal projection and
peak vertical projection is used.
B. Verification of Feature Extraction Algorithm
As shown in table 1, a known geometrical figure is feed
into feature extraction block and algorithm output is
compared to expected output for code verification.
Table 1: Verification of Feature Extraction Algorithm
Figure 4: (a) Horizontal (b) Vertical Projection of Input Image
Feature Test Image Expected
Output
Actual
Output
Aspect Ratio W:H
Skewness 0 0
Positive +0.007790
Negative -0.007636
Entropy 0 0.0
> 4 4.60756
Slant Angle Positive +0.2115775
Negative -.30104055
Centre of Gravity
Horizontal
Projection
Figure 4 a
Vertical
Projection
Figure 4 b
2015 IEEE International Advance Computing Conference (IACC) 657
4. C. Training
During this phase network is feed with input and target
values. Input data is split into ratio of 75:25 for training and
testing respectively. For training Back Propagation Neural
Network (BPNN) is developed. Momentum and the
Learning rate are two key parameters observed during this
phase.
D. Testing
In testing, input image from testing set is selected and is
feed to Feed Forward Neural Network. The Network
weights derived from BPNN are testing for a predefined
epoch.
V. RESULTS AND DISCUSSION
A combination of genuine and fraud signature images are
feed into the proposed model and ANN is used to classify
these images. A set of parameters: learning rate,
Momentum, Epoch and Accuracy are monitored for
different combination to arrive at the best combination for a
given data set.
Figure 5: Accuracy v/s Epoch at different Learning rate
Analysis is done by varying the epoch for a fixed
learning rate. Learning rate is gradually increased from 0.01
and an optimized rate of 0.09 is observed with accuracy of
95 % for 200 epochs.
Figure 6: Accuracy v/s Epoch at different Momentum
In the current design Momentum is another key
parameter used to control the rate of change in weights of
the ANN. Analysis is done by varying the epoch for a fixed
momentum. Momentum is gradually increased from 0.1 to
0.5 and an optimized momentum of 0.3 is observed for 97%
accuracy.
Figure 7: Accuracy v/s Epoch at different number of neurons in hidden
layers
A neural network contains of input layer, hidden layer
and output layer. It is prime importance to control the
number of neurons in hidden layer for a given dataset. As
shown in figure 7, numbers of neurons are increased from
20 to 45 with step size of 5 and it is observed that highest
accuracy of 90% is observed at 40 neurons in hidden layer
for 400 epochs.
VI. CONCLUSION
In this paper, we have presented a software based
signature verification model. Features used for this study
are global, statistical and local. The entire design is
developed on a JAVA based platform. Experimental results
suggest that it is able to deliver 95% of accuracy.
REFERENCES
[1] R. Plammodaon and G. lorette, “Automatic signature
verification and writer identification – the stat of the art”,
Pattern recognition, 1989.
[2] N.G. See, O.H.Seng, “A Neural network approach for offline
signature verification”.
[3] A.K. Jain, A Ross, and S. Prabhakar, “On line Signature
Verification”, Pattern Recognition, 2002
[4] Jayadvan R, Shaila Subbaraman and P M Patil, “Verification
of hand printed signature image using Discrete Dyadic
Wavelet Transform”, 2007.
[5] Sato, Y. and Kogure, K. (1982), “Online signature
verification based on shape, motion and writing pressure”.
[6] Wu, Q. Z., Lee, S. Y. and Jou, I. C., “On-line signature
verification based on logarithmic spectrum”.
[7] Herbst, N. M. and Liu, C. N., “Automatic signature
verification based on accelerometry”.
[8] Hangai, S., Yamanaka, S. and Hamamoto, T., “On-line
signature verification based an altitude and direction of pen
movement”.
[9] Rioja, F. R., Miyatake, M. N., Prez, M. H. and Toscano, M.
K., “Dynamics features extraction for on-line signature
verification”.
[10] Crane, H. D. and Ostrem, J. S. (1983), “Automatic signature
verification using a three-axis force-sensitive pen”.
[11] Rioja, F. R., Miyatake, M. N., Prez, M. H. and Toscano, M.
K., “Dynamics features extraction for on-line signature
verification”.
[12] Lee, L. L., Berger, T. and Aviczer, E., “Reliable on-line
human signature verification systems”.
[13] Nelson, W., Turin, W. and Hastie, T., “Statistical methods
for online signature verification”.
[14] Lam, C. F. and Kamins, D. , “Signature recognition through
spectral analysis”, 1989.
[15] Theodoridis, S. and Koutroumbas, K., “Pattern
Recognition”, Academic Press, 1999.
658 2015 IEEE International Advance Computing Conference (IACC)
5. [16] Camino, J. L., Travieso, C. M., Morales, C. R. and Ferrer, M.
A., “Signature classification by hidden markov model”,
1999.
[17] Lucas, S. M. and Damper, R. I., “Signature verification with
a syntactic neural net, in Neural Networks”, 1990.
[18] Srihari, S. N., Xu, A. and Kalera, M. K., “Learning strategies
and classification methods for offline signature verification”,
2004.
[19] Sakamoto, D., Morita, H., Ohishi, T., Komiya, Y. and
Matsumoto, T., “Online signature verification algorithm
incorporating pen position, pen pressure and pen inclination
trajectories”, 2001.
[20] Faundez-Zanuy, M., “Signature recognition state-of-the-art”,
2005.
[21] Parizeau et al., “A comparative analysis of regional
correlation, dynamic time warping and skeletal tree matching
for signature verification”.
[22] Weiping HOU et al., “A Survey of Off-line Signature
Verification”.
[23] Emre et al., “Off-line signature verification and recognition
by support vector machine”.
[24] Vahid et al., “Offline Signature Verification Using Local
Radon Transform and Support Vector Machines”.
[25] Meenakshi S Arya et al., “A Preliminary Study on Various
Off-line Hands Written Signature Verification Approaches”.
[26] Bradley et al., “An off-line signature verification system”,
2009.
[27] Prakash and Guru, “Geometric Centroids and their Relative
Distances for off-line Signature Verification”, 2009.
2015 IEEE International Advance Computing Conference (IACC) 659