Analysis Methods Used to Extract Fingerprints Features

Analysis Methods Used to Extract Fingerprints Features

Mohammad S. KhrisatRushdi. S. Abu Zneit Hatim Ghazi Zaini Ziad A. Alqadi 

Faculty of engineering Technology, Al-Balqa Applied University Amman, Amman 11134, P.O. Box 15008, Jordan

Computer and Information Technology College, Taif University, Taif 21944, P.O. Box 11099, KSA

Corresponding Author Email: 
mkhrisat@bau.edu.jo
Page: 
711-717
|
DOI: 
https://doi.org/10.18280/ts.380318
Received: 
14 November 2020
|
Revised: 
15 March 2021
|
Accepted: 
23 March 2021
|
Available online: 
30 June 2021
| Citation

© 2021 IIETA. This article is published by IIETA and is licensed under the CC BY 4.0 license (http://creativecommons.org/licenses/by/4.0/).

OPEN ACCESS

Abstract: 

The fingerprint is used in many vital applications important to humans, which requires searching for an effective way to extract the characteristics of the fingerprint. In this paper we will study some of the most popular methods used to extract fingerprints features. For each method the efficiency, accuracy, flexibility and sensitivity for image rotation will be experimentally tested, measured, analyzed in order to give good recommendations of how and when to use a certain method of features extraction. A detailed comparison analysis between MLBP, K_means, WPT, Minutiae methods will be done using several color images in various rotation modes to insure the stability of image features.

Keywords: 

fingerprint, histogram, MLBP, K_means, WPT, minutiae, features, rotation

1. Introduction

Fingerprints are prominent bumps in the skin that are adjacent to depressions, and each person has a distinct shape, and it has been proven that the fingerprint cannot be identical and identical in two people in the world even the identical twins that originate from one egg, and these lines leave their impact on everybody that touches it and on the surfaces Particularly smooth. Therefore, fingerprint recognition refers to the mechanism for verifying the compatibility of the two fingerprints of a person, and the fingerprint is one of the types of biometrics used to verify and document identity [1].

People have small bumps on their fingers, which make it easier to catch things. Like every organ of the human body, these protrusions are formed by genetic and environmental factors, which give the genetic code of DNA the basics on which the developing gene must form [2]. But the way to configure it depends on random events. Like the position of the fetus in the womb at a given moment, the concentration and density of the placenta fluid surrounding the fetus, they decide how each bump will form. So, in addition to the countless factors that interfere with a person’s genetic makeup, there are many environmental factors that influence finger formation. The development process is very messy, like the weather that forms clouds, so there can be no duplicate fingerprint twice [3].

Therefore, the fingerprint is a unique personal mark even in identical twins. Although a sneak peek at two fingerprints may turn out to be the same, a professional investigator or advanced program can spot the difference. This is the basic idea for fingerprint analysis in both protection and crime investigation [4].

Fingerprints can be represented by 2D or 3D matrix (gray or color image), and the matrix usually has a big size which make the process of identifying fingerprint very complicated in terms of time, for this reason, it is necessary to search for a way to represent the fingerprint with a group of limited values of small size, so that these values can be used as a classifier or identifier of the fingerprint.

Fingerprint features are a vector of small number of values, and each fingerprint features vector must satisfy the following requirements:

1) It must be unique for each fingerprint.

2) Easy to extract.

3) Must be numeric and easy to use.

4) Must not sensitive to the fingerprint rotation and it must be fixed.

Each fingerprint image can be represented by a histogram, and here we can benefit from an important feature of the image histogram, this feature is represented by the stability of the histogram and not affected by the result of rotating the image and to what degree as shown in Figures 1 and 2 [5].

Figure 1. Fingerprint rotations

Figure 2. Fingerprint’s histograms (histograms are stable)

2. Features Extraction Methods

Multiple methods are used to extract the features of the fingerprint, and these methods vary in their efficiency, flexibility and degree of stability of features, especially after the rotation of the fingerprint. We will address in this item some of the commonly used methods: K_means clustering (K_means), Minutiae, modified local binary pattern (MLBP) and wavelet packet tree decomposition (WPT) methods.

2.1 K_means method

This method is based on grouping the image pixels into groups called clusters, this method is flexible by using the clusters centroids or the within clusters sums as a fingerprint features, the number of features in the features vector depends on the selected number of clusters. This method can use a fingerprint image or the image histogram as an input data set.

