Professional Documents
Culture Documents
Abstract
Classification
orientation field is highly structured and can be roughly age, where represents the local ridge orientation
approximated by a core-delta model [8]. Therefore, sin- at pixel . Local ridge orientation is usually spec-
gular points (see Figure 2) and their relationship can be ified for a region (block) rather than at every pixel; an
used to drive fingerprint categories. On the other hand, image is divided into a set of non-overlapping
global ridge shape also provides important clues about blocks and a single local ridge orientation is defined for
the global pattern configuration of a fingerprint image. each block. Note that in a fingerprint image, the ridges
Previous approaches to fingerprint classification can oriented at and the ridges oriented at in a local
be roughly divided into two categories: statistical ap- neighborhood can not be differentiated from each other.
proach [2, 1] and structural approach [3, 5, 6]. A A ridge map, , is an binary image, where
statistical approach classifies a fingerprint using feature indicates that pixel is a ridge pixel and
vectors derived directly from the orientation field or the indicates that pixel is not a ridge pixel.
input images. A structural approach extracts and repre- A ridge in a ridge map is an 8-connected component. A
(a) (b) (a) (b)
Figure 4. Orientation image; (a) input im- Figure 5. Ridge map; (a) extracted ridges
age; (b) orientation image superimposed from the input image in Figure 4; (b)
on the input image. thinned ridge map.
A Recurring ridge is defined as a chain of pixels, (x(i+1) ε ,y(i+1)ε )
, in a thinned ridge map, where
is the first
ridge pixel, is the last ridge pixel, and each pair of
(xiε,yi ε)
consecutive pixels,
is eight connected, which (u,v)
’ ’
cumulatively turns more than a certain degree when trav-
eling from to , where .
(u,v)
applied to extract the ridge map and the thinned ridge
map (Figure 5). and a quality index whichindicates
the
goodness of the
input ridge map. Let , , and be the input ridge
2.3. Ridge Verification map, the interpolated orientation field, and the verified
ridge map, respectively. The major steps in our ridge
In an ideal fingerprint image, ridges and furrows
are well-defined in each local neighborhood. The lo-
1. Initialize ,
verification algorithm are as follows:
, and which is a map used to
cal ridge orientation can be reliably estimated from the indicate the genuine regions.
sinusoidal-shaped plane waves of ridges and furrows. 2. Delete all ridge pixels in which have more than
two 8-connected neighboring pixels to ensure that
each ridge is a single 8-connected chain.
3. Trace and label all the ridges in . For each
,
traced ridge,
do the following: Smooth ; Let
and denote the starting point and
ending point of a segment in , where is the
length of the segment and .
, , and form a quadri-
,
#
lateral at one side of
, " !
the
segment.
, and
form a
quadrilateral at the other side of the segment;
For each quadrilateral, find the minimum rectangle
$
that contains the quadrilateral. Compute the ra-
$
tio, , between the area of the quadrilateral and the
$% '&(
area of the minimum rectangle. If is larger than
a threshold ( ), then label all the pixels
inside the quadrilateral as foreground pixels. Oth- (c) (d)
erwise, label them as background pixels.
Figure 7. Ridge verification; (a) input im-
)*% + (
4. Remove all the foreground connected components age; (b) orientation field; (c) verified ridge
whose area is less than a threshold ( ) and map, where the verified ridges are marked
, % +(
fill all the background connected components in with gray shade; (d) interpolated orienta-
whose area is less than a threshold ( ). tion field.
5. Compute local orientation at all the pixels in ,
where the corresponding pixels in are foreground
pixels, as the orientation of the nearest ridge seg-
where
L KMON I P N JI QP AR-/
H I ATS N JI
ment. Interpolate
the local orientation at all pix-
\0 J2 3 2 6
background pixels.
N I [2 3 ;._2 6
6. Return the percentage of the area of the foreground
S ^] 8
regions in with respect to total area of as the
quality index.
The size of the closed digital curve is crucial for the
An example of ridge verification is depicted in Figure 7,
performance of a singular point detection algorithm us-
which demonstrates that a better orientation field can be
ing the Poincare index. If it is too small, then a small
obtained by using our ridge verification algorithm.
perturbation of orientations may result in spurious sin-
gular points being detected. On the other hand, if it is too
2.4. Singular Point Detection large, then a true pair of core and delta which are close to
one another may be ignored because the Poincare index
.-/
In an orientation field, the Poincare index of a core- of a digital curve that includes an equal number of cores
shaped singular point has a value of and the and deltas is 0. We have developed a singular point de-
98
a length of 25 pixels. We have empirically determined
value of [8]. Let and represent the x
and y coordinates of a closed digital curve with pix- that a curve of 25 pixels is a good trade-off between
de-
els. The Poincare index at pixel which is enclosed tections and misses of singular points. Let be the
by the digital curve can be computed as follows: interpolated orientation field. The main steps in our sin-
:<; # =?> .@
E BDC H JI
gular point detection algorithm are as follows:
/ A F G %
1. Initialize , which is a label image used to indicate
the singular points.
ments, @X=
circular segments, multi-recurring segments, spiral seg-
The presence of a particular type of ridges
defines the class of a fingerprint. If the ridge type can be
Core
Core accurately determined, then the fingerprint can be cor-
rectly classified.
Core We classify ridges into three categories: non-
Delta Delta recurring ridge, type-1 recurring ridge, and
Delta
type-2 recurring ridge. Let
be a
ridge of length , where is the first ridge pixel, is
the last ridge pixel, and each pair of consecutive pixels
]
Figure 8. Singular point detection. is eight connected. Then
, where
2. For each pixel in , compute the Poincare
, is obtained by sampling at intervals of
length . Define the cumulative orientation of as:
E
index and assign the corresponding pixel in a
value 1 if the Poincare index is (1/2) and a value 2
P .A FG JI QP
if the Poincare index is (-1/2).
L KM I if P I P A
I .A S JI ;1XY @JI 0VA
3. Find each connected component in with pixel
if
.A 0 JI Z @
values 1. If the area of the connected component
I I *0 I 0
is larger than 7, a core is detected at the centroid
of the connected component. If the area of the con-
1(
values 2. If the area of the connected component
orientation of any sub-ridge of is less than a threshold,
. A type-1 recurring ridge, , is a ridge
is larger than 7, a delta is detected at the centroid
&
such that the cumulative orientation of any sub-ridge of
of the connected component.
is between the two thresholds, and .
5. If more than two cores or more than two deltas are A type-2 recurring ridge, , is a ridge such that the cu-
detected, smooth the orientation field
back to step 1.
and go
or a ridge such that there exist mul-
mulative orientation of any sub-ridge of is larger than
a threshold,
tiple disjoint sub-ridges of , which are type-1 recur-
Although the heuristic that at most two cores and two ring ridges. Obviously, uni-modal ridge segments and
deltas exist in a fingerprint is not always true, it is rarely flat ridge segments are non-recurring ridges. Circular
observed that a fingerprint has more than two cores and ridge segments, multi-recurring ridge segments and spi-
two deltas. Results of applying our singular point de- ral ridge segments are type-2 recurring ridges.
tection algorithm on two fingerprint images are shown It is very difficult to correctly extract all the true
Figure 8. ridges from an input fingerprint image, especially when
the quality of the input fingerprint image is poor. It is
2.5. Recurring Ridges essential that a ridge classification algorithm be able to
handle the following undesirable situations: spuri-
The global shape of ridges determines the global con- ous ridges, broken ridges, and missing ridges.
figuration of fingerprints. Ridges in fingerprints are Ridge verification (see Figure 7) can be used to remove
highly structured. Generally, in the upper region (which all the spurious ridges from a ridge map. Broken ridges
can be roughly defined as the region above the highest can be connected based on the information present near
core points in loops, tented arches, and whorls and the the end of broken ridges. However, it is very difficult to
region above the most curved ridges in arches) of a fin- recover missing ridges. This needs both high-level struc-
gerprint, ridges are a family of uni-modal smooth curve tural analysis and local structural analysis of the ridge
segments. In the bottom region, ridges form a family of pattern, which is very difficult to formulate and imple-
relatively flat curves. In the middle region, depending ment. We have developed a ridge classification algo-
on the fingerprint class, ridges may be of the follow- rithm which traces each ridge in the verified ridge map
ing types: uni-modal curve segment, recurring segment, and classifies each ridge into one of the three categories
(a) (b) (c) arch tented arch left loop
Figure 9. Ridge classification; ridges clas-
sified as (a) non-recurring, (b) type-1 re-
curring, and (c) type-2 recurring.
and 10. Let
A prototype of each class is shown in Figure in its local neighborhood.
be the interpolated orientation field;
be the
2. Compute the angle, , between the line segment
number of cores and deltas detected from , respec- from the core to the delta and the symmetric axis.
tively; and be the number of type-1 recurring
ridges and type-2 recurring ridges in . The classifica- 3. Compute the average angle difference, , between
the local ridge orientation on the line segment from
tion criteria used in our algorithm is as follows:
the core to the delta and the orientation of the line
1. If and and , then a
segment.
whorl is identified.
2. If 4. Count the number of ridges, , that cross the line
and and and
+(
segment from the core to the delta.
, then an arch is identified.
3. If 5. If or and , then
and and and
classify the input as a tented arch.
, then classify the input using the core
6. If the delta is on the right side of the axis, then clas-
and , then a whorl is identi-
and delta assessment algorithm given below.
4. If sify the input as a left loop.
7. If the delta is on the left side of the axis, then clas-
and
fied.
5. If and then
sify the input as a right loop.
classify the input using the core and delta assess-
, then a whorl is identified.
ment algorithm.
4. Experimental Results
6. If
7. If and , then classify the input
We have tested our fingerprint classification algo-
using the core and delta assessment algorithm.
rithms on a number of databases. Here, we present the
8. If and , then classify the input
performance of our classification algorithm on the NIST-
using the core and delta assessment algorithm.
( 1
4 database which contains 4,000 images (image size is
9. If and , then an arch is identi-
) taken from 2,000 different fingers, 2 images
fied.
[
per finger. Five fingerprint classes are defined: Arch,
10. If none of the above conditions is satisfied, then re-
Tented arch, Left Loop, Right Loop, and
ject the fingerprint. Whorl. Fingerprints in this database are uniformly
The core and delta assessment algorithm is used to clas- distributed among these five classes. The five-class error
sify a one-core and one-delta fingerprint into one of the rate in classifying these 4,000 fingerprints is 12.5%. The
following categories: left loop, right loop, and confusion matrix is given in Table 1; numbers shown in
tented arch. The steps of this algorithm are:
bold font are correct classifications. Since a number of
Assigned Class
True Class
A T L R W
A 885 13 10 11 0
T 179 384 54 14 5
L 31 27 755 3 20
R 30 47 3 717 16
W 6 1 15 15 759
fingerprints in NIST-4 database are labeled as belong- Reject rate 0% 5% 10% 20%
ing to two different classes, each row of the confusion 5-class Error 12.5% 11.6% 10.1% 7.5%
matrix in Table 1 does not sum up to 800. For the five- 4-class Error 7.7% 6.6% 5.1% 2.4%
class problem, most of the classification errors are due to
misclassifying a tented arch as an arch. By combining Table 2. Error-reject tradeoff.
these two arch categories into a single class, the error
rate drops to 7.7%. Besides the tented arch-arch errors,
the other errors mainly come from misclassifications be- Acknowledgments
tween arch/tented arch and loops and due to poor image
quality. Two examples of misclassified fingerprints are This research was supported by an IBM university
shown in Figure 11. A lower error rate can be achieved partnership program.
by adding the reject option, which is based on the quality
index of the input image. The error rates corresponding References
to different reject rates are listed in Table 2.
[1] P. Baldi and Y. Chauvin. Neural networks for fingerprint
5. Summary and Conclusions recognition. Neural Computation, 5(3):402–418, 1993.
[2] G. T. Candela, P. J. Grother, C. I. Watson, R. A. Wilkin-
son, and C. L. Wilson. PCASYS: A Pattern-Level Classi-
Fingerprint classification provides an important in- fication Automation System for Fingerprints. NIST Tech.
dexing mechanism for automatic fingerprint identifica- Report NISTIR 5647, August 1995.
tion. At a first glance, the fingerprint classification prob- [3] M. Chong, T. Ngee, L. Jun, and R. Gay. Geometric frame-
lem appears to be rather simple. But because of large in- work for fingerprint image classification. Pattern Recog-
traclass and small interclass variations in global pattern nition, 30(9):1475–1488, 1997.
configuration and poor quality of input images, the de- [4] A. Jain, L. Hong, and R. Bolle. On-line fingerprint veri-
sired accuracy of 1% error rate at 20% reject rate is very fication. IEEE Trans. Pattern Anal. and Machine Intell.,
19(4):302–314, 1997.
difficult to achieve. We have designed a fingerprint clas-
[5] K. Karu and A. K. Jain. Fingerprint classification. Pattern
sification algorithm which classifies input fingerprints Recognition, 29(3):389–404, 1996.
into five categories according to the number of singu- [6] M. Kawagoe and A. Tojo. Fingerprint pattern classifica-
lar points detected, their relative position, and presence tion. Pattern Recognition, 17(3):295–303, 1984.
of type-1 and type-2 recurring ridges. Our algorithm in- [7] H. C. Lee and R. E. Gaensslen. Advances in Fingerprint
vests a significant amount of effort in feature extraction Technology. Elsevier, New York, 1991.
to make robust to interclass variations as well as poor [8] D. Monro and B. Sherlock. A model for interpreting fin-
quality of input images. Experiment results demonstrate gerprint topology. Pattern Recognition, 26(7):1047–1055,
that our algorithm has better classification performance 1993.
[9] E. Newham. The Biometric Report. SJB Services, New
than previously reported in the literature on the same
York, 1995.
database. Currently, we are studying an alternative clas-
sification scheme which classifies fingerprints according
to the pattern similarity. We are also investigating an im-
age enhancement algorithm based on a bank of Gabor
filters.