nearest neighbor lines, and then a second level match is .... If 'a' is the mid-point of the center line segment, ... We
NEAREST NEIGHBOR VECTOR BASED PALMPRINT VERIFICATION Mayur D. Jain, S Nalin Pradeep Research & Technology Group, Honeywell Technology Solutions Lab, Bangalore, INDIA
[email protected],
[email protected] R Balasubramanian Department of Mathematics, Indian Institute of Technology, Roorkee, INDIA
[email protected]
point is effective because (1) palmprint verification is line matching process which is more accurate, (2) significant features in the palmprint can be determined in presence of noise and (3) the datum point of palmprint are more stable. David zhang has proposed many techniques of biometric palmprint verification. Zhang and Shu proposed a palmprint verification based on datum point invariance and line feature matching [3]. According to [3], the datum point is stable and invariable in position. In this paper, we propose a new matching technique. We systematically analyze the features in a palmprint for constructing a Nearest Neighbor Vector (NNV). The NNV is easy to be constructed and the two level matching algorithm used is not complex. In the first level matching, line features based on the position, orientation and location are used relative to the other features, which enable a local structure formation. The local structure thus established is invariant to rotation and translation. Moreover, they can tolerate reasonable deformation because it is formed from only a small area of palmprint. The matched local structure provides correspondence for the second level match using datum point as reference. The second level matching together with the result of first level match determines whether the two palmprints are generated from the same palm. This fine matching strategy makes the algorithm robust to handle distortions in the palmprint and also for palmprints subjected to rotation and translation. The paper is organized as follows: section 2 explains the datum point and line feature extraction. In section 3, NNV method is explained in detail. The matching algorithm along with the NNVScore calculation is presented in section 4. Section 5 concludes the work. The Figure 1 below represents flow chart of palmprint recognition.
Abstract We introduce palmprint verification, one of the most reliable personal identification methods in the biometric technology. In this paper, a new approach to the palmprint verification based on nearest neighbor vector (NNV) is presented. Initially we find the datum point of palmprint, which have a remarkable advantage about their spatial location. We find all possible line pairs using NNV, followed by a first level preliminary match using the nearest neighbor lines, and then a second level match is carried out by considering the global datum point feature of palmprints to overcome the possible distortion. The two level analyses based on the NNV and datum point helps in effective palmprint verification. With several palmprint images, we tested out proposed verification system and the experimental results shows that the performance of our algorithm is good. Key Words: Nearest Neighbor Vector (NNV), Datum point, Palmprint.
1. Introduction Palmprint, because of its uniqueness has been used as a positive human identifier from decade. It is considered as one of the most reliable means of distinguishing a person from the others due to its stability and uniqueness [1]. In this paper, a new matching technique is proposed for biometric palmprint identification. The palmprint is made up of principal lines, wrinkles and ridges. Palmprint verification is used to determine whether the two palmprints are from the same palm. The identity of a person is verified using the line features such as principal lines and coarse wrinkles from palmprint. Apart from these line features, palmprint also has geometry features (width, length, area of palm). But these geometry features can be easily captured to create a fake palm and hence fail the authentication. However, the line features in the palmprint can be obtained only from fine images with good resolution. It thus follows that the line features can be used as the biometric features in the palmprint verification. Compared with fingerprint verification [2], the palmprint verification using the line features and the datum 480-098
Figure1: Palmprint verification steps
536
formation. If ‘a’ is the mid-point of the center line segment, b, c, d and e are the four neighboring line segment midpoints. We call the line that connects the centerline segment with neighboring line segment as edge, and construct the vector using the following information.
2. Datum point and line feature extraction According to Shu and Zhang [3], the feature of a palmprint is the stability of the principal lines (Life line and Heart line), which intersects both sides of palm. The midpoint of these intersection lines act as a datum point in the palmprint verification, shown in Figure 2(a). Feature extraction is the most important step for verification purpose. Though many line feature extraction methods have been proposed, there exist inability to generate precise line map for images such as palmprint. The method of pyramid edge detection based on stack filter performs well, it only extract principal lines from the palmprint image [4]. The line segments are detected in the four directions using the respective patterns [5]. They are processed to eliminate overlapping regions as suggested by Shu and Zhang. Further processing, these thick lines are thinned for verification purposes by considering the neighboring pixels [6]. The extracted thinned lines contain protruding, which affect the matching result. The noise like protruding is removed by pruning the thinned extracted lines [6]. The line features extracted consists of several straight lines representing a curve. The extracted line features from palmprint image are shown in Figure 2. If a NNV is constructed for every line segment the template size will be large which can decrease the system efficiency. In our algorithm, we select the lines near the datum point of the palmprint and also of considerable length, the selection rule is: M − Dp < R1 and L > R 2 (1)
1.
2. 3. 4.
The distance between the midpoints of the central line segment and the neighboring line segment, as D, as shown in Figure 3. The angle α between the two neighboring edges as shown in the Figure 3. The angle β between the line segment orientation and the edge as shown in the Figure 3. The angle γ between the centerline segment orientation and the neighboring line segment orientation as shown in the Figure 3.
These four features are extracted for the centerline segment with one of the neighboring line segment. Similarly, the features are calculated for the other line segments in the neighborhood. The vector D1 , D2 , D3 , D4 , α 1 , α 2 , α 3 , α 4 , β 1 , β 2 , β 3 , β 4 , γ 1, γ 2 , γ 3 , γ 4 is named NNV. It is apparent that the angles α , β , γ and the distance D are invariable to translation, rotation because the features consider are relative to other line features. Therefore we can use them to construct the NNV. If suppose P and Q are the corresponding line segments from two images of same palm then P and Q will have a similar Nearest Neighbor Vector (NNV). This NNV is easier to be extracted, because of its simple structure; the matching between the palmprints is faster.
Where M and L denote the line mid-point and length of line segment, Dp is the datum point, | | denotes the distance function, R1 and R2 are the thresholds determined by experiment. Therefore the reader can adjust the R1 and R2 values according to the line feature extracted for a given image resolution.
Figure 3: Nearest neighbor vector formation
4. Matching algorithm
Figure 2: (a) Datum point (b) Original image
3. Nearest neighbor vector (NNV)
In this section we explain about two levels of matching a palmprint. In the first level, we consider local features of the extracted lines through the NNV constructed for each line segment. To ensure more reliability and any possible distortion, we do a second level match considering the datum point of a palmprint as reference.
Figure 3 illustrates the nearest neighbor vector (NNV) formation. To construct the NNV we use k nearest neighbors of a line segment. As shown in the Figure 3, it demonstrates an example of NNV using four nearest neighbors of a line segment and this enables local structure 537
calculated for the two sets of line pairs P and Q from two different palmprints. From the NNV result, we select line pairs for which NNV score is less than threshold T p .
4.1 First level matching Let D11, D12, D13, D14,α11,α12,α13,α14, β11, β12, β13, β14, γ11,γ12,γ13,γ14 & D21, D22, D23, D24,α21,α22,α23,α24, β21, β22, β23, β24, γ21,γ 22,γ 23,γ 24
Let these lines pairs be denoted as, L = {( x l 1 , y l 1 ), ( x l 2 , y l 2 ),..., ( x l n , y l n )} vector for template image and M = {( x m1 , y m1 ), ( x m 2 , y m 2 ),..., ( x m n , y m n )} be a vector for the input image. If the datum point is denoted as ( x p , y p ) then using the datum point as reference, we normalize the point pairs. Normalization is done as given:
be two NNVs from two different palmprint. In order to compare the two NNVs, we calculate NNV score, which gives similarity between two vectors. NNV score is computed for the two vectors: 1.
2.
Relative distance Rd of the two edge Rd 11 = D11 − D 21 / min( D11, D 21)
(2)
min() means to select the minimal of two values. The angle difference between the two edges connecting the neighboring lines ∆α 11 = α 11 − α 21 (3)
3.
The angle difference between the line orientation and its edge ∆β 11 = β 11 − β 21 (4)
4.
The angle difference between the two neighboring lines orientation. ∆γ 11 = γ 11 − γ 21
⎛r ⎜ ⎜θ ⎝
f β (∆β11 + ∆β12 + ∆β13 + ∆β14 ) +
⎞ ⎟ ⎟ ⎠
(6)
Where, ( xi , yi ) denote the mid point of a line from both template and input palmprint image. The algorithm for the second level match is shown in Figure 4.
for all Li ∈ L{ for all Mj ∈ M{
NNVScore= f d ( Rd11 + Rd12 + Rd13 + Rd14 ) + f α (∆α11 + ∆α12 + ∆α13 + ∆α14 ) +
⎞ ⎛⎜ ( x − x p ) 2 + ( y − y p ) 2 i i ⎟= p y − y − 1 ⎜ i ⎟ ⎠ ⎝ tan ( xi − x p )
(5)
Calculate ∆d =
ri - r j
Calculate ∆α =
θi - θ j
Compute sum = ∆ d + ∆ α Store sum in list < i , j >
f γ (∆γ 11 + ∆γ 12 + ∆γ 13 + ∆γ 14 ) }
Where, f d is a weighting factor for the relative distance and f α , f β , f γ are weighting factors for the respective
if (min(list i,j 1, 2 ,... n ≤ , T sc {
orientations. These weighting factors are a linear combination of sum to calculate the NNV score. After these steps we will get the NNV score of the two NNV vectors, if it is below a threshold T p , we say that the
Line Match = Line Match + 1 } }Figure 4: Second Level Matching Algorithm
line pairs matched. Assuming, that there are two sets of line pairs P and Q from two different palmprint images, then by using the equation (5), all possible matched line pairs < p x , q x > would be found, where p x ∈ P and q x ∈ Q . In order to avoid one vector from set P matching more than one vector from Q, we set a flag with the compared vectors, and use the unmatched vector to start the new vector match.
Figure 4: Second Level Match
In principle the match percent of the two palmprint depends on the threshold Tsc .
5. Experimental results and conclusion In order to evaluate our algorithm on palmprint matching system, we tested our approach with 42 left palm images. In our experiment, 250*250 gray scale images were employed with 2 8 gray levels. The match percent for the images is represented in Figure 5. as False Refuse Rate (FRR) and False Accept Rate (FAR). The threshold T p at the first level match is lineant
4.2 Second level matching In section 4.1, we carried out the first level match using the NNV. However, just matching the NNV is not enough for making verification decisions; because the NNV constructed using the nearest neighboring lines usually tend to be similar among different palmprints. Therefore at the second level match we take the global features of the palmprint based on the NNV score
to enable more line pairs under possible distortion for a second level match. The For varying thresholds Tsc , the results are shown in the Figure 5, from which we infer that
538
our algorithm has better performance in palmprint verification when Tsc lies between 0.1 and 0.15. For the biometric system to work effectively both FAR and FRR should be as low as possible, for the criteria when FAR = FRR.
datum point as reference of a palmprint. Final decisions were made based on the Line Match rate. It shows that the Palmprints can be effectively used to identify individuals with our proposed biometric matching algorithm. Our future work would involve concentrating more on effective ways to obtain thinned lines from distorted or smudged image. This would help us in improving the match percent further for the current palmprint verification system
9 8
FAR
7
FRR
References
%
6 5
[1] W. Shu & D. Zhang, Automated personal identification by palmprint, Optical Engineering, vol. 37, no. 8, 1998. [2] A. Jain, L. Hong & R. Bolle, On-line fingerprint verification, IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 19, no. 4, 1997,302-313, [3] D. Zhang & W. Shu, Two novel characteristics in palmprint verification: Datum point invariance and line feature matching, Pattern Recognition 32(4), 1999, 691702. [4] Paul S. Wu & Ming Li, Pyramid edge detection based on stack filter, Pattern Recognition Letters, vol. 18, no. 4, 1997,239-248. [5] Azriel Rosenfeld & Avinash C. Kak, Digital Picture Processing, London: Academic Press, 1982. [6] Gonzalez and Woods, Digital Image Processing 2nd edition (Prentice Hall, 2002).
4 3 2 1 0 0.05
0.1
0.15
0.2
0.25
0.3
Threshold(Tsc)
Figure 5: Experimental results FAR and FRR
Further analysis of the system is carried out through FAR and FRR. System Verification Rate calculated as follows evaluates the biometric system performance: FAR+ FRR SVR = (1 − ) * 100 (7) Number of Access Table 1 shows the SVR for different thresholds ( Tsc ). At Tsc = 0.14, where FAR and FRR curves intersect in Figure 5, the SVR is maximum at 98.82%. Table1: System verification rate Threshold
Tsc 0.05 0.1 0.14 0.15 0.2
SVR (%) 80.47 97.40 98.82 98.16 97.26
In this paper, we have proposed the new method of matching two palmprints by constructing Nearest Neighbor Vector (NNV) .The NNV can be constructed considering k nearest neighboring lines. In the verification stage of our algorithm, we considered 4 nearest neighbor lines. For each line pair, four trustworthy features were taken, which would not be subjected to changes due to the palmprint orientation. The NNV Score calculated turns to zero for line pairs taken from the same palmprint. The factor increase above zero puts the deviation of a line in its local area. The two level matching helped in getting improved match result for the palmprints. At the first level matching with the construction of NNV, helped attain lines pairs, which matched the local structural orientation of a line in the palmprint. Second level match on the matched line pairs was carried out considering the reliable global 539