sfinge: an approach to synthetic fingerprint generation · sfinge: an approach to synthetic...

8
SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy [email protected] Abstract This paper describes SFinGe, a method for generating synthetic fingerprints on the basis of some mathematical models that describe the main features of real fingerprints. The synthetic images are randomly generated according to few given parameters. SFinGe captures the variability which characterizes the acquisition of fingerprints through on-line sensors and uses a sequence of steps to derive a series of “impressions” of the same “artificial finger”. The approach is able to generate very realistic fingerprints, which can be useful for performance evaluation, training and testing of fingerprint-based systems. 1. Introduction With the increasingly adoption of fingerprint recognition systems, driven by the largely-accepted uniqueness of fingerprints and the availability of low-cost acquisition devices [8], methodical and accurate performance evaluations of fingerprint recognition algorithms are needed. Unfortunately, this requires large databases of fingerprints, due to the very small error rates that have to be estimated. For instance, according to [10], in order to support a claim of FMR less than 1/10,000 (the requirement for verification applications in [1]), 30,000 impostor matches from at least 250 individuals should be performed without observing any false match error. On the other hand, collecting large databases of fingerprint images is: 1) expensive both in terms of money and time, 2) boring for both the people involved and for the volunteers, 3) problematic due to the privacy legislation that protects such personal data. FVC competitions [5] [6] [7] [9] are examples of technology evaluations, where real fingerprint databases have been collected to test different algorithms, but do not constitute lasting solutions since in a short time these benchmarks will expire and new databases should be collected. In this paper an approach to the generation of synthetic fingerprint images is presented: SFinGe (acronym for Synthetic Fingerprint Generator). SFinGe can be used to create, at zero cost, large databases of fingerprints, thus allowing recognition algorithms to be simply tested and optimized. The artificial-fingerprints generated emulate fingerprints acquired with on-line sensors, since this kind of acquisition allows practical on- line recognition systems to be developed. On the other hand, with a few changes, the generation of impressions produced by the classic “ink-technique” is also possible. Section 2 of this paper briefly summarizes the anatomy of fingerprint images and the features that usually are extracted by fingerprint matching and classification algorithms. In section 3, the basic steps involved in the generation of synthetic fingerprint images are described: SFinGe is based on several mathematical models, which are not reported here; the reader should refer to [8] [2] [3] for a thorough treatment of the mathematical aspects. Section 4 provides some practical examples to explain how the generator may be used for training and testing fingerprint recognition, classification and retrieval algorithms. Finally, section 5 draws some conclusions. 2. Fingerprint features This section summarizes the main features of real fingerprint images and introduces the basic terminology that will be used throughout the rest of the paper. A fingerprint is the representation of the epidermis of a finger. At a macroscopic analysis, a fingerprint is composed of a set of ridge lines, which often flow parallel and sometimes produce local macro-singularities called core and delta, respectively. In nature, the number of cores and deltas in a single fingerprint is regulated by some strict rules: in particular, cores and deltas are always present in pairs. Fingerprints are usually partitioned into five main classes ( arch, tented arch, left loop, right loop and whorl) according to the number and position of their macro-singularities (figure 1). The ridge-line flow can be effectively described by a structure called directional map, which is a discrete matrix whose elements denote the orientation of the tangent to the ridge lines (figure 2.b). Analogously, the ridge line density can be summarized by using a density map (figure 2.c). At a finer analysis, other very important features can be discovered in fingerprint patterns. These micro- singularities, called minutiae or Galton characteristics, are essentially determined by the termination or the bifurcation of the ridge lines (figure 3).

Upload: others

Post on 16-Oct-2019

30 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

SFinGe: an Approach to Synthetic Fingerprint Generation

Raffaele Cappelli DEIS - University of Bologna - Italy

[email protected]

Abstract This paper describes SFinGe, a method for generating

synthetic fingerprints on the basis of some mathematical models that describe the main features of real fingerprints. The synthetic images are randomly generated according to few given parameters. SFinGe captures the variability which characterizes the acquisition of fingerprints through on-line sensors and uses a sequence of steps to derive a series of “impressions” of the same “artificial finger”. The approach is able to generate very realistic fingerprints, which can be useful for performance evaluation, training and testing of fingerprint-based systems.

1. Introduction

With the increasingly adoption of fingerprint

recognition systems, driven by the largely-accepted uniqueness of fingerprints and the availability of low-cost acquisition devices [8], methodical and accurate performance evaluations of fingerprint recognition algorithms are needed. Unfortunately, this requires large databases of fingerprints, due to the very small error rates that have to be estimated. For instance, according to [10], in order to support a claim of FMR less than 1/10,000 (the requirement for verification applications in [1]), 30,000 impostor matches from at least 250 individuals should be performed without observing any false match error. On the other hand, collecting large databases of fingerprint images is: 1) expensive both in terms of money and time, 2) boring for both the people involved and for the volunteers, 3) problematic due to the privacy legislation that protects such personal data. FVC competitions [5] [6] [7] [9] are examples of technology evaluations, where real fingerprint databases have been collected to test different algorithms, but do not constitute lasting solutions since in a short time these benchmarks will expire and new databases should be collected.

In this paper an approach to the generation of synthetic fingerprint images is presented: SFinGe (acronym for Synthetic Fingerprint Generator). SFinGe can be used to create, at zero cost, large databases of fingerprints, thus allowing recognition algorithms to be simply tested and optimized. The artificial-fingerprints

generated emulate fingerprints acquired with on-line sensors, since this kind of acquisition allows practical on-line recognition systems to be developed. On the other hand, with a few changes, the generation of impressions produced by the classic “ink-technique” is also possible.

Section 2 of this paper briefly summarizes the anatomy of fingerprint images and the features that usually are extracted by fingerprint matching and classification algorithms. In section 3, the basic steps involved in the generation of synthetic fingerprint images are described: SFinGe is based on several mathematical models, which are not reported here; the reader should refer to [8] [2] [3] for a thorough treatment of the mathematical aspects. Section 4 provides some practical examples to explain how the generator may be used for training and testing fingerprint recognition, classification and retrieval algorithms. Finally, section 5 draws some conclusions.

2. Fingerprint features

This section summarizes the main features of real

fingerprint images and introduces the basic terminology that will be used throughout the rest of the paper.

A fingerprint is the representation of the epidermis of a finger. At a macroscopic analysis, a fingerprint is composed of a set of ridge lines, which often flow parallel and sometimes produce local macro-singularities called core and delta, respectively. In nature, the number of cores and deltas in a single fingerprint is regulated by some strict rules: in particular, cores and deltas are always present in pairs. Fingerprints are usually partitioned into five main classes (arch, tented arch, left loop, right loop and whorl) according to the number and position of their macro-singularities (figure 1).

The ridge-line flow can be effectively described by a structure called directional map, which is a discrete matrix whose elements denote the orientation of the tangent to the ridge lines (figure 2.b). Analogously, the ridge line density can be summarized by using a density map (figure 2.c).

At a finer analysis, other very important features can be discovered in fingerprint patterns. These micro-singularities, called minutiae or Galton characteristics, are essentially determined by the termination or the bifurcation of the ridge lines (figure 3).

Page 2: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

Figure 1. The five main fingerprint classes: white circles denote core singularities, white triangles denote delta singularities.

3. The SFinGe approach

The basic idea behind SFinGe is simple (figure 4): a

fingerprint shape, a directional map and a density map are generated separately; then these three features are combined to obtain a fingerprint pattern, which is finally made more realistic by adding noise. In order to generate more impressions of the same finger, a master-fingerprint (i.e. a ridge pattern which represents the unique and immutable characteristics of a “synthetic finger”), is first generated; then several synthetic fingerprints are randomly derived, starting from the same master-fingerprint. Subsection 3.1 briefly describes how a master-fingerprint is generated; the main steps involved in the generation of a fingerprint image from a master-fingerprint are reported in subsection 3.2.

Figure 2. Figure 2.b shows the directional image of fingerprint 2.a; figure 2.c shows the density map (the black blocks represent the lowest density regions).

Figure 3. A portion of a fingerprint whose minutiae are highlighted.

3.1 Generation of a master-fingerprint Generating a master-fingerprint involves the following

steps (see figure 5): 1) fingerprint shape generation; 2) directional map generation; 3) density map generation; 4) ridge pattern generation.

Step 1 defines the global shape of the fingerprint, according to a simple model based on elliptical segments (figure 6); step 2, starting from the fingerprint class and the positions of the singularities (cores and deltas), exploits a mathematical ridge-flow model to generate a consistent directional map (figure 7). Step 3 creates a density map on the basis of some heuristic criteria inferred by the visual inspection of several real fingerprints (figure 8). In step 4, the ridge-line pattern and the minutiae are created through a space-variant linear filtering; the filters orientation and frequency are locally adjusted according to the directional map and the density map, respectively (figure 9). The iterative application of the filters to an initially white image, enriched with few random spikes, determines the generation of the ridge-line pattern, where minutiae appear at random positions (figures 10 and 11).

Left Loop Right Loop

Whorl

Arch Tented Arch

Bifurcation

Termination

Ridge line

c b a

Page 3: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

Figure 4. The basic idea of the SFinGe approach.

Figure 5. A functional schema of the fingerprint generation method: each rounded-box represents a step (based on a corresponding mathematical model); the main parameters are reported between square brackets. Steps 1-4 create a master-fingerprint, steps 5-10 generates the final synthetic image.

Fing

erpr

int s

hape

Dire

ctio

nal m

ap

Den

sity

map

Ridge pattern

Synthetic fingerprint image

Level

1) Fingerprint shape model

2) Directional map model

3) Density map model

4) Ridge pattern generator

6) Erosion Dilation

Fingerprint shape

Master-fingerprint

Directional map

Density map

9) Skin deformation model

8) Noising & rendering

7) Translation Rotation

5) Contact region

10) Background generator

Fingerprint image

Shape parameters

Class and singularities

Average density

Initial seeds

Position

Deformation parameters

Noise probability

dx,dy,θ Background type and noise level

Singularities

Page 4: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

Figure 6. The fingerprint shape model (on the left) and some examples of fingerprint shapes.

Figure 7. An example of Arch, Tented Arch, Left Loop, Right Loop and two examples of Whorl directional maps, as generated by the mathematical model.

Figure 8. Examples of density maps generated.

Figure 9. A representation of the filter used in step 4 to create the ridge-line pattern.

Figure 10. An example of fingerprint-pattern generation process, starting from a single central spike.

Figure 11. An example of fingerprint-pattern generation process, starting from some randomly-located spikes.

3.2 Fingerprint-impression generation

Several factors contribute to make substantially

different the impressions of a given finger as captured by an on-line acquisition sensor:

• displacement and rotation; • different touching area; • non-linear distortion produced by non-orthogonal

pressure of the finger against the sensor; • variations in the ridge-line thickness given by

pressure intensity or by skin condition (wet or dry); • small cuts or abrasions on the fingertip; • background noise and other random noise.

For each fingerprint impression to be generated, SFinGe sequentially performs the following steps, starting from the master-fingerprint (see figure 5): 5) selection of the contact region; 6) erosion/dilation (variation of the ridge average-

thickness);

b1

b2 a2

a1 c

Page 5: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

7) fingerprint distortion; 8) noising and rendering; 9) global translation/rotation; 10) generation of a realistic background.

Step 5 randomly translates the ridge pattern without modifying the global fingerprint shape and position, with the aim of simulating different placements of the finger over the acquisition sensor.

Step 6 applies morphological operators to the master-fingerprint, to model different degrees of skin dampness (figure 12): the erosion operator is applied to simulate dry skin, while the dilation operator is adopted to simulate wet skin (figures 13).

One of the main aspects that distinguish different impressions of the same finger, is the presence of non-linear distortions, mainly due to skin deformations according to different finger placements over the acquisition sensor (figure 14). Step 7 adopts a skin distortion model [8] to randomly generate realistic impressions; in figure 15, two distorted images generated from the same master-fingerprint are reported.

The quality of an acquired fingerprint is always deteriorated by some factors, thus producing a gray-scale noisy image: irregularity of the ridges and their different contact with the sensor surface, presence of small pores within the ridges, presence of very-small-prominence ridges, gaps and cluttering noise due to non-uniform pressure of the finger against the sensor. Step 8 sequentially performs the following sub-steps:

a) isolate the valley white pixels into a separate layer; b) add noise in the form of small white blobs of

variable size and shape; c) smooth the image over a 3×3 window; d) superimpose the valley layer to the image

obtained. Steps a and d are necessary to avoid an excessive

overall image smoothing. Figure 16 shows the intermediate images produced after sub-steps b and d, respectively.

Figure 12. Three fingerprints of the same real finger, as captured when the finger is dry, normal and wet.

Figure 13. Application of different levels of erosion/dilation to the same master-fingerprint.

Figure 14. Two impressions of the same real finger: non-linear distortions are clearly evident.

Figure 15. Two distorted images of the same master-fingerprint (central image): some corresponding minutiae are connected to highlight the non-linear distortions.

Step 9 randomly rotates and translates the image (to

simulate real fingerprints that usually are not perfectly centered and can present a certain amount of rotation).

Finally, step 10 exploits a mathematical model based on the KL transform to generate a realistic background, which is placed behind the fingerprint image; figure 17 shows different impressions for two master-fingerprints belonging to different classes.

Dilation Erosion

Original image

Dry finger Wet finger Normal finger

Page 6: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

Figure 16. A synthetic fingerprint image after sub-step b (left) and sub-step d (right).

Figure 17. Each row shows four different impressions of the same master-fingerprint.

4. Applications SFinGe can be used to create, at zero cost, large

databases of fingerprints, thus allowing recognition algorithms to be simply tested and optimized. Moreover, the use of synthetic fingerprints is not only limited to performance evaluation: • many classifiers and pattern recognition techniques

(e.g. neural networks) require a large training-set for an accurate learning stage. Synthetic fingerprint images are very well suited to this purpose: in fact the generator input parameters allow to explicitly control the type and features of the generated databases (e.g. class, type of noise, distortion, ...) and this can be exploited in conjunction with “boosting” techniques to drive the learning process; in [4], for instance, a

database of synthetic images is successfully used to train a fingerprint indexing system;

• the synthetic fingerprints can be used to test the robustness of fingerprint verification systems against “Trojan horse” attacks against the sensor or the feature extractor [8]. SFinGe allows to generate large sets of fingerprints whose features (e.g. minutiae distribution) can be varied independently of other fingerprint characteristics (e.g. orientation image), and therefore, it is well suited to study the robustness against “hill-climbing” type of Trojan horse attacks.

Figure 18 shows the user interface of a software tool that implements the generation approach. The number of input parameters is relatively small, but a huge number of different fingerprint databases can be generated. In the following, it is shown how SFinGe may generate databases well suited to satisfy some specific requirements.

Figure 18. The user interface of the software tools that implements SFinGe.

Example 1: a new fingerprint verification algorithm has

to be tested to measure its robustness against fingerprint rotation. SFinGe can be used to generate some databases with an increasingly amount of rotation among different samples of the same fingers (figure 19).

Example 2: several algorithms have to be compared to evaluate which is the least affected by skin distortion and noise. SFinGe is able to automatically generate databases of highly distorted and/or noisy fingerprints (figure 20).

Example 3: in order to improve the performances of a fingerprint classification approach, a large set of high-quality fingerprints belonging to the left loop class is needed. SFinGe can be tuned to generate a database of high-quality fingerprints belonging to a single class (figure 21).

Page 7: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

Figure 19. Examples of rotated fingerprints.

Figure 20. Examples of noisy and distorted fingerprints.

Figure 21. Examples of high-quality left loop fingerprints.

5. Conclusions Synthetic fingerprint generation is an effective

technique to overcome the problem of collecting large fingerprint databases for training and testing purposes. Obviously real fingerprint databases cannot be completely substituted, especially when performance has to be measured referring to a given real environment; on the other hand, synthetic fingerprints proved to be well suited for technology evaluations like FVC2000 [5], FVC2002 [6] and FVC2004 [7]. Although images generated by SFinGe appear very realistic, the approach has a few limitations: • in SFinGe the ridge thickness is constant throughout

the fingerprint image, while in nature this feature may vary across the same fingerprint;

• SFinGe distributes the noise uniformly over the entire fingerprint area (except for the borders where it gradually increases); in real fingerprints the noise can be clustered in certain regions and in the same fingerprint both high quality and poor quality regions can be found [8];

• intra-ridge noise, which in nature is partially produced by finger pores, is randomly generated by SFinge. Whilst this is not a problem when generating fingerprints from different fingers, this is not very realistic for impressions of the same finger, where a certain correlation should be kept into account.

6. References

[1] Biometric Information Management and Security,

American National Standards Institute, X9.84-2001. [2] R. Cappelli, A. Erol, D. Maio and D. Maltoni, “Synthetic

Fingerprint-image Generation”, in proceedings 15th International Conference on Pattern Recognition, Barcelona, vol.3, pp.475-478, September 2000.

[3] R. Cappelli, D. Maio and D. Maltoni, “Synthetic Fingerprint-Database Generation”, in proceedings 16th International Conference on Pattern Recognition, Québec City, vol.3, pp.744-747, August 2002.

[4] R. Cappelli, D. Maio and D. Maltoni, “Indexing Fingerprint Databases for Efficient 1:N Matching”, in proceedings Sixth International Conference on Control, Automation, Robotics and Vision, Singapore, 2000.

[5] FVC2000, http://bias.csr.unibo.it/fvc2000. [6] FVC2002, http://bias.csr.unibo.it/fvc2002. [7] FVC2004, http://bias.csr.unibo.it/fvc2004. [8] D. Maltoni, D. Maio, A.K. Jain and S. Prabhakar,

Handbook of Fingerprint Recognition, Springer (New York), 2003.

[9] D. Maio, D. Maltoni, R. Cappelli, J.L. Wayman and A.K. Jain, “FVC2000: Fingerprint Verification Competition”,

Page 8: SFinGe: an Approach to Synthetic Fingerprint Generation · SFinGe: an Approach to Synthetic Fingerprint Generation Raffaele Cappelli DEIS - University of Bologna - Italy cappelli@csr.unibo.it

IEEE Transactions on Pattern Analysis Machine Intelligence, vol.24, no.3, pp.402-412, March 2002.

[10] UK Biometrics Working Group, “Biometric Evaluation Methodology”, 2002.

7. Author’s short bio Raffaele Cappelli is a research associate at the

University of Bologna, Italy. His research interests include Biometric Systems, Pattern Recognition and Image Retrieval by Similarity. He his coauthor of conference and journal papers and two book chapters. Dr. Cappelli is a

member of the Biometric Systems Laboratory (University of Bologna) and is one of the organizers of the International Fingerprint Verification Competitions (FVC2000, FVC2002 and FVC2004). Currently, he works on fingerprint and face recognition algorithms and on a novel approach for the generation of synthetic fingerprint images.

Dr. Cappelli received his Computer Science Laurea degree cum laude in 1998 and his Ph.D. in 2002 at DEIS-University of Bologna.