Transcript of "Fingerprint High Level Classification"
1.
Fingerprint High Level Classification Reza. Rahimi, E. Pakbaznia, Sharif University of Technology, Tehran, Iran. 1
2.
Outline 1. Introduction 1.1 Problem Statement 1.2 Common Classification Methods 2. Proposed Algorithms 2.1 Proposed Algorithm (1) 2.1.1 Directional Image Space 2.1.2 Directional Masks 2.1.3 Detection of Singular Points Neighborhood 2.1.4 Detection of Singular Points 2.2 Proposed Algorithm (2) 2.2.1 Detection of Singular Points 2.2.2 Classification 3. Experimental Results 4. Discussion 2
3.
1.1 Problem Statement Fingerprint (FPs) have been used as a unique identifier of individuals for a very long time. FPs of a person are unique and features used in matching remain invariant with age. Fingerprint database are characterized by their large size, so we must find a way to narrow the search area. In high level classification FPs are classified into five main groups: arch, tented arch, left loop, right loop, and whorl. In high level classification singular points (SPs) namely core and delta points are used. 3
5.
1.2 Common Classification Methods There are four main approaches to allocate SPs: Methods based on mathematical representation of FPs. Because of the complexity of FP images the representationof FPs is a difficult task. Almost all of these methodsuse”Poincare” index to extract SPs. Methods based on statistical approaches. In these methods using directional histogram reduces noiseeffect. 5
6.
Methods based on Fourier transform. These methods are not very efficient because they work in frequency-domain. Methods based on intellectual computation. These methods use neural networks, fuzzy logic, and genetic algorithm. Combination of these tools with first three methods results in Powerful algorithms. 6
7.
2.1 Proposed Algorithm (1)Fig. 2: Overall block diagram of the first proposed algorithm. 7
8.
2.1.1 Directional Image Space Each elements of directional image is a vector. Exp.: D(i,j):=(d1(i,j),d2(i,j)) 0 < i,j <n-1. Directional images make a linear space. The inner product in this vector space is defined as: <F,G>:=ΣΣ F(i,j).G(i,j). The correlation function between two directional images is defined as: C(m,n):=<F(i,j),G(i-m,j-n)>. 8
9.
2.1.2 Directional Masks Directional masks are use to extract special features from directional images. For extracting core points a mask which can extract rotational region, in directional image, must be designed. For extracting delta points we must find a mask which can extract triangular region, in directional image. By sliding these masks over directional image and computing the correlation function a factor is founded which represents the amount of similarity between that area and core/delta mask. 9
11.
2.1.3 Detection of Neighborhood of Singular Points After finding core/delta correlation results, neighborhood of SPs must be founded. Detection of SPs neighborhood efficiently reduces the computational load of exact SP allocation process. The point is assigned as a core point if core correlation factor is greater than T=mc+γσ c (mc: mean, σc: variance,γ: experimental factor). The point is assigned as a delta point if delta correlation factor is greater than T=md+γσ d ( md: mean, σd: variance,γ: experimental factor). 11
12.
(a) (b) (c) (d)Fig. 4: First stage of allocation of SPs neighborhoods: ( a ) typical left loop fingerprint image, ( b ) directional image, ( c ) core point neighborhoodsafter soft thresholding, ( d ) delta point neighborhoods after softthresholding. 12
13.
2.1.4 Detection of Singular Points After finding most similar points to delta/core points the exact location of core/delta points must be extracted. Directional histogram is used to extract the exact location of SPs. (a) (b) Fig. 5: Core/ Delta histogram: (a) neighborhood of core points, (b) neighborhood of delta points. 13
14.
For each region the mean and variance is computed. The Point is assigned as a core point if one of the following conditions are satisfied: m1>90, m2<90, m1-m2<θ( i), {σ1 , σ2 } < σ( i ), m3<90, m4>90, m4-m3<θ( i), {σ3 , σ4 } < σ( i ), m1>90, m3<90, m1-m2<θ( i), {σ1 , σ3 } < σ( i ), m2<90, m4>90, m4-m2<θ( i), {σ2 , σ4 } < σ( i ). The point is assigned as a delta point if both of the following conditions is satisfied: 14
15.
m1<90, m1-m3<θ( i), {σ1 , σ3 } < σ( i ), m2>90, 180-( m2+ m3)< θ( i), {σ2 , σ3 } < σ( i ). θ( i) and σ( i) are chosen from a look-up-table (experimentally assigned look-up table). Algorithm is iterated until coverage to 2 points. 15
16.
(a (b) )Fig. 6: Core/ Delta allocation final results: ( a ) a typical left loopimage, ( b ) core and delta points detected by the proposed algorithm. 16
17.
2.2 Proposed Algorithm (2)Fig. 7: Block diagram of the second proposed algorithm. 17
18.
2.2.1 Detection of Singular Points Fingerprint(FP) images can be classified into different groups based on their SPs. First of all it is better to detect SP neighborhood in FP images. Neighborhood Detection of SPs Core Point Tangent slope changes faster in Fig.8(b) than Fig.8(a), The absolute value of second order derivative of y with 2 respect to x( d y ) is larger in (b) than (a). 2 dx 18
19.
Fig. 8: Tangent slope changes faster in (b) than (a). 19
20.
Ridges and valleys are the constant contours of gray level function. Gradient vector of a function is perpendicular to the constant contours in each point of domain. d2y With above points it is possible to calculate: dx 2 dy (∇ I ) x m= =− dx (∇ I ) y ∂I d y d ∂x 2 =− dx2 dx ∂I ∂y 20
21.
Areas with larger curvature are extracted by applying an appropriate threshold. (a) (b) (c)Fig. 9: Result of the first stage of the algorithm: (a) query image,(b) Related directional image, (c) neighborhood detected for core. 21
22.
Delta Point We can always find an area around delta points which contains two perpendicular directions. It can be recognized by scanning the whole directions with a m×n mask. Results of applying this stage on a FP image is shown in Fig. 10. 22
23.
(a) (b) (c)Fig. 10: Results of the neighborhood detection for delta points: (a) query image,(b) Related directional image, (c) neighborhood detected for delta points. 23
24.
1.2 Poincare Index Computation for Candid Points PI is defined as summation of direction differences between neighbor blocks in block-directional image on a closed curve, when the curve is traveled counterclockwise. PI ( x, y) = 1 ∫do f ( x′ y ′ , ) 2π C If C is a circle with radius: 1 ∂ PI (x, y) = lim ∫ Of (x +ε cosθ, y +ε sinθ)dθ. ε →0 2π ∂θ 24
25.
(a) (b) (c)Fig. 11: Different cases for PI: (a) ordinary point, (b) core point,(c) delta point. 25
27.
Adaptive Noise Cancellation Adaptive Noisy Core Cancellation Make an 5×5 neighborhood around each detected core point. Consider if it has any of below shapes around itself. (a) (b) (c) (d)Fig. 13: different acceptable neighborhoods around core points. continued 27
28.
Cancel each point which has not any of above shapes around it. Adaptive Noisy Delta Cancellation Make a 3×5 neighborhood around each detected delta point. Consider if it has any of below shapes around it. (a) (b) Fig. 14: different acceptable neighborhoods around delta points. continued 28
29.
Cancel each point which has not any of above shapes around it. (a) (b) Fig. 15: final results for core and delta detection after applying noise cancellation step: (a) core point, (b) delta point. 29
30.
2. Classification Distinguishing Whorl and Arch Class from Other Classes Knowing that a whorl has 2 pairs of SPs and an arch has no SPs, we can distinguish them from other classes. Distinguishing Between Loops and Tented Arch Make an m×n neighborhood around SPs of FP image. Compute the average of directions (ave_dir) in this neighborhood. 30
31.
Compute slope of the core/delta (slope) line in image. Make a decision as below: if ave _ dir −slope ≤ TLth Finger Class = Tented Arch else Finger Class = Loop 31
32.
Distinguish Between Left Loop and Right Loop Compute the average of directions in a special rectangular in the block-directional image. In a left loop this average is smaller than the core/delta line slope and in a right loop it is larger. (a) (b) Fig. 17: The average is smaller than the core/delta line slope: (a) left loop, (b) right loop. 32
33.
3. Experimental Results Proposed algorithms were tested on several fingerprint images with different qualities. The first stage of the proposed algorithm reduces the No.of core/delta probable points to 1/10~1/5 (of FP size). Table 1: Results of the First proposed algorithm. FP-Type Arch T-Arch R-Loop L-Loop Whorl Multiple Group Arch(5) 5 Yes T-Arch(5) 5 Yes R-Loop(10) 8 Yes L-Loop(10) 10 Yes Whorl(10) 10 Yes 33
34.
The second proposed algorithm was tested on 40 different FP images and led to successfully classification of almost 90% of images. Table 2: Results of the Second proposed algorithm. 34
35.
4. Discussion In this talk two different algorithms for fingerprint classification were discussed. In the first algorithm, using the new proposed tool (directional mask) speeds up the the process and in the second stage using an adaptive directional histogram increases the accuracy of the algorithm. In the second proposed algorithm, detection of the SPs neighborhood speeds up the process and also increases the accuracy of the second stage, the noisy detected SPs were cancelled in the third stage. 35
A particular slide catching your eye?
Clipping is a handy way to collect important slides you want to go back to later.
Be the first to comment