^{1}

^{*}

^{1}

^{*}

The graph can contain huge amount of data. It is heavily used for pattern recognition and matching tasks like symbol recognition, information retrieval, data mining etc. In all these applications, the objects or underlying data are represented in the form of graph and graph based matching is performed. The conventional algorithms of graph matching have higher complexity. This is because the most of the applications have large number of sub graphs and the matching of these sub graphs becomes computationally expensive. In this paper, we propose a graph based novel algorithm for fingerprint recognition. In our work we perform graph based clustering which reduces the computational complexity heavily. In our algorithm, we exploit structural features of the fingerprint for K-means clustering of the database. The proposed algorithm is evaluated using realtime fingerprint database and the simulation results show that our algorithm outperforms the existing algorithm for the same task.

The graph is an important data structure for representing various multi-attributed data and their complex rela- tions. Pattern recognition is the area of computer science which intends to find a particular pattern in the given input. A variety of graph based techniques had been proposed as a powerful tool for pattern representation and classification in the past years. For a longer duration, graphs were considered to be computationally expensive tool. But recently the graph based pattern recognition and image processing is gaining popularity. It is a fact that the computational complexity of the graph based methods is becoming feasible due to high end new generations of the computers and the research advancements. In this work, we exploit graph based fingerprint recognition. Fingerprint plays a distinguishing role in biometrics. It gives unique identification to the individual. It is per- manent and non-changing character pattern over a long period of time. The fingerprint recognition consists of retrieving specific fingerprints from database. The characteristics or features of a fingerprint are extracted and used in identification. We have used attributed graph to represent the extracted features of the fingerprint. When the feature set size grows, graph matching becomes expensive. So we optimize the fingerprint database by K- Means clustering which drastically reduces the fingerprint matching time. In this section, we discuss some basic graph terminologies which are prerequisite for the further discussion. We also discuss the related literature in this section. In section 2, we present the proposed algorithm. Section 3 discusses simulation results and section 4 concludes the paper. A graph

Graph vertices and edges can contain large complex information. When this information is a label or attributes of vertices and edges, the graph is called an attributed graph. Formally, an attributed graph is a graph with six-tuple

・ V is a finite set of nodes,

・

・ u is a labeling function for vertices,

・ v is a labeling function for edges,

・

・

The two graphs G and

1)

2) for any edge

Formally, two graphs are isomorphic to each other if they are equal. Practically, for most applications this mapping is too much restrictive. In practice, graph isomorphism is of limited use and more relaxing concepts are necessary. One such approach is subgraph isomorphism. An injective function

where U is the set of all graphs that can be constructed from a given set

In this work we present a new algorithm for automated graph based fingerprint representation and matching. We achieve the promising results by clustering the graph feature set and then applying the graph isomorphism. The algorithm proves robust for noisy images as well. We extract various structural features like ridges, end points, bifurcations of the fingerprint. These end points and bifurcations are called as minutiae. Each fingerprint is represented as an attributed relational graph [

1) It uses graph as fingerprint data structure.

2) It optimizes fingerprint search by clustering fingerprint graph feature nodes (Tier 1 clustering).

3) It further optimizes the search by clustering fingerprint database (Tier 2 clustering).

This is a graph based approach to compare structural fingerprint features called as minutiae. We implement graph based algorithm given by [

The overall method involves following steps.

1) Fingerprint preprocessing

2) Features Extraction

3) Features representation as a graph

4) Graph isomorphism algorithm to classify the fingerprint. We are using ridge (R), ridge ending (E) and ridge bifurcation (B) minutiae for fingerprint recognition.

When the fingerprint minutiae are more in numbers, comparing each one of them becomes very expensive for the machine. So in this algorithm we cluster the graph data by using K-NN clustering based on Euclidean distance between the vertices of the graph. A features template for each fingerprint is build after clustering the neighborhood relative vertices in similar classes. The advantage of this type of clustering is that the graph comparison is first done with the cluster features template of the fingerprint instead of direct comparison of the vertices of the graph. If the cluster features match with the input fingerprint graph then further graph isomorphism is performed. Otherwise the next cluster is visited in a hope to get matching candidate in it. The algorithm involves following steps. The steps 1 to 3 are same as discussed in previous section.

1) Fingerprint preprocessing

2) Features extraction

3) Features representation as a graph

4) KNN based graph node clustering

5) Graph isomorphism algorithm to classify the fingerprint.

The K-nearst-neighbor (KNN) clustering algorithm measures the distance between a query scenario and a set of scenarios in the data set. It cluster the K nearest neighbor minutiae in the fingerprint space. The distance between two scenarios is computed by using distance function

The Euclidean distance metric is chosen to determine the closeness between the minutiae (vertices). The Euclidean distance is defined as the K-NN distance because of the structural neighborhood properties of the minutiae ( or vertices). The Euclidean distance is given by:

The K-NN clustering proves to be the best due to its lesser execution time and good clustering accuracy. Generally a node is classified by a majority votes of its neighbors. The nodes are assigned to the class that is closest amongst its K nearest neighbors, where K is a small positive integer. If K = 1, then the node is assigned to the class of its nearest neighbor.

1) Each node within the feature set has a class label in the set,

2) The K-nearest neighbors are found by calculating the distance matrix where K is the number of neighbors.

3) The K-closest nodes are analyzed to determine which class label is the most common among the set.

4) The most common class label is then assigned to the node being analyzed.

After graph node clustering the graph based fingerprint matching is performed. The identification of the fingerprint is performed in this module. It reads each fingerprint clustered graph template from the database linearly and compares it with the clustered input fingerprint graph template. If the initial graph template matches then only the total graph isomorphism [

In the earlier section we cluster the features of each fingerprint prior to fingerprint matching. In K-means graph database clustering approach we cluster the fingerprint database based on K means clustering algorithm. It clusters the similar class of fingerprints in the database in similar clusters. It saves further matching time dra- stically as the fingerprint search needs to search a specific sub part of the database. We compare the perfor- mance of our algorithm with the graph based fingerprint recognition [

For the fingerprint detection we have tested the results on real life data set with 150 images. In fingerprint recognition we implemented following algorithms

Method 1: Fingerprint recognition with graph matching [

Method 2: Fingerprint recognition with K-NN clustering of the features and graph matching

Method 3: Fingerprint recognition with K means graph database clustering

The results are depicted in this section. We notice that the graph clustering is reducing the graph matching time drastically than the time taken by graph matching without clustering.

In the experiments conducted, we recorded fingerprint processing time and fingerprint matching time as comparison criterions.

The graph processing/clustering time difference between method 1 and method 3 is not clearly distinguishable in

In this work we have proposed two tier graph clustering and matching algorithms for fingerprint recognition. The fingerprints are preprocessed and structural features, the minutiae are extracted. The fingerprint is represented as an attributed graph by relating all the features with each other. When a query fingerprint image is given as an input for fingerprint matching, graph isomorphism is applied. For the graph of size “n” vertices the algorithm performs “n^{2}” comparisons. When size of “n” becomes larger, graph matching proves expensive. So we apply tier-clustering; Euclidean distance based K-NN clustering of the feature set. It clusters the feature vertices in similar groups

based on their neighborhood relationships. Because of the clustering, the algorithm compares cluster properties before comparing contents of the cluster individually. The approach drastically reduces the time taken by comparison without clustering. Further in tier-2, the fingerprint database is clustered with K-means algorithm. We have tested the results on real time data set available with 150 fingerprints. The observation is that graph clustering definitely reduces time needed for the graph matching purpose. The results of graph matching remain the same. The size of graph, we are considering is restricted due to memory limits of the processing machine. These techniques increase the processing time though. In that case, it is expected that the clustering of the databases is to be done off line prior to graph matching process for best results as a combination.

In the future work, we intend to analyze and test the results on larger data sets along with detail performance evaluation of the algorithms. Definitely graphs based algorithms have their own pros and cons. The selection of appropriate graphs for specific applications with appropriate graph matching algorithm is the key. It is always a challenge to achieve a general graph based platform for various applications and their needs.

We thank the Editor and the referee for their comments.

VaishaliPawar,MukeshZaveri, (2015) K-Means Graph Database Clustering and Matching for Fingerprint Recognition. Intelligent Information Management,07,242-251. doi: 10.4236/iim.2015.74019