This method can be implemented applying the following steps:

Step1: Initialization: Select the number of clusters, the centroid for each cluster and the input data set.

Step2: While the centroids keep changing do the following.

Calculate the absolute value of distance between each point and each cluster centroid.

Depending on the distances calculated values add the point to the closest cluster, and then save the point coordinates.

Update each centroid by the using the average of the points which belong to the cluster.

Here is an example of clustering the following input data set into two clusters:

Tables 1, 2, 3, and 4 show the calculation processes.

From Table 4 we can see that the clusters centroids are: C1=17.1250 and C2=39.3333, the input data set was grouped into two clusters with points:

Cluster 1: 3, 7, 9, 11, 20

Cluster 2: 36, 40, 42

Table 1. Pass 1 C1=6, C2=12

Data item(point)

Distance 1

Distance 2

Nearest cluster

New centroids

3

3

9

1

C1=6.3333

7

1

5

1

9

3

3

1

11

5

1

2

20

14

8

2

C2=29.8000

36

30

24

2

40

34

28

2

42

36

30

2

Table 2. Pass 2 C1=6.3333, C2= C2=29.8000

Data item(point)

Distance 1

Distance 2

Nearest cluster

New centroids

3

3.3333

26.8000

1

C1=7.5000

7

0.6667

22.8000

1

9

2.6667

20.8000

1

11

4.6667

18.8000

1

20

13.6667

9.8000

2

C2=34.5000

36

29.6667

6.2000

2

40

33.6667

10.2000

2

42

35.6667

12.2000

2

Table 3. Pass 3 C1=7.5000, C2= C2=34.5000

Data item(point)

Distance 1

Distance 2

Nearest cluster

New centroids

3

4.5000

31.5000

1

C1=17.1250

7

0.5000

27.5000

1

9

1.5000

25.5000

1

11

3.5000

23.5000

1

20

12.5000

14.5000

1

C2=39.3333

36

28.5000

1.5000

2

40

32.5000

5.5000

2

42

34.5000

7.5000

2

Table 4. Pass 4 C1=17.1250, C2= C2=39.3333

Data item(point)

Distance 1

Distance 2

Nearest cluster

New centroids

3

14.1250

36.3333

1

C1=17.1250

No changes so stop

7

10.1250

32.3333

1

9

8.1250

30.3333

1

11

6.1250

28.3333

1

20

2.8750

19.3333

1

C2=39.3333

No changes so stop

36

18.8750

3.3333

2

40

22.8750

0.6667

2

42

24.8750

2.6667

2

2.2 Minutiae method

Fingerprint image contains several unique objects each of them is called minutiae as shown in Figures 3 and 4, each of them has its own shape, coordinates and orientation [5].

Figure 3. a) Minutiae types b) Coordinates c) Orientation

Figure 4. Fingerprint structure

Figure 5. CN calculation

Here we will focus on detecting ridge ending and bifurcation minutiae, and here we can use the counts of each of them and the distances as a fingerprint feature.

Each minutia in the fingerprint image can be easily detected depending on the 8 neighbors values and using the calculated classifier crossing number (CN) as shown in Figure 5 [6].

The Euclidean distance for each object points can be calculated using formula (1) (where n is the number of points in each object).

$d(\boldsymbol{p}, \boldsymbol{q})=d(\boldsymbol{q} \cdot \boldsymbol{p})$

$=\sqrt{\left(q_{1}-p_{1}\right)^{2}+\left(q_{2}-p_{2}\right)^{2}+\cdots+\left(q_{n}-p_{n}\right)^{2}}$

$=\sqrt{\sum\left(q_{i}-p_{i}\right)^{2}}$                   (1)

This method can be implemented applying the following steps:

Step1: Get the digital image.

Step2: If the digital image is color, then convert it to gray image.

Step3: Convert the gray image to binary.

Step4: Apply morphological thinning to get the image edges.

Step5: For each pixel in the image do the following:

Calculate CN.

Determine the object depending on CN value.

Add 1 to the object count.

Get the pixel coordinates.

Add the coordinates to the points coordinate matrix.

Step6: For each detected object calculate Euclidean distance.

Step7: Use the object counts and distances as a fingerprint features [7].

2.3 Modified local binary pattern method

Local binary pattern (LBP) histogram of the fingerprint image is a histogram of an output image after applying LBP operator calculations for each pixel in the input image.

LBP image can be obtained applying the steps shown in Figure 6.

Figure 6. Example of calculating LBP pixel

The introduced MLBP method is based on LBP operator calculation, this method is flexible and we can select the number of features for each fingerprint freely, the following Table 5 shows how to use this method to extract 4-elements features vector for each finger print [8]:

Table 5. MLBP calculation

Pixels

…..

100

120

150

80

170

90

130

…..

 

 

 

 

150<= 170, so b0=1

 

 

 

 

 

 

120 not <=170 so b1=0

 

 

 

 

 

Binary number=01, decimal =1

So add 1 to count of features vector with index=1

 

 

 

 

 

 

 

These operations to be repeated for each pixel, at the end we got a vector of for values

2.4 WPT decomposition method

Wavelet packet tree decomposition can be used to extract features for any fingerprint by reshaping the image matrix into one row matrix, then calculating the approximation and details using formulas 2 and 3 [8]. Here we can control the features vector size by selecting the decomposition level, and taking only the obtained approximation as shown in Figure 7.

Figure 7. WPT decomposition

$A_{j+1, i}=\frac{e v e n_{j, i}+o d d_{j, i}}{2}$                (2)

$D_{j+1, i}=\frac{e v e n_{j, i}+o d d_{j, i}}{2}$                 (3)

Table 6 shows an example of how to calculate approximations and details:

Table 6. Approximations and details calculation example

 

3

7

9

11

20

36

40

42

Level 1

Approximation

Detail

5

10

28

41

-2

-1

-9

-1

Level 2

Approximation

Detail

Approximation

Detail

7.5

34.5

-2.5

-6.5

-1.5

-5

-0.5

-4

Level 3

Approximation

Detail

Approximation

Detail

Approximation

Detail

Approximation

Detail

21

-13.5

-4.5

2

-3.25

1.75

-2.25

1.75

3. Implementation and Experimental Results

3.1 K_means clustering implementation

The main disadvantage of this method is that it requires high extraction time especially for images with big sizes, this will reduce the efficiency of this method, and Table 7 shows the results of K-means clustering using images with big sizes [9].

To overcome the previous mentioned disadvantage we can use the fingerprint image histogram as an input data set for clustering, Table 8 shows the obtained results for the selected 10 fingerprints images.

From Table 8 we can see the following facts:

-K_means is efficient by providing an average extraction time of 0.07 seconds.

The obtained features for each fingerprint image are unique.

-K_means method is flexible in selecting the features vector size, which equal the number of cluster.

-K_means methods can give us an alternative feature by selecting the within clusters sums as a features.

-K_means method is not sensitive to the fingerprint rotation; they keep the same without any changes even if the image was rotated as shown in Table 9.

(Rotation degrees were selected as an example; here we can select any rotation degree).

3.2 MLBP implementation

MLBP method of features extraction is efficient for images with various sizes; Table 10 shows the obtained experimental results using images with various sizes.

The same images were rotated 45 degrees, Table 11 shows the obtained results.

Table 7. K_means extraction time for big images (4 clusters)

Image number

Size(byte)

Centroids(features)

Extraction time(seconds)

F1

5140800

26.2997

77.3687

130.4123

197.0929

31.735000

F2

6119256

63.9469

110.3634

148.1826

228.5058

35.637000

F3

150849

24.7795

88.6582

162.6748

230.7880

2.310000

Extraction time rapidly increases when the image size increases.

Table 8. Fingerprint images features (K_means clustering)

Fingerprint #

Size (byte)

Features(centroids)

Extraction time (seconds)

Cluster 1

Cluster 2

Cluster 3

Cluster 4

1

231000

350

7150

74180

261000

0.072000

2

3935100

900

11900

55600

1021700

0.083000

3

98256

170

3240

24610

102680

0.068000

4

151050

72

477

16624

56269

0.069000

5

151122

81

621

19845

57190

0.108000

6

532500

270

5080

70520

193540

0.091000

7

2104050

570

23670

223320

872240

0.074000

8

151200

97

419

14280

56355

0.071000

9

151050

69

577

7057

56337

0.068000

10

150897

79

702

20531

54726

0.081000

Average

765620

 

 

 

 

0.0785

Table 9. Features for fingerprint 1 and various rotated versions

Fingerprint

Size (byte)

Features(centroids)

Extraction time (seconds)

Cluster 1

Cluster 2

Cluster 3

Cluster 4

1

231000

350

7150

74180

261000

0.072000

Rotated 25 degrees

231000

350

7150

74180

261000

0.072000

3 Rotated 60 degrees

231000

350

7150

74180

261000

0.072000

Rotated 135 degrees

231000

350

7150

74180

261000

0.072000

Table 10. MLBP results (images with various sizes)

F1

5140800

1748515

690226

667124

2034931

0.1940

F2

6119256

1566343

1027114

969247

2556548

0.2380

F3

150849

57977

23237

20181

49450

0.0060

Extraction time is significantly small for various image sizes.

Table 11. MLBP features for rotated images

Image number

Size(byte)

Centroids(features)

Extraction time(seconds)

F1

5140800

1748515

690226

667124

2034931

0.1940

F1 rotated 45 degrees

5140800

1792257

671778

635231

7605693

0.1940

F2

6119256

1566343

1027114

969247

2556548

0.2380

F2 rotated 45 degrees

6119256

1467454

1097850

1061771

9264908

0.2380

F3

150849

57977

23237

20181

49450

0.0060

F3 rotated 45 degrees

150849

55753

25958

20693

254667

0.0060

Extraction time is significantly small for various image sizes.

Table 12. Fingerprint MLBP features

Fingerprint #

Size (byte)

Features

Extraction time (seconds)

1

231000

65

50

59

78

0.0350

2

3935100

78

36

41

97

0.0330

3

98256

78

43

49

82

0.0230

4

151050

66

47

53

86

0.0240

5

151122

70

49

50

83

0.0230

6

532500

68

48

41

95

0.0240

7

2104050

84

39

41

88

0.0300

8

151200

60

50

53

89

0.0240

9

151050

66

53

55

78

0.0220

10

150897

61

40

37

114

0.0240

Average

765620

 

 

 

 

0.0262

From Table 11 we can see that MLBP method is very sensitive to image rotations, and to overcome this disadvantage we can use the image histogram to find the fingerprints features, Table 12 shows the results for the selected 10 fingerprint images.

From Table 10 we can raise the following facts related to MLBP method:

-The method is efficient by providing a small average time of features extraction.

-The obtained features for each fingerprint image are unique.

-Using histogram will reduce the extraction time and will keep the features without any changes even if the image was rotated.

3.3 WPT decomposition implementation

Fingerprint images usually have different sizes, so it is difficult to determine the levels of decomposition to get the needed size of features vector, to overcome this disadvantage we can use the fingerprint image histogram, the selected fingerprints were processed using this method and Table 13 shows the experimental results:

Table 13. Fingerprint WPT features

Fingerprint #

Size (byte)

Features

Extraction time (seconds)

1

231000

8410

1889

1895

16682

0.0990

2

3935100

3795

345

279

11978

0.1290

3

98256

34114

8060

7861

72785

0.1000

4

151050

15543

4580

4735

38080

0.0990

5

151122

1181.8

431

527.8

4156.3

0.1130

6

532500

6125

1102

1196

13765

0.1710

7

2104050

29086

2119

2192

54272

0.1000

8

151200

13630

6221

7494

35655

0.0980

9

151050

1544.6

386.1

449.5

3913.5

0.1010

10

150897

264.9

1405.9

482.4

4175.0

0.1060

Average

765620

 

 

 

 

0.1116

Table 14. Minutiae features

Fingerprint #

Size (byte)

Features

Extraction time (seconds)

Ridge ending

Bifurcation

DR

DB

1

231000

655

2444

500.6755

451.5496

0.4500

2

3935100

69

2379

461.7359

992.3719

2.2630

3

98256

39

1149

240.4683

301.0814

0.1640

4

151050

6

375

188.7326

101.8332

0.0980

5

151122

15

229

31.3847

193.7524

0.0900

6

532500

37

512

367.7839

298.4024

0.3000

7

2104050

48

2853

966.6276

844.4104

1.2210

8

151200

2

53

106.4519

238.8326

0.1040

9

151050

7

368

223.8928

101.8332

0.0900

10

150897

14

138

94.8103

236.1779

0.1120

Average

765620

 

 

 

 

0.4892

From Table 13 we can raise the following facts related to WPT decomposition method:

-The method is efficient by providing a small average time of features extraction 9 with average time =0.11 seconds).

-The obtained features for each fingerprint image are unique.

-Using histogram will reduce the extraction time and will keep the features without any changes even if the image was rotated.

-The method is flexible of determining the features vector size by selecting the necessary level of approximation.

3.4 Minutiae method of features extraction

Here we select the ending ridges and bifurcations and used the counts of ridge points, the counts of bifurcation, the Euclidean distances for both ridge ending and bifurcation objects, Table 14 shows the obtained experimental results, and from this table we can raise the following facts related to minutiae:

-The method is efficient by providing a small average time of features extraction 9 with average time =0.48 seconds).

-The obtained features for each fingerprint image are unique.

-Using histogram will destroy the minutiae objects.

-Rotating the fingerprint will produce different features, so we have to keep more than one version for each fingerprint associated with the same person.

-The method is flexible of determining the features vector size by selecting the necessary number of objects depending on CN value.

Table 15 shows the ridge ending coordinates for fingerprint 4, while Figures 8 and 9 show the plot of these points.

Figure 8. Ridge ending for fingerprint 4

Figure 9. Plot of ridge ending for fingerprint 4

Table 15. Ridge ending for image 4

Ending ridge points coordinates

Ridge_x

Ridge_y

187

19

150

64

205

88

180

90

159

93

141

114

For efficiency comparisons we took the extraction time for each method as shown in Figure 10 (Minutiae has the worst efficiency, while MLBP has the best):

Figure 10. Time comparisons

All the studied methods are not sensitive to image rotation except minutiae method, because taking the histogram will destroy the objects structures within the fingerprint, and this show in Table 16:

Table 16. Various methods features

Fingerprint

K_means

MLBP

WPT

Minutiae

1

350

65

8410

655

7150

50

1889

2444

74180

59

1895

500.6755

261000

78

16682

451.5496

1 rotated 35 degree

350

65

8410

594

7150

50

1889

2266

74180

59

1895

220.6354

261000

78

16682

239.0063

No changes

No changes

No changes

Changed

The way that section titles and other headings are displayed in these instructions, is meant to be followed in your paper.

4. Conclusions

Various methods for fingerprint features extraction were introduced, implemented and analyzed. Experimental results showed that using histogram will improve the efficiency of K-means, MLBP, and WPT method. K_means method features are stable even if we rotate the fingerprint image. Using image histogram in MLBP and WPT methods will fix the features and will keep them without changes even if we rotate the image. Using Histogram in minutiae method is not recommended because it destroys the fingerprint structure.

It is mandatory to have conclusions in your paper. This section should include the main conclusions of the research and a comprehensible explanation of their significance and relevance. The limitations of the work and future research directions may also be mentioned. Please do not make another abstract.

  References

[1] Hemanth, J., Balas, V.E. (2018). Biologically Rationalized Computing Techniques for Image Processing Applications. Springer. p. 116. https://doi.org/10.1007/978-3-319-61316-1

[2] Becker, R.F., Dutelle, A.W. (2018). Criminal Investigation. Jones & Bartlett Learning. p. 133. 

[3] Leyden, J. (2017). Fingerprinting of UK school kid's cause's outcry archived, The Register August 10, 2017.

[4] Bleay, S., Sears, V., Downham, R. (2017). Fingerprint Source Book. second edition.

[5] Alqadi, Z., Aqel, M. El Emary, I.M.M. (2006). Fingerprint matching algorithm based on ridge path map. European Journal of Scientific Research, 15(3): 344-351.

[6] Moustafa, A.A., Alqadi, Z.A. (2009). A practical approach of selecting the edge detector parameters to achieve a good edge map of the gray image. Journal of Computer Science, 5(5): 355-362. https://doi.org/10.3844/jcssp.2009.355.362

[7] Al-Dwairi, M.O., Alqadi, Z.A., Abujazar, A.A., Zneit, R.A. (2010). Optimized true-color image processing. World Applied Sciences Journal, 8(10): 1175-1182.

[8] Zahran, B., Al-Azzeh, J., Ziad, A., Al Zoghoul, M., Khawatreh, S. (2018). A modified LBP method to extract features from color images. Journal of Theoretical and Applied Information Technology, 96(10): 3014-3024.

[9] Zneit, R.A., Khrisat, M.S., Khawatreh, S.A., Alqadi, Z. (2020). Two ways to improve WPT decomposition used for image features extraction. European Journal of Scientific Research, 157(2): 195-205.