5 BB 1
5 BB 1
20
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
vectors with minimum errors, and also this method is very Various methods have been used to identify a person through
simple and fast. the fingerprint image. In this work to increase the accuracy of
the result a new approach have been implemented in which
G. Sambasiva Rao et al., [7] proposed fingerprint each sample is divided into four parts and then feed forward
identification technique using a gray level watershed method back propagation neural network have been applied to identify
to find out the ridges present on a fingerprint image by a person. Section II describes about the pattern matching and
directly scanned fingerprints or inked impression. its methods, in section III detailed methodology is shown,
section IV contains data preparation while experiment, result
M. R. Girgisa et al., [8] proposed a method to describe a and discussions are shown in the section V. Section VI
fingerprint matching based on lines extraction and graph contains conclusion and references are shown in the last
matching principles by adopting a hybrid scheme which section.
consists of a genetic algorithm phase and a local search phase.
Experimental result of this method demonstrates the
2. PATTERN MATCHING AND
robustness of algorithm.
RECOGNITION
Duoqian Maio et al., [9] used principal graph algorithm by In computer science, Pattern matching is used to compare two
kegl to obtain principal curves for auto fingerprint patterns in order to determine whether they match or not (i.e.,
identification system. From principal curves, minutiae are they same or they differ). Pattern matching is the act of
extraction algorithm is used to extract the minutiae of the checking some sequence of tokens for the presence of the
fingerprint. Results shows that curves obtained from graph constituents of some pattern. In contrast to pattern
algorithm are smoother than the thinning algorithm. recognition, the match usually has to be exact. The patterns
generally have the form of either sequences or tree structures.
Alessandra Lumini and Loris Nanni [10] developed a method Uses of pattern matching include outputting the locations of a
for minutiae based fingerprint and its approach to the problem pattern within a token sequence, to output some component of
as two - class pattern recognition. The obtained feature vector the matched pattern, and to substitute the matching pattern
by minutiae matching is classified into genuine or imposter by with some other token sequence. Pattern recognition is the
Support Vector Machine resulting remarkable performance assignment of a label to a given input value. An example of
improvement. pattern recognition is classification, which attempts to assign
each input value to one of a given set of classes [13]. In other
Jain, Prabhakar and Hong’s [11] proposed a Multi-channel words Pattern recognition is the research area that studies the
Classification approach. This method can be found to be more operation and design of systems that recognize patterns in
accurate while classifying the fingerprint images as compared data.
to its previous counterparts. The fingerprint images are
classified into five categories: whorl, right loop, left loop, There are various pattern matching methods. These are
arch, and tented arch. The algorithm uses a novel described as follows:
representation (Finger Code) and is based on a two stage
classifier to make a classification. The two-stage classifier 2.1 Statistical
2.2 Neural network
uses a k-nearest neighbor classifier in its first stage and a set
of neural network classifiers in its second stage to classify a
feature vector into one of the five fingerprint classes. This 2.1 Statistical approach of Pattern
algorithm suffers from the requirement that the region of Matching
interest be correctly located, requiring the accurate detection
of center point in the fingerprint image. Otherwise, the Bayes theorem is an approach of statistical pattern matching.
algorithm can be found to be very effective. The goal of this approach is to classify the character in such a
way that it minimizes the probability of misclassification.
Masayoshi Kamijo’s [12] proposed Artificial Neural Network
based approach, where a neural network for the classification 2.2 Neural Network
of fingerprint images is constructed, that classifies the
complicated fingerprint images. It uses a two-step learning It is a collection of processing units and adaptive connections
method to train the four layered neural network which has one that are designed to perform a specific processing function.
sub-network for each category. It carries out the principal They rely on a computing model that is loosely based on how
component analysis (PCA) with respect to the unit values of the brain computes. The main features include a collection of
the second hidden layer and also studies the fingerprint many simple processors connected by adaptive connections.
classification state represented by the internal state of the These simple processors sum up their inputs and calculate an
output value, or activation. This output is then sent to other
network. Consequently, the method confirms that the
processing units in the neural network. The connections are
fingerprint patterns are roughly classified into each category called adaptive because they are adjusted during the training
in the second hidden layer and the effectiveness of the two- of the neural network. This training process usually consists
step learning process. However, in case of larger data sets this of presenting examples of input/output relationships to the
method can be found to give limited results. network. The connection weights are adjusted to minimize the
21
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
difference between the actual network output value and the designed which contains neurons in the input layer in the
desired output value. Neural networks are very good at hidden layer as well as in the output layer. The network is
pattern-recognition and pattern-matching tasks [14]. The most trained by applying different number of samples. Once the
popular neural network model, back propagation, is a feed-
training phase is completed different samples are applied to
forward model using the generalized delta rule to adjust the
weights. It is a pattern-matching network that can be used as a the network to check its performance. Finally matching is
classifier, a time-series forecaster, or as a predictive model used to check whether the network is able to recognize any
much like statistical regression models. It builds an internal existing image.
model of the relationships between the input and output
training patterns. When it is subsequently given an input The goal in this classification problem is to develop an
vector, it tries to reproduce the associated output vector. If the algorithm which will assign any image, represented by a
input is one it has never seen before, it produces an output vector x, to one of the class denoted by Ck, where, K= 1,
similar to the one associated with the closest matching
2,……..5, so that class C1 corresponds to the fingerprint
training input pattern. This generalization capability of
producing a reasonable output, even for an input pattern it has image of one person, C2 corresponds to the fingerprint image
never seen before, is one of the advantages of neural of second person and similarly C5 corresponds to the
networks. fingerprint image of fifth person. We have collected five
different fingerprint images of each person. Such a collection
In this work we are using feed forward neural network pattern will be referred to as a dataset. An image is represented by an
matching method to recognize each person through its array of pixels, each of which carries an associated value
fingerprint image. which we shall denote by xi (where the index i label the
individual pixels). The value of xi might, for instance, range
3. METHODOLOGY from 0 for a completely black pixel. It is often convenient to
The complete work has been shown in the following diagram: gather the xi variables together and denote them by a single
vector x = (x1,……….xd)T where d is the total number of such
variables and the superscript T denotes the transpose.
The various stages in a fingerprint recognition system are 4. Finding out the histogram equivalent of given
shown in figure 1. The first stage is the capturing of the image binary numbers
in which a fingerprint image is obtained from an individual.
5. Training of each part individually using neural
The next stage is division of the image in which every image
is divided into 4 equal parts. The divided image is then network tool through Matlab
converted into the binary form. The binary image is then 6. Collect output of all the parts and apply it as input
converted into the histogram equivalent. A network is
22
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
7. All the above steps are used without dividing the function finds the histogram values of the image. For
image into different parts also example:
8. Results obtained from steps 6 and 7 are compared to check Xh= hist(x (:), n) ;
the accuracy of this approach.
computes n-bin histogram. Where bin is the number of bins
used to generate the histogram.
4. DATA PREPARATION
In our work we have taken 5 samples of each person. So, we
have collected 25 samples and every sample is divided into 4
parts, each part is trained individually in matlab’s neural
network tool. For simplicity the complete process of one
person is shown in this paper. Each fingerprint image is
Fig 3 Fig 4 Fig 5 Fig 6 divided into four equal parts and each part is converted into
the appropriate form by using different functions described in
Following matlab functions have been used to carry out the section II. To minimize the size of input data binary values
different task. are converted into the 4-bin histogram values. After finding
the histogram equivalent of the value, training of each part is
1. imread ( ) done in matlab’s neural network tool. Table1 shows that the
2. imshow ( ) histogram values which we have find is taken as input data
and some random values using 4 binary digits are taken as
3. Logical target values to train each part of every sample individually.
4. im2bw
Table 1: Sample data of one person
5. hist
In our work we have used imread ( ) to bring the scanned
image into the matlab environment. For example, the
statement
f=imread (‘sample.jpg’)
reads the image from the JPEG file sample into image array f.
After reading the image, it is displayed on the matlab desktop
using the function imshow ( ), by using syntax imshow (f).
Where, f is an image array. Logical function converts numeric
values to logical. Logical (f) converts the elements of the
array f into logical, thus returning an array that can be used
for logical indexing or logical tests. Logical can have the
values 0 and 1 corresponding to false and true, respectively.
Any nonzero real element of input array f is converted to a
logical 1 while zeros in f become logical 0. Im2bw convert
image to binary image. It produces binary images from
indexed, intensity or RGB images. To do this it converts the
input image to grayscale format and then converts this image
to binary. The output binary image BW has values of 1
(white) for all pixels in the input image with luminance
greater than level and 0 (black) for all other pixels. hist
23
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
In table 2 target data of each part of fingerprint is collected output and target. Lower values of mean square errors are
and is taken as a new input data for each sample of the same considered as better one while zero denotes no error.
person. A new target data is set to map all the samples of the
same person. EXPERIMENT 1: Part 1 of First Sample of Person One
Table 2: Different sample Inputs and concerning Output In this experiment we have taken 1000 epochs and the training
for one person was completed in 12 iterations. The network is trained
through Feed-forward back propagation algorithm. Figure
displays the training progress of the network.
From the above figure it seems clear that the total number of
iterations to train the network is 12. The performance in terms
of mean squared errors and the value of gradient and validate
checks is also shown in the above figure.
24
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
The above figure shows the performance curve produced The above figure shows the performance curve produced
while training, testing and validation of the network. We get while training, testing and validation of the network. We get
the Best Validation Performance 6.2741e-009 at 12 epochs. the Best Validation Performance 1.1551e-006 at 12 epochs
EXPERIMENT 2: Part 2 of First Sample of Person One EXPERIMENT 3: Part 3 of First Sample of Person One
25
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
EXPERIMENT 4: Part 4 of First Sample of Person One EXPERIMENT 5: Collecting Output of Each Part and
Setting it as Input to Recognize Each Person
The above figure shows the performance curve produced Fig 17: Performance curve produced by the network for
while training, testing and validation of the network. We get the given sample
the Best Validation Performance 9.4077e-013 at 11 epochs.
The above figure shows the performance curve produced
while training, testing and validation of the network. We get
the Best Validation Performance 0.25013 at 0 epochs
26
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
7. REFERENCES
Fig 18: Network training result
[1] http://en.Wikipedia.org/wiki/Fingerprint_recognitin.
From the above figure it seems clear that the total number of
iterations to train the network is 12. The performance in terms [2]. Mohamed. S. M and Nyongesa.H, “Automatic
of mean squared errors and the value of gradient and validate Fingerprint Classification System using Fuzzy Neural
techniques”, IEEE International Conference on Artificial
checks is also shown in the above figure.
Neural Networks, vol. 1, pp. 358-362, (2002).
[3] Ching-Tang Hsieh and Chia-Shing –u, “Humanoid
Fingerprint Recognition Based on Fuzzy Neural
Network”, International Conference on Circuit, Systems,
Signal and Telecommunications, pp. 85-90, (2007).
[4]. Haiping Lu, Xudong Jiang and Wei-Yun Yau, “Effective
and Efficient Fingerprint Image Post processing”,
International Conference on Control, Automation,
Robotics and Vision, vol. 2, pp. 985- 989, (2002)
[5]. Prabhakar, S, Jain, A.K, Jianguo Wang, Pankanti S, Bolle,
“Minutia Verification and Classification for Fingerprint
Matching”, International Conference on Pattern
Recognition vol. 1, pp. 25-29, (2002).
[6] Ballan.M, “Directional Fingerprint Processing”,
International Conference on Signal Processing, vol.2, pp.
1064-1067, (1998).
[7]. G.Sambasiva Rao, C. NagaRaju, L. S. S. Reddy and E.
V. Prasad, “A Novel Fingerprints Identification System
Based on the Edge Detection”, International Journal of
Fig 19: Performance curve produced by the network for
Computer Science and Network Security, vol
the given sample
[8]. M. R. Girgisa, A. A. Sewisyb and R. F. Mansourc,
The above figure shows the performance curve produced “Employing Generic Algorithms for Precise Fingerprint
while training, testing and validation of the network. We get Matching Based on Line Extraction”, Graphics, Vision
and Image Procession Journal, vol. 7, pp. 51-59, (2007).
the Best Validation Performance 4.4568e-013 at 12 epochs
[9]. Duresuoquian Miao, Qingshi Tang, and Wenjie Fu,
“Fingerprint Minutiae Extraction Based on Principal
27
International Journal of Computer Applications (0975 – 8887)
Volume 52– No.10, August 2012
Cures”, the Journal of the Pattern Recognition Letters, [12] Kamijo Masayoshi, “Classifying Fingerprint Images
vol. 28, pp. 2184 2189, (2007). using Neural Network: Deriving the Classification
State,” IEEE International Conference on Neural
[10]. Alessandra Lumini, and Loris Nann, “Advanced Methods network, vol.3, pp. 1932-1937, 1993.
for Two-Class Pattern Recognition Problem Formulation
for Minutiae Based Fingerprint Verification”, the [13] http://en.wikipedia.org/Wiki/Pattern_matching
Journal of the Pattern Recognition Letters, vol. 29, pp.
142-148, (2008). [14]homepage.inf.ed.ac.uk/rbf/IAPR/researchers/PPRPAGES/
pprtut.htm
[11] Jain Anil, Prabhakar Salil, and Hong Lin, “A
Multichannel Approach to Fingerprint Classification,' [15] Bhishop M. Christopher, (2010) “Neural Networks for
IEEE Transactions on Pattern Analysis and Machine Pattern Recognition”, pp. 1-10
Intelligence, vol. 21, pp. 348- 359, 1999
28