Fingerprint Matching Using A Hybrid Shape and Orientation Descriptor (Addendum)
Fingerprint Matching Using A Hybrid Shape and Orientation Descriptor (Addendum)
180
360
180
360
).
Although binarization in conjunction with morphological thinning provides a simple
framework for minutiae extraction, there are a couple of problematic characteristics. Spurious
minutiae (false minutiae) due to thinning algorithms (such as spurs) or irregular ridge
endings. Additionally, performance is also an issue since binarization and specically
morphological thinning algorithms are known to be computationally expensive (see Figure
3).
Direct gray-scale minutiae extraction attempts to overcome the problems introduced by image
binarization and thinning. One key gray-scale based method that the algorithm in Maio &
Maltoni (1997) employs is ridge path following, where an initial point (x
1
, y
1
) has a k pixel
length path projected toward an initial direction,
1
, and likewise, subsequent iterations have
the base point (x
t
n
, y
t
n
) project the next ridge sample point (x
n+1
, y
n+1
) in the direction
n
.
Analysis of the section set S
n
, being a 1 dimensional cross section slice centred about (x
t
n
, y
t
n
)
and orthogonal to
n
with length 2 + 1 where is the average thickness of a ridge, is used
to retrieve
n
, and ultimately, (x
n+1
, y
n+1
). The path following algorithm terminates when a
local maxima cannot be found at the current points section set, giving clear indication that a
ridge ending or bifurcation is reached.
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 29
In Farina et al. (1999), these structures and others were removed from the skeleton image.
Minutiae were also categorised or ranked according to the degree of their meeting dened
topological rules. A similar approach was used in Zhao & Tang (2007), where dot
(isolated pixel) ltering, small holes lling (i.e. possibly from dominant pores) were used,
in combination with other heuristics. The accuracy of a ngerprint matching algorithm was
reported to be decreased by approximately 13.5%when minutiae ltering heuristics were used
in comparison to no ltering.
2.2 Minutiae representation
Minutiae-based matching algorithms are largely dependent on extracted minutiae
information. Robust minutiae-based matching algorithms have to deal with occurrences of
missing and spurious minutiae, where missing minutiae can occur as a result of inaccurate
feature detection, feature post-processing, or image noise obscuring minutiae detail, and
spurious minutiae can be introduced by dry skin, creases, feature detection algorithms,
and other potential noise causing agents. The general processes of a ngerprint matching
algorithm is presented in Figure 4.
Feature extraction
Registration
Minutiae pairs similarity
score
Feature set A
A={ x(a), y(a), (a)}
Feature set B
B={x(b), y(b), (b)}
Image enhancement
M={x(a), y(a), x(b), y(b), (a), (b)}
Fingerprint images
Fig. 4. General processes for minutiae-based ngerprint matching.
In minutiae-based matching, minutiae are commonly represented as minutiae structures
called minutia triplets, where a minutia, m
i
, is described as m
i
= x, y, with x,y representing
the x-y coordinate of the minutia and the angular direction of the main ridge (see Figure 5
left).
The main focus of minutiae-based matching is to perform a one-to-one mapping or pairing of
minutiae points from a test image minutiae set
A = m
A
1
, m
A
2
, . . . , m
A
p
, where m
A
i
= x
A
i
, y
A
i
,
A
i
and 1 i p (3)
30 State of the Art in Biometrics
to a template image minutiae set
B = m
B
1
, m
B
2
, . . . , m
B
q
, where m
B
j
= x
B
j
, y
B
j
,
B
j
and 1 j q, (4)
forming the minutiae pairs (m
A
k
, m
B
(k)
) with (k) as the mapping permutation of pairs from
set A to B.
Unfortunately, we cannot proceed to nd minutiae pairs from triplets without some
pre-processing for the following critical reasons:
ngerprint impressions can differ in orientation, deeming the direction eld in the triplet
useless,
ngerprint impressions can differ in offset, deeming the x-y elds in the triplet useless,
and
skin elasticity creates non-linear distortion or warping to occur when different directional
pressure is applied causing triplet x-y variations to occur.
In general, the lack of invariant characteristics of the triplet structure prohibits it to aid the
process of nding minutiae pairs.
2.3 Registration
In order to address the issues concerning the lack of invariance of the triplet structure, global
registration is required. Global registration concerns the alignment and overlay of the template
and test ngerprints so that corresponding regions of the ngerprints have minimal geometric
distance to each other. Registration can be achieved geometrically by applying (to either
the test or template ngerprint minutiae set) a heuristically guided afne transform, where
minutiae triplet eld values are updated with
_
x
new
y
new
_
=
_
cos(
) sin(
)
sin(
) cos(
)
_ _
x
y
_
+
_
x
_
, (5)
and
new
=
, (6)
where
, y
, (7)
or to account for scale difference (i.e. if we are comparing images collected from different
resolution scanners)
dist
r
(m
A
i
, m
B
j
) =
_
(x
A
i
k
x
.x
B
j
)
2
+ (y
A
i
k
y
.y
B
j
)
2
< r
, (8)
and minutiae angle difference,
dist
(m
A
i
, m
B
j
) = min([
A
i
B
j
[, 360
[
A
i
B
j
[) < r
. (9)
The geometric tolerance r
is
the tolerance for angular differences that may arise due to orientation estimations from the
ridge orientation images. Following global registration, a local search can now be performed,
in order to match minutiae in the -neighbourhood that meet the constraints in equations 7-9
(see Figure 5 right).
Once genuine minutiae pairs are produced, a metric of similarity, usually called the similarity
score, can then be calculated. The similarity score must accurately describe how similar two
ngerprints are, taking into account all of the relevant information obtained from earlier
stages, such as number of genuine minutiae pairs and how similar each pair is. One similarity
score given in Liang & Asano (2006) is dened as
sim(A, B) =
n
2
match
n
A
n
B
(10)
where n
match
is the number of matching minutiae pairs, and n
A
, n
B
are the number of minutiae
in the overlapped regions of the template and test ngerprints following registration.
[x,y]
m
a1
a2
b1
b6
a6
b2
b3
b4
a5
a3
b5
a4
Fig. 5. left: minutia triplet structure representation. right: Minutiae points from 2 different
ngerprints being mapped after registration, with gray circles representing pairs with
constraints upheld (equations 7-9).
32 State of the Art in Biometrics
In order to effectively match ngerprints, we require that the registration used not only be
computationally sound, but also perform accurate alignment. In order to achieve this, some
methods use additional features (sometimes in combination with minutiae detail) for global
alignment, such as cores and deltas, local or global orientation eld / texture analysis, and
ridge feature analysis.
Using core points for registration is known to dramatically improve the performance of a
matching algorithm. In Chikkerur & Ratha (2005), a graph theory based minutiae matching
algorithm reported a 43% improvement in efciency when including the core point for
registration, without adverse effect toward matching accuracy. In Zhang & Wang (2002) core
points were used as key landmarks for registration. This method proved to be extremely
efcient in comparison to other key registration methods. Structural features of minutiae
close to the core are used to calculate the rotation needed. The core point was also used
in Tian et al. (2007) for registration with the orientation that produced the minutiae pair
with the minimum Hilbert scanning distance. These and similar methods heavily rely on the
core point for alignment. Such a dependence is not strictly robust, since not all ngerprint
impressions contain core points and the inclusion of noises may effect the accuracy of core
detection algorithms, possibly resulting in incorrect alignments.
In Yager & Amin (2005), the global orientation image with points divided into hexadecimal
cells (see Figure 6 right) is used for registration. The steepest descent algorithm was used in
order to nd the afne transform (x
, y
Ridges
Fig. 6. left: The local orientation descriptor used in Tico & Kuosmanen (2003). right:
Hexagonal orientation cells within the orientation image in Yager & Amin (2005) .
Another example which uses the global orientation image for registration can be found in Liu
et al. (2006). For all possible transforms of the test ngerprint onto the template ngerprint
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 33
which has signicant region overlap, the normalised mutual information (NMI) dened as
NMI(X, Y) =
H(X) + H(Y)
H(X, Y)
(12)
is calculated, where
H(X) = E
X
[log P(X)], (13)
H(Y) = E
Y
[log P(Y)], (14)
and
H(X, Y) = E
X
[E
Y
[log P(X, Y)]], (15)
where X and Y are discrete random variables representing the orientation elds, O
x
and
O
y
, of the template and test ngerprints, respectively, which are divided into b blocks. The
probabilities can be calculated as
P
XY
(x, y) =
n(x, y)
n1
i=0
n1
j=0
n(i, j)
, (16)
P
X
(x) =
b1
j=0
P(x, j), (17)
P
Y
(y) =
b1
i=0
P(i, y), (18)
and
n(x, y) =
_
1 if [O
x
(x) O
x
(y)[ ,
0 otherwise
(19)
with as a small threshold, indicating that orientation corresponding image blocks have very
similar orientations. We can now nd the transform which produces the maximum NMI as
the global registration.
Global landmarks and features are not only used for aiding registration. Local structure sets
or descriptors can also be used for registration. For instance, in Tico & Kuosmanen (2003), the
rotation and translation invariant minutia orientation descriptor (see Figure 6 Left) is used to
nd minutiae pair with the maximum probabilistic value
[r, s] = arg max
i,j
P(m
A
i
, m
B
j
) (20)
with
P(m
A
i
, m
B
j
) =
S(m
A
i
, m
B
j
)
2
_
p
k=1
S(m
A
k
, m
B
j
) +
q
l=1
S(m
A
i
, m
B
l
)
_ (21)
and S(m
A
i
, m
B
j
) is the similarity function dened as
S(m
A
i
, m
B
j
) = (1/K)
L
c
K
c
d
exp
_
_
2
_
min([
A
i
c,d
B
j
c,d
[, [
A
i
c,d
B
j
c,d
[)
_
_
_
(22)
where the orientation descriptor has a total of K sample points distributed as L concentric
circles having K
c
points (i.e. possibly differing number per circle) with equidistant angular
34 State of the Art in Biometrics
distribution (i.e.
2
K
c
step size),
A
i
c,d
is minimum angle required to rotate the d
th
sample
orientation on c
th
circle to the orientation of minutia m
A
i
(likewise for
B
j
c,d
), and is an
empirically chosen parameter. After nding the maximum pair index, [r, s], the afne
transform is performed on the set B = m
B
1
, m
B
2
, . . . , m
B
q
, with
=
A
r
B
s
and
[x
]
T
= [x
A
r
x
B
s
y
A
r
y
B
s
]
T
as the transformation parameters. The additional local
texture information contained in the orientation-based descriptor is then used in the similarity
score to give
sim(A, B) =
_
(i,j)C
S(m
A
i
, m
B
j
)
_
2
n
A
n
B
(23)
where S(m
A
i
, m
B
i
) is the function dened in equation 22, C is the set of minutiae pairs, and
A
i
, B
j
are the template/test minutiae list indexes, respectively.
Unlike most algorithms that have global registration preceding local registration or minutiae
pairing, the proposed method in Bazen & Gerez (2003) nds a list of minutiae pairs
prior to performing global registration. Each minutia in the template and test ngerprints
have an extended triplet structure dened as a 2-neighbourhood structure in the form of
x, y, , r
1
,
1
, r
2
,
2
, where r
1
and
1
are the polar co-ordinates of the closest minutia, and
likewise for the second closest minutia, r
2
and
2
. The list is then built by nding pairs
from after aligning each minutiae structure and then comparing the similarity. This initial
minutiae list may contain false pairs. Using the largest group of pairs that use approximately
the same transformparameters for alignment, a least squares approach is then used to nd the
optimal registration. To aid highly distorted ngerprints the non-afne transformation model
based on the Thin Plate Spline (T.P.S) (dened in section 3.1.1) is applied to model distortion,
with minutiae pair correspondences as anchor points. Such a model allows the minutiae pair
restrictions of equations 7-9 to be more rigorously set, helping reduce an algorithms FAR
(False Acceptance Rate).
There exist algorithms that bypass global registration all together. In Chikkerur &
Govindaraju (2006), a proposed local neighbourhood minutia structure called K-plet uses a
graph theory based consolidation process in combination with dynamic programming for
local matching (i.e. minutiae pairing). Another example of a matching algorithm that does
not require registration can be found in Kisel et al. (2008), which opts to use translation
invariant minutia structures with neighbourhood information for nding genuine minutiae
correspondences.
For the majority of algorithms that use global registration, local minutiae matching is then
performed. In order to aid local matching, structures based on triplets and other shape
descriptors, which are shape descriptive data sets employed for the geometric analysis of
shapes (that may have been previously utilised in the registration process), can be used to
measure minutiae similarity. For instance, a greedy algorithm is used in Tico & Kuosmanen
(2003), where subsequent pairs are selected in order of descending probability values (i.e.
equation 21) in conjunction with equations 7-9. A similar methodology can be found in Qi
et al. (2004), where a greedy algorithmand textural minutia-based descriptor is similarly used.
3. Hybrid shape and orientation descriptor
In this section, a brief theoretical foundation concerning the Thin Plate Spline (T.P.S) and shape
context will initially be established. Following this, a ngerprint matching algorithm using
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 35
the enhanced shape context descriptor introduced in Kwan et al. (2006) is reviewed. Next,
the proposed hybrid descriptor method which uses the enhanced shape context descriptor in
conjunction with the orientation-based descriptor described in Tico & Kuosmanen (2003) will
be introduced. Experimental results will be reported in Section 3.2.3.
3.1 Enhanced shape context
Shape matching algorithms that use contour based descriptors based on point samples (or
point pattern matching algorithms) are analogous to minutiae-based ngerprint matching
algorithms, as they usually combine the use of descriptors with dynamic programming,
greedy, simulated annealing, and energy minimization based algorithms, in order to register
shapes and compute a similarity measure. Hence, like ngerprint matching algorithms,
desirable characteristics of shape matching methods are invariance to rotation and scale, while
achieving robustness toward small amounts of distortion and outlier point samples.
The Shape Context descriptor in Belongie et al. (2000) and Belongie et al. (2002) is a robust
contour based shape descriptor used for calculating shape similarity and the recovering
of point correspondences. Recently, Kwan et al. (2006) proposed a ngerprint matching
based variant of the shape context, the Enhanced Shape Context, utilising additional contextual
information from minutiae sets.
Initially, we are given n and m minutiae from test and template ngerprints, P and Q,
respectively. For each minutia, p
i
P, we are to nd the best matching minutia, q
j
Q.
When the shape context descriptor is constructed for a particular minutia, a coarse histogram
h
p
i
(k) = #
_
p
j
,= p
i
: (p
j
p
i
) bin(k)
_
. (24)
involving the remaining n 1 minutiae of P is built as the shape context of minutia p
i
. Each
bin corresponds to the tally of minutiae in a particular spatial region with distance r
l
d r
h
and direction .
Log-polar space (5 bins for
log r and 12 bins for )
Fig. 7. Log-polar histogram bins used to create shape context histogram for a minutia point.
Bifurcations and ridge endings are denoted by + and o, respectively.
The spatial geometric regions are divided to be uniform in log-polar space, where the
log-polar transformation is dened as the mapping from the Cartesian plane (x,y) to the
log-polar plane (, ) with
36 State of the Art in Biometrics
_
_
=
_
log r
_
=
_
log
_
x
2
+ y
2
arctan
y
x
_
. (25)
The shape context descriptor is then constructed for each minutiae p
i
P, and likewise, each
q
j
Q, providing a localised spatial survey of the minutiae distributions for each ngerprint.
We can now consider the cost of matching two minutiae, which we can later use to nd the
optimal mapping of minutiae. Let C
ij
= C(p
i
, q
j
) denote the cost of matching minutia p
i
P
with q
j
Q.
Since the shape context are distributed as histograms, we can use a modication of the
2
statistic:
C
ij
C(p
i
, q
j
) =
1
2
K
k=1
_
h
p
i
(k) h
q
j
(k)
_
2
h
p
i
(k) + h
q
j
(k)
(26)
where h
p
i
and h
q
j
denote the K-bin histograms of points p
i
and q
j
, respectively. This cost can
be modied to include application specic weighting and additional costs, in order to add
extra relevant information, and hence, improve accuracy.
In order to improve overall accuracy, the enhanced shape context cost value was modied to
include contextual information, such as minutia type (i.e., bifurcation and ridge endings, as
shown in Figure 7) and minutia angle. This produced the modied log-polar histogram cost
as
C
ij
C
(p
i
, q
j
) =
_
1 C
type
ij
C
angle
ij
_
.
_
_
_
1
2
K
k=1
_
h
p
i
(k) h
q
j
(k)
_
2
h
p
i
(k) + h
q
j
(k)
_
_
_
(27)
with 0 1,
C
type
ij
=
_
1 if type(p
i
) = type(q
j
),
0 if type(p
i
) ,= type(q
j
)
(28)
and
C
angle
ij
=
1
2
_
1 +cos((
initialwarped
))
_
(29)
where
initialwarped
is the absolute value of the angle difference in the ridge orientation
tangent at p
i
and q
j
in the beginning and after each iterative warping (see section 3.1.1). If
initialwarped
is greater than , it is adjusted as 2
initialwarped
so it will less than or equal
to .
After computing the cost C
ij
for all possible n m pairs, the mapping permutation
(one-to-one), , that minimises the total matching cost
H() =
i
C(p
i
, q
(i)
) (30)
which can be computed via the Hungarian algorithm as in Jonker & Volgenant (1987). To
conform to a one-to-one mapping, [n m[ dummy points can be added to the smaller
ngerprint minutiae set. Minutiae that are mapped to these dummy points can be considered
to be outliers. For more robust handling, dummy point mappings can be extended to minutiae
that have a minimum cost greater than a desired threshold
d
.
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 37
3.1.1 Registration using the Thin Plate Spline
After nding the minutiae correspondences, the Thin Plate Spline (T.P.S) can be used to
register the point correspondences together, accounting for a rigid global transformation and
local non-linear transformation.
T.P.S is a mathematical model based on algebraically expressing the physical bending energy
of a thin metal plate on point constraints. T.P.S is both a simple and sufcient model for
non-rigid surface registration with notable applications in medical imaging. T.P.S was rst
introduced in Bookstein (1989) for the accurate modelling of surfaces that undergo natural
warping, where no signicant folds or twists occur (i.e., where a diffeomorphism exists).
Two sets of landmark points (i.e. minutiae) from two R
2
surfaces are paired in order
to provide an interpolation map on R
2
R
2
. T.P.S decomposes the interpolation into
a linear component with an afne transformation for a global coarse registration and a
non-linear component with smaller non-afne transformations. In other words, the linear
component or afne transform can be considered as the transformation that expresses the
global geometric dependence of the point sets, whereas the non-afne transform component
identies individual transform components in order to ne tune the interpolation of the point
sets. In addition, the afne transform component allows T.P.S to be invariant under both
rotation and scale.
In the general two dimensional T.P.S case, we have n control points
p
1
= (x
1
, y
1
), p
2
= (x
2
, y
2
), . . . , p
n
= (x
n
, y
n
) (31)
from an input R
2
image and target control points
_
p
/
1
= (x
/
1
, y
/
1
), p
/
2
= (x
/
2
, y
/
2
), . . . , p
/
n
= (x
/
n
, y
/
n
)
_
(32)
from a target R
2
image. To set up the required algebra of the general T.P.S case, we dene the
following matrices
K =
_
_
0 U(r
12
) . . . U(r
1n
)
U(r
21
) 0 . . . U(r
2n
)
. . . . . . . . . . . .
U(r
n1
) U(r
n2
) . . . 0
_
_
, n n; (33)
where U(r) = r
2
log r
2
with r as the Euclidean distance, r
ij
= |p
i
p
j
|,
P =
_
_
1 x
1
y
1
1 x
2
y
2
. . . . . . . . .
1 x
n
y
n
_
_
, 3 n; (34)
V =
_
x
/
1
x
/
2
. . . x
/
n
y
/
1
y
/
2
. . . y
/
n
_
, 2 n; (35)
Y =
_
V 0
23
T
, (n +3) 2; (36)
and
L =
_
K P
P
T
0
33
_
, (n +3) (n +3); (37)
We can now nd the vector W = (w
1
, w
2
, . . . , w
n
) and the coefcients a
1
, a
x
, a
y
, by the
equation
38 State of the Art in Biometrics
L
1
Y = (W[ a
1
a
x
a
y
)
T
(38)
which can then have its elements used to dene the T.P.S interpolation function
f (x, y) =
_
f
x
(x, y), f
y
(x, y)
, (39)
returning the coordinates [x
res
, y
res
] compiled from the rst column of L
1
Y giving
f
x
(x, y) = a
1,x
+ a
x,x
x + a
y,x
y +
n
i=1
w
i,x
U(|p
i
(x, y)|). (40)
where
_
a
1,x
a
x,x
a
y,x
T
is the afne transform component for x, and likewise for the second
column, where
f
y
(x, y) = a
1,y
+ a
x,y
x + a
y,y
y +
n
i=1
w
i,y
U(|p
i
(x, y)|). (41)
with
_
a
1,y
a
x,y
a
y,y
T
as the afne component for y. Each point (or minutia location) can now
be updated as
x
new
= f
x
(x, y) = x
res
(42)
y
new
= f
y
(x, y) = y
res
. (43)
It can be shown that the function f (x, y) is the interpolation that minimises
I
f
WKW
T
= V(L
1
n
KL
1
n
)V
T
, (44)
where I
f
is the bending energy measure
I
f
=
_ _
R
2
_
2
z
x
2
_
2
+2
_
2
z
xy
_
2
+
_
2
z
y
2
_
2
dxdy (45)
and L
n
is the n n sub-matrix of L.
Since ill-posed mappings of control points which violate mapping existence, uniqueness, or
continuity, can readily exist in real world examples, the use of a Regularization term like
Wahba (1990), .I
f
, can be included in order to smooth the performed interpolation. Thus,
the minimization of the error term
H[ f ] =
n
i=1
(v
i
f (x
i
, y
i
))
2
+ .I
f
(46)
is performed, where the matrix K is replaced with K+.I. One should note that = 0 results
in exact interpolation.
Using the regularized T.P.S transformation method, n iterations are applied, where each
iteration has minutiae mappings reassigned and transformation re-estimated using the
previous minutiae set transformed state of the test ngerprint (note: the template remains
static).
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 39
3.1.2 Similarity score
Once the n iterations are performed, the nal pairs have now been established. From this, the
shape similarity distance measure can be calculated as
D
sc
(P, Q) =
1
n
pP
arg min
qQ
C(p, T(q)) +
1
m
qQ
arg min
pP
C(p, T(q)) (47)
where T(.) denotes the T.P.S transformed representative of the contour point q. In addition, an
appearance term, D
ac
(P, Q), measuring pixel intensity similarity and a bending energy term,
D
be
(P, Q) = I
f
, can be added to the similarity score.
Afterwards, the similarity measure was modied as
D
sc
= D
sc
+ D
be
. (48)
Although this measure does not take into account the strict one-to-one mapping of minutiae;
through experimentation, this method proved to be sound, providing acceptable performance
in ngerprint similarity assessment. However, the resulting minutiae mapping from the
application of the Hungarian algorithm on the contextually based cost histograms produced
some un-natural pairs, as illustrated in Figure 8 (top). This is due to the lack of a minutiae
pair pruning procedure. The existence of un-natural pairs could potentially skew the Thin
Plate Spline (T.P.S) linear transform performed. In addition, such pairs generally increase
the bending energy substantially, thus leading to invalid matching results, particularly for
genuine matches.
3.2 Proposed matching method
Recently, hybrid matching algorithms have been used for ngerprint matching. Although
minutiae detail alone can produce a highly discriminant set of information, the combination
of level 1 feature, such as orientation and frequency, and other level features, can
increase discriminant information, and hence, increase matching accuracy, as illustrated in
Benhammadi et al. (2007), Youssif et al. (2007), Reisman et al. (2002), and Qi et al. (2004).
The detailing of the proposed hybrid matching algorithm based on a modied version of
the enhanced shape context method in Kwan et al. (2006), along with the integration of
the orientation-based descriptor of Tico & Kuosmanen (2003) is given here, illustrating a
signicant performance improvement over the enhanced shape context method of Kwan et al.
(2006). The main objective of the integration is two-fold, rstly to prune outlier minutiae pairs,
and secondly to provide more information to use in similarity assessment.
As briey described earlier in section 2.3, the orientation-based descriptor in Tico &
Kuosmanen (2003) utilises the orientation image to provided local samples of orientation
around minutiae in a concentric layout. Each orientation sample point is calculated as
A
i
c,d
= min([
s
A
c,d
A
i
[, [
s
A
c,d
A
i
[) (49)
being the d
th
sample on the c
th
concentric circle with distance r
c
away from the minutiae
point m
A
i
, where
A
i
and
s
A
c,d
are the minutia and sample point orientation estimations,
respectively. The orientation distance of equation 22 is used to prune outlier pairs resulting
from the Hungarian algorithm which produced the mapping permutation of equation 30.
Although the shape context denes the similarity measure in equation 47-48 with no strict
one-to-one correspondence, minutiae should have a more strict assessment based on the
optimal mapping, since minutiae are key landmarks as opposed to randomly sampled contour
40 State of the Art in Biometrics
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
28 correspondences (unwarped X)
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
28 correspondences (warped X)
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
28 correspondences (warped X)
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
18 correspondences (warped X)
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
19 correspondences (warped X)
0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
19 correspondences (warped X)
Fig. 8. top: The Enhanced Shape Context method producing initial minutiae pair
correspondences. The next two images are for the following iterations. One should note that
there are some clear un-natural pairs produced, where plate foldings are evident (i.e. pair
correspondences that cross other pair correspondences). bottom: The proposed hybrid
method initial minutiae pair correspondences along with following iterations of produced
correspondences.
points. Thus, equation 48 can be modied to only score the pairs with the optimal one-to-one
mapping as
D
sc
(P, Q) =
1
n
p
i
P[S(p
i
,q
(i)
)<
_
C(p
i
, q
(i)
) +.S(p
i
, q
(i)
)
_
+ D
be
(50)
with an additional term in the summation, S(p
i
, q
(i)
), previously dened in equation (22)
accounting for orientation distance, scaled by the tunable parameter, with range [0, 1].
In terms of what concentric circle radii and sample conguration should be used, the method
explained in Tico & Kuosmanen (2003) prescribes that the radius for circle K
l
be r
l
= 2l ,
where denotes the average ridge period, and for the sample conguration, the circle K
l
should have roughly ,
r
l
(p
i
, q
j
) =
_
_
_
1
2
K
k=1
_
h
p
i
(k) h
q
j
(k)
_
2
h
p
i
(k) + h
q
j
(k)
exp
_
(r
k
r
min
)
2
2
2
_
_
_
_
(51)
where r
min
is the outer boundary of the closest bin, r
k
is the current bin outer boundary
distance, and
2
is a tunable parameter (see Figure 9).
Log-polar spaced histogram bins
convolved with Gaussian
weighting
Minutia directional offset
Fig. 9. The log-polar sample space convolved with a two dimensional Gaussian kernel,
resulting in each bin to be weighted according to its distance from the origin (minutia). The
histogram cost calculation uses the direction of the reference minutia as the directional offset
for the bin order, making the descriptor invariant to rotation.
3.2.1 Adaptive greedy registration
If we re-examine the registration of the enhanced shape context method of Kwan et al. (2006)
discussed in section 3.1, we can summarise the iterative process as updating minutiae pairs
with the enhanced shape context descriptor, followed by using T.P.S to perform a global
alignment with the linear transform component, and then performing non-linear transform
to model warping caused by skin elasticity. This method does not utilise any singularities
for the registration process, solely relying on the T.P.S framework for registration. Hence,
registration is largely reliant on the accuracy of the spatial distribution of minutiae relative to
a given reference minutia, which is often inadequate.
The proposed method does not use the T.P.S transform to perform the initial afne transform.
Instead, a greedy method similar to Tico & Kuosmanen (2003) (of equations 20-23) is used.
Using the minutiae set representation of equations 3 and 4, each possible pair (m
A
i
, m
B
j
) of
42 State of the Art in Biometrics
the afne transform, T, is calculated by using the orientation differences of each minutiae
direction as the rotation component, and the difference in x-y coordinates as the offset
component (as illustrated in equations 7-9). The heuristic that requires maximising is
H(A, B) = arg max
i
S(m
A
i
, m
B
T(i)
)
n(
)
(52)
where S(.) is previously dened in equation 22 as the similarity function based on the
orientation-based descriptor, is the index pair reference for the transform T (i.e. (i, j) with
m
A
i
= m
B
T(j)
),
)) of minutiae pairs (m
A
p
, m
B
q
)
which have each other as closest points from the opposite minutiae sets with distance less
than an empirically set limit,
M
, after applying the given transform. In addition, all anchor
point minutiae pairs must have similar orientation, hence meeting the constraint
min
_
[
A
i
B
j
[, [
A
i
B
j
[
_
<
(53)
(see Figure 5 left). From the given denition, we can easily verify that (i, j)
.
If the primary core point exists in both the test and template feature sets, provided that the
core point detection is highly accurate with a given test dataset, then we have good reason to
ignore afne transforms that cause the core points to be greater than a xed distance,
D
, away
from each other. Additional pruning can be achieved by only allowing transforms where the
reference minutiae pair has a orientation-based descriptor similarity score to meet
S
_
p
i
, q
(i)
_
<
S
(54)
where
S
is empirically set. Such restrictions will not only improve performance, but also
make the registration process much more accurate, since we are not just blindly maximising
the heuristic of equation 52.
Many registration algorithms use singularities, texture, and minutiae pair information as
tools for nding the most likely alignment. However, the overlapped region shape similarity
retrieved from minutiae spatial distribution information provides an additional important
criteria. After nding the bounding box (overlapping region) of a possible afne transform
meeting all prior restrictions, we can then measure shape dissimilarity via the application of
the shape context to all interior points P A and Q B with equation 50, giving additional
criteria for afne transforms to meet D
sc
(P, Q) <
sc
for an empirically set threshold,
sc
.
For a candidate transform, we have the corresponding anchor point set
. We will now
dene two additional nearest neighbour sets of the interior points in the overlap region (as
depicted in Figure 10) as
=
_
i [
_
(x
A
i
x
B
j
)
2
+ (y
A
i
y
B
j
)
2
<
N
_
(55)
where
contains all interior nearest neighbour indices from ngerprint A, and likewise,
,
containing interior nearest neighbour indices for ngerprint B. Thus, we have
_
(i, j) [ i
and j
_
. (56)
with 1 i p and 1 j q. The afne transform method is detailed in algorithm 1.
If a candidate afne transform meets the heuristic of equation 52 with the given constraints,
we can then focus on the non-afne aspect of registration. The T.P.S non-afne component
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 43
Algorithm 1 Proposed registration algorithm (Afne component)
Require: minutiae set P and Q (representing ngerprints A and B, respectively).
H 0
NIL
NIL
Q
T
NIL
for all possible minutiae pairs
_
p
i
, q
j
_
do
S
_
p
i
, q
j
_
(1/K)
L
c
K
c
d
exp
_
2
_
min([
p
i
c,d
q
j
c,d
[,[
p
i
c,d
q
j
c,d
[)
_
_
if S
_
p
i
, q
j
_
<
S
then
continue
end if
{Perform transform from minutiae pair with offset and orientation parameters from
minutiae x-y and differences}
Q
/
T(Q)
{Make sure core points are roughly around the same region, provided both cores exist}
if BothCoresExist(P, Q
/
) and CoreDist(P, Q
/
) >
D
then
continue
end if
{Get T.P.S cost matrix (see algorithm 2)}
C
TPS
cost
(P, Q
/
)
D
sc
1
n
pP
arg min
qQ
/ C
(p, q) +
1
m
qQ
/ arg min
pP
C
(p, q)
if D
sc
>
sc
then
continue
end if
P
_
(a, b) [ arg min
aP
_
(x
A
a
x
B
b
)
2
+ (y
A
a
y
B
b
)
2
_
Q
_
(a, b) [ arg min
bQ
_
(x
A
a
x
B
b
)
2
+ (y
A
a
y
B
b
)
2
_
_
(a, b) [ (a, b)
Q
and
_
(x
A
i
x
B
j
)
2
+ (y
A
i
y
B
j
)
2
<
M
_
H
test
(a,b)
/
S(p
a
,T(q
/
b
))
n(
/
)
if H
test
> H then
H H
test
(i, j)
Q
T
Q
/
end if
end for
_
i [
_
(x
A
i
x
B
j
)
2
+ (y
A
i
y
B
j
)
2
<
N
_
_
j [
_
(x
A
i
x
B
j
)
2
+ (y
A
i
y
B
j
)
2
<
N
_
return
, Q
T
44 State of the Art in Biometrics
Algorithm 2 TPS
cost
: Calculate TPS cost matrix
Require: minutiae set P and Q (representing ngerprints A and B, respectively).
for all minutiae q
j
Q do
for k = 1 to K do
h
q
j
(k) #
_
q
j
,= q
i
: (q
j
q
i
) bin(k)
_
end for
end for
for all minutiae p
i
P do
for k = 1 to K do
h
p
i
(k) #
_
p
j
,= p
i
: (p
j
p
i
) bin(k)
_
end for
end for
for all minutiae p
i
P and q
j
Q do
C
(p
i
, q
j
)
_
1
2
K
k=1
_
h
p
i
(k)h
q
j
(k)
_
2
h
p
i
(k)+h
q
j
(k)
exp
_
(r
k
r
min
)
2
2
2
_
_
end for
return C
adequately modeled the warping caused by skin elasticity in the previously proposed method.
With this in mind, it will be desirable to utilise the non-linear component.
The T.P.S has its point correspondence method modied through having anchor point
correspondences remain static throughout the iterative process, thus attempting to restrict
the afne transform component of T.P.S while nding new correspondences from
on to
(p
i
, q
j
) =
d
(p
i
, q
j
) (57)
where
d
is dened as
d
=
_
1 if dist(p
i
, q
j
) <
max
,
otherwise
(58)
with
max
set as the maximum feasible distance caused by warping after applying the
candidate afne transform, and similarly,
, is dened as
=
_
1 if min([
A
i
B
j
[, [
A
i
B
j
[) <
max
,
otherwise
(59)
with
max
set as the maximum feasible orientation difference caused by orientation estimation
error in the extraction process.
>From the new cost function, the Hungarian algorithm is then used to nd additional
one-to-one correspondences to what already existed in the anchor point set. The candidate
afne transform in comparison to the afne component of T.P.S,
A
T
=
_
_
a
x,x
a
x,y
a
1,x
a
y,x
a
y,y
a
1,y
0 0 1
_
_
, (60)
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 45
Fig. 10. An example afne transform candidate search sequence with nal state and
corresponding bounding box for the overlapped region.
is used to assess the accuracy of the additional correspondences found. The T.P.S afne
component would not have prominent translation, rotation, and shear parameters since
the candidate transform should have already adequately dealt with the afne registration
task as the Euclidean constraints on the anchor point worked to keep the global transform
rigid. In addition, the inclusion of additional natural minutiae correspondences should not
signicantly alter the afne registration required. Thus, the lack of prominent translation,
rotation, and shear parameters for the T.P.S afne transform indicates an existing agreement
between both afne transforms. Evaluation of the translation distance is given by
r
a f f ine
=
_
a
2
1,x
+ a
2
1,y
< r
max
. (61)
Using the Singular Value Decomposition (SVD) of the non-translation components of A
T
:
SVD
__
a
x,x
a
x,y
a
y,x
a
y,y
__
= UDV
T
(62)
where U, V
T
SO(2, R) (i.e. 2x2 dimension rotation matrices with angles
and
,
respectively) and D is a 2x2 diagonal matrix representing scaling along the rotated coordinate
axes of V
T
with nonnegative diagonal elements in decreasing order, the evaluation of rotation
a f f ine
= [
[<
max
, (63)
and shear
a f f ine
= log
_
D
1,1
D
2,2
_
<
max
, (64)
46 State of the Art in Biometrics
Algorithm 3 Proposed registration algorithm (Non-afne component)
Require: minutiae set P and Q
T
(for ngerprints A and transform B), anchor set
, nearest
neighbourhood sets
and
.
P
/
p
i
[ i
, Q
T
_
q
j
[ j
_
,
a f f ine
0, D
be
0
for all minutiae q
j
Q
T
do
for k = 1 to K do
h
q
j
(k) #
_
q
j
,= q
i
: (q
j
q
i
) bin(k)
_
end for
end for
for iter = 1 to n do
for all minutiae p
i
P do
for k = 1 to K do
h
p
i
(k) #
_
p
j
,= p
i
: (p
j
p
i
) bin(k)
_
end for
end for
for all minutiae p
i
and q
j
do
C
(p
i
, q
j
)
_
1
2
K
k=1
_
h
p
i
(k)h
q
j
(k)
_
2
h
p
i
(k)+h
q
j
(k)
exp
_
(r
k
r
min
)
2
2
2
_
_
C
(p
i
, q
j
)
d
(p
i
, q
j
)
end for
{calculate and add minutiae pairs additional to the anchor set pairs.}
Hungarian(C
, f ixedMap =
)
f (x, y) T.P.S (P, Q
T
,
, Regularized = true)
D
be
D
be
+WKW
T
r
a f f ine
_
a
2
1,x
+ a
2
1,y
[U, D, V
T
,
] SVD
__
a
x,x
a
x,y
a
y,x
a
y,y
__
a f f ine
a f f ine
+[
a f f ine
log
_
D
1,1
D
2,2
_
if D
be
> E
max
or r
a f f ine
max
or
a f f ine
max
or
a f f ine
max
then
return
end if
for all minutiae p
i
P do
[x, y] [p
i
(x), p
i
(y)]
[p
i
(x), p
i
(y)] [ f
x
(x, y), f
y
(x, y)]
end for
end for
return return
(m
A
i
, m
B
j
) = S(m
A
i
, m
B
j
) exp(max(0,
cuto f f
g_count
).
s
) (65)
where
cuto f f
is the cutoff point where all good sample totals below this value are weighed,
g_count
is the total number of good samples (i.e. where a good sample is dened to be in a
coherent ngerprint region), and
s
is a tunable parameter. However, for a more exhaustive
approach, one could empirically review the estimated distribution of orientation-based
similarity scores for true and false cases, with specic attention towards the effect of coverage
completeness on the accuracy of the similarity measure.
Fig. 11. An example where the orientation-based descriptor for corresponding minutiae in
two different impressions of the same ngerprint have no coverage in a substantial portion
of the orientation sample.
48 State of the Art in Biometrics
Equation 65 relies on the intersection set of valid samples for each minutiae, dened as
I(A
i
, B
j
) =
_
s [ s L, K
c
and valid(A(s
x
, s
y
))
_
_
t [ t L, K
c
and valid(B(t
x
, t
y
))
_
(66)
where L is the sample position set and K
c
is the concentric circle set. Thus, we can also dene
a variant of the function S
(m
A
i
, m
B
j
, I) where a predened sample index set , I, is given to
indicate which samples are only to be used for the similarity calculation, ignoring i / I even
if corresponding orientation samples are legitimately dened for both ngerprints (note: this
variant is used later for similarity scoring in the matching algorithm).
After the ltered minutiae pair set is produced, we can now assess the similarity of the
pairs. Minutiae -neighbourhood structure families, where particular spatial and minutiae
information of the closest minutiae to a reference minutiae are extracted as features, have
been used before in minutiae based matching algorithms (such as Chikkerur & Govindaraju
(2006) and Kwon et al. (2006)) for both alignment and similarity measure (see Figure 12). The
-neighbourhood structure proposed has the following elds:
Distance d
i
: the distance a neighbourhood minutia is away from the reference minutia.
Angle
i
: the angle a neighbourhood minutia is from the reference minutia direction.
Orientation
i
: the orientation difference between a neighbourhood minutia direction and
the reference minutia direction.
Texture
i
: the orientation-based descriptor sample set for a neighbourhood minutia used
to measure the region orientation similarity with the reference minutia for a given sample
index.
giving us the sorted set structure
n(m
A
i
) = d
A
i
(1)
,
A
i
(1)
,
A
i
(1)
,
A
i
(1)
, . . . , d
A
i
()
,
A
i
()
,
A
i
()
,
A
i
()
(67)
being sorted by the distance eld in ascending order. The rst two elds are considered as the
polar co-ordinates of the neighbourhood minutiae with the referencing minutia as the origin,
and along with the third eld, they are commonly used in local neighbourhood minutiae
based structures ( Kwon et al. (2006) and Jiang & Yau (2000)). Using the modied weighted
orientation-based descriptor, the texture eld provides additional information on how each
local orientation information surrounding the -neighbourhood minutiae set vary from that
of the reference minutia, with the measure rated using equation 65. These structures can now
be used to further assess and score the candidate minutiae pairs.
When comparing the -neighbourhood elements of a candidate minutiae pair, the rst three
elds are straight forward to compute the differences with
r
di f f (m
A
i
,m
B
j
)
(x, y) = [d
A
i
(x)
d
B
j
(y)
[, (68)
di f f (m
A
i
,m
B
j
)
(x, y) = min([
A
i
(x)
B
j
(y)
[, 2 [
A
i
(x)
B
j
(y)
[), (69)
di f f (m
A
i
,m
B
j
)
(x, y) = min([
A
i
(x)
B
j
(y)
[, [
A
i
(x)
B
j
(y)
[), (70)
However, to make an accurate comparison of a minutiae pairs -neighbourhood orientation
similarity information, we must nd the intersection of sample positions that are within valid
and coherent regions for both images (see Figure 13). Thus, the fourth eld is composed of the
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 49
Fig. 12. The -neighbourhood ( = 4) for a given minutia (ignoring false crease minutiae).
set of all orientation samples and is used to dynamically calculate the orientation difference
of neighbouring minutiae for a minutiae pairs respective -neighbourhoods, using
di f f (m
A
i
,m
B
j
)
(x, y) = [
A
i
(x)
B
j
(y)
[ (71)
where
A
i
(x)
= S
(m
A
i
, m
A
i
(x)
, I
o
),
B
j
(y)
= S
(m
B
j
, m
B
j
(y)
, I
o
), and overlap index set I
o
=
I(A
i
, A
i
(x)) I(B
j
, B
j
(y)).
Samples outside fingerprint region
Samples outside fingerprint region
Intersect set
Fig. 13. An example where the orientation-based descriptor for corresponding minutiae in
two different impressions of the same ngerprint have no coverage in a substantial portion
of the orientation sample.
We now require a systematic method for scoring a minutiae pair given their corresponding
-neighbourhoods. Since there is no guarantee that each -neighbourhood has the same
50 State of the Art in Biometrics
minutiae set, optimal mapping methods, such as the Hungarian algorithm, may not be
desirable. Instead, we use a novel greedy algorithm, where we iterate through one
neighbourhood and nd the best match from another, provided that they meet pre-dened
afne constraints of equations 61-63. Removal of the matching elements from the
-neighbourhood lists ensures one-to-one mappings of -neighbourhood minutiae.
A -neighbourhood similarity score is tallied for the candidate minutiae pair (m
A
i
, m
B
j
) for
each matched -neighbourhood minutiae pair having respective neighbourhood sorted set
indexes (x
s
, y
t
), found to also match, using
sim
(m
A
i
, m
B
j
) =
s,t
((x
s
, y
t
) + (x
s
, y
t
)) (72)
where
(x, y) = exp(r
di f f (m
A
i
,m
B
j
)
(x, y)
di f f (m
A
i
,m
B
j
)
(x, y)
di f f (m
A
i
,m
B
j
)
(x, y)) (73)
and
(x, y) = exp(
di f f (m
A
i
,m
B
j
)
(x, y)) (74)
with a tunable parameter dened in [0, 1].
After all candidate minutiae pair -neighbourhoods have been scored, we can now nd a
ngerprint matching similarity score as
sim(A, B) =
n
M
_
(i,j)
sim
(m
A
i
, m
B
j
)
_
.
_
S
max
_
n
A
.n
B
D
sc
(75)
where
S
max
= arg max
(i,j)
S
(m
A
i
, m
B
j
, I(A
i
, B
j
)) (76)
with S
(m
A
i
, m
B
j
, I(A
i
, B
j
)) dened in equation 65 as the orientation-based descriptor
similarity measure, D
sc
is the modied shape context distance in equation 50, n
M
is the
number of matching ltered minutiae pairs, n
A
and n
B
are the number of minutiae in the
overlap region from ngerprint A and B, respectively, i and j are the index of the ltered
minutiae pair elements in ngerprint A and B, respectively, and a tunable parameter in
[0, 1]. Additionally, we can add the type similarity of each pair to equation 71 by adding a
small constant,
t
, when the minutiae types agree. The matching method is summarised in
algorithm 4.
4. Experimental results
The experiment was performed on two databases, the FVC2002 database Db1 set A ( Maio
et al. (2002)) which contains 800 ngerprint images with 100 ngers having 8 impressions
each, and ngerprint database from the University of Bologna ( Bologna (2000)), consisting
of 168 ngerprint images formed by 21 ngers with 8 impressions each. The parameters of
the algorithm (see Table 1) were tuned with the FVC2002 database Db1 set B, which contains
80 ngerprints (10 ngers with 8 impressions each). The program was written in Matlab and
run on a 1.66GHz Linux PC with 2Gb memory. The FVC2002 protocol ( Maio et al. (2002)) was
used in experimentation, comprising of n 8 7/2 = 2800 genuine and n (n 1)/2 = 4950
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 51
Algorithm 4 Proposed matching algorithm
Require: P, Q
T
, candidate minutiae pair index set
, and n
A
=
_
n(m
A
i
) [ i
(1)
_
and
n
B
=
_
n(m
B
j
) [ j
(2)
_
as the neighbourhood sets
sim
Nil
for all minutiae pair indexes(i, j)
do
sim
(m
A
i
, m
B
j
) 0
O
score
S(m
A
i
, m
B
j
)
if O
score
< O
min
then
remove (i, j)
continue
end if
for all s n
A
i
do
for all t n
B
j
do
r
di f f (m
A
i
,m
B
j
)
(s, t) [d
A
i
(s)
d
B
j
(t)
[
di f f (m
A
i
,m
B
j
)
(s, t) min([
A
i
(s)
B
j
(t)
[, 2 [
A
i
(s)
B
j
(t)
[)
di f f (m
A
i
,m
B
j
)
(s, t) min([
A
i
(s)
B
j
(t)
[, [
A
i
(s)
B
j
(t)
[)
if r
di f f (m
A
i
,m
B
j
)
(s, t) > r
max
or
di f f (m
A
i
,m
B
j
)
(s, t) >
max
or
di f f (m
A
i
,m
B
j
)
(s, t) >
max
then
continue
end if
remove s n
A
i
remove t n
B
j
(s, t) exp(r
di f f (m
A
i
,m
B
j
)
(s, t)
di f f (m
A
i
,m
B
j
)
(s, t))
di f f (m
A
i
,m
B
j
)
(s, t))
(s, t) exp(
di f f (m
A
i
,m
B
j
)
(s, t))
sim
(m
A
i
, m
B
j
) sim
(m
A
i
, m
B
j
) + (s, t) + (s, t)
end for
end for
end for
{calculate shape context fromthe minutiae sets P (which has been non-afnely transformed)
and Q
T
(which has been afnely transformed)}
C
TPS
cost
(P, Q
T
)
D
sc
(P, Q)
1
n
p
i
P[S(p
i
,q
(i)
)<
_
C(p
i
, q
(i)
) +.S(p
i
, q
(i)
)
_
+ D
be
S
max
arg max
(i,j)
S
(m
A
i
, m
B
j
, I(A
i
, B
j
))
sim
score
n
M
_
(i,j)
sim
(m
A
i
,m
B
j
)
_
.(
S
max)
n
A
.n
B
D
sc
return sim
score
52 State of the Art in Biometrics
imposter attempts for the FVC2002 database, and n 8 7/2 = 588 genuine and n (n
1)/2 = 210 imposter attempts for the smaller database.
Image enhancement for the FVC2002 database was performed via the STFT method
( Chikkerur et al. (2004)), while the binarization/thinning based minutiae extraction method
and smoothed orientation image creation proposed in Hong et al. (1998) were used for feature
extraction, along with the core point detection algorithm based on the method described
in Julasayvake & Choomchuay (2007). Spurious minutiae had very crude ltering applied,
with only short spurs and minutiae near segmented border regions removed. All other false
minutia structures remained in the feature set. In addition, the thinning algorithm is known
to produce a higher number of spurious minutia in comparison to ridge following methods.
Moreover, the STFT method was noted in Jirachaweng et al. (2009) to produce a high rate of
spurious minutiae, while the extraction method encountered a substantial amount of minutia
type interchange (approx. 30%). Thus, we can expect our feature set to have at least a
moderate amount of noise.
Table 2 summarises the performance of our algorithm against numerous well known
algorithms on the FVC2002 database, as does Table 3 with the University of Bologna database.
One should note that the parameters were not tuned for this second database, but still
managed to perform quite well. Figures 14 and 15 show the FMR vs. FNMR graphs. The
proposed method managed to nish in a top 8 position for the FVC2002 database. Figure 16
illustrates the genuine and imposter distributions of the similarity score for both databases.
1000 1050 1100 1150 1200 1250 1300 1350 1400
0
10
20
30
40
50
60
70
80
90
100
threshold (t)
p
e
r
c
e
n
t (
%
)
FNMR (t)
FMR (t)
1000 1010 1020 1030 1040 1050 1060 1070 1080 1090 1100
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
threshold (t)
p
e
r
c
e
n
t (
%
)
EER=0.75%
Fig. 14. left: Proposed method FNMR and FMR vs matching threshold t on FVC2002 Db1 Set
A right: Close up illustrating the EER (0.75%).
1000 1050 1100 1150 1200 1250 1300 1350
0
10
20
30
40
50
60
70
80
90
100
p
e
r
c
e
n
t (
%
)
threshold (t)
FNMR(t) FMR(t)
1000 1020 1040 1060 1080 1100 1120 1140
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
threshold (t)
p
e
r
c
e
n
t
(
%
)
EER=0.96%
Fig. 15. left: Proposed method FNMR and FMR vs matching threshold t on University of
Bologna database right: Close up illustrating the EER (0.96%).
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 53
Parameter Name Hybrid Component Relevance Value
iterations shape context T.P.S 5
annealing rate shape context T.P.S 0.35
regularization shape context T.P.S 0.8
inner/outer radii shape context log-polar 1/64, 2
radii/theta bins shape context log-polar 8, 10
2
shape context log-polar 4.5
circle radii r
l
orientation minutia 7, 14, 21, 28, 35, 42, 49
circle samples orientation minutia 12, 16, 22, 28, 32, 36, 36
scoring shape context 0.3
O
min
matching orientation 0.25
max
registration T.P.S 0.1
S
registration orientation 0.25
D
registration core 30 pixels
sc
registration shape context 4.9
r
max
registration T.P.S 0.1
max
registration T.P.S /6
max
registration T.P.S 0.3
E
max
registration T.P.S 12
cuto f f
matching ltering 70
max
matching T.P.S /8
r
max
matching T.P.S 0.05
max
matching T.P.S /8
matching neighbourhood 4
Table 1. Parameters setup for experimentation
0 20 40 60 80 100 120 140 160 180
0
0.05
0.1
scaled threshold (t)
p
e
r
c
e
n
t
(
%
)
0 20 40 60 80 100 120
0
0.02
0.04
0.06
0.08
0.1
0.12
0.14
0.16
0.18
0.2
scaled threshold (t)
p
e
r
c
e
n
t
(
%
)
Fig. 16. Genuine (blue) and imposter (red) distributions for the left: FVC2002 Db1 set A
database, and right: University of Bologna database.
5. Conclusions
The proposed ngerprint matching method using a hybrid shape and orientation descriptor
outperforms many well-known methods on the FVC2002 database (in the top 8th place) in the
FVC2002 competition, considering that the feature set was not in pristine condition due to the
chosen extraction and ltering methods, highlighting the overall robustness of the proposed
algorithm.
54 State of the Art in Biometrics
Matching Algorithm EER (%)
CBFS Chikkerur & Govindaraju (2006) 1.50
TPS based Kwon et al. (2006) 0.92
Meshgrid based Kwon et al. (2007) 0.82
Hybrid Spiral based Shi & Govindaraju (2009) 1.98
PA08 Maio et al. (2002) (8
th
place) 0.98
PB35 Maio et al. (2002) (5
th
place) 0.61
PA15 Maio et al. (2002) (1
st
place) 0.1
Proposed method 0.75
Table 2. Performance comparison of matching algorithms on FVC2002 Db1 Set A
Matching Algorithm EER (%)
WGHT/Orientation-based Tico (2001) Tico et al. (2002) 1.07-1.97
Mutual Information Liu et al. (2006) 1.5
Delaunay Triangulation Wang & Gavrilova (2006) 5.1
Enhanced Shape Context Kwan et al. (2006) 12.79
Proposed method 0.96
Table 3. Performance comparison of matching algorithms on University of Bologna database
In addition, we improved the performance of the algorithm substantially over the enhanced
shape context on both public datasets, despite using parameters only tuned for the FVC2002
database. Finally, all known competing matching algorithms tested on the University of
Bologna database were beaten by the proposed ngerprint matching method.
The matlab source code for the proposed ngerprint matching algorithm can be found at the
Matlab Central ( Abraham (2010)) website.
6. References
Abraham, J. (2010). Matlab code for ngerprint matching algorithm.
URL: http://www.mathworks.com/matlabcentral/leexchange/29280-ngerprint-matching
-algorithm-using-shape-context-and-orientation-descriptors
Bazen, A. M. & Gerez, S. H. (2003). Fingerprint matching by thin-plate spline modelling of
elastic deformations, Pattern Recognition 36(8): 18591867.
Belongie, S., Malik, J. & Puzicha, J. (2000). Shape context: A new descriptor for shape
matching and object recognition, Neural Information Processing Systems Conference
(NIPS), pp. 831837.
Belongie, S., Malik, J. & Puzicha, J. (2002). Shape matching and object recognition using shape
contexts, IEEE Transactions on Pattern Analysis and Machine Intelligence 24(4): 509522.
Benhammadi, F., Amirouche, M., Hentous, H., Bey Beghdad, K. & Aissani, M. (2007).
Fingerprint matching from minutiae texture maps, PR 40(1): 189197.
Bologna (2000). Biometric system laboratory: www2.csr.unibo.it/research/biolab, 168
ngerprint database (21 ngers 8 impressions).
Bookstein, F. L. (1989). Principal warps: Thin-plate splines and the decomposition of
deformations, IEEE Trans. Pattern Anal. Mach. Intell. 11(6): 567585.
Fingerprint Matching using A Hybrid Shape and Orientation Descriptor 55
Chikkerur, S. & Govindaraju, V. (2006). K-plet and CBFS: A graph based ngerprint
representation and matching algorithm, International Conference on Biometrics
(accepted).
Chikkerur, S. & Ratha, N. (2005). Impact of singular point detection on ngerprint
matching performance, Automatic Identication Advanced Technologies, IEEE Workshop
on 1: 207212.
Chikkerur, S., Wu, C. & Govindaraju, V. (2004). A systematic approach for feature extraction
in ngerprint images, Biometric Authentication LNCS 3072: 344350.
Farina, A., Kovacs Vajna, Z. & Leone, A. (1999). Fingerprint minutiae extraction from
skeletonized binary images, PR 32(5): 877889.
Gonzalez, R. C. & Woods, R. E. (2007). Digital Image Processing (3rd Edition), Prentice Hall.
Hatano, T., Adachi, T., Shigematsu, S., Morimura, H., Onishi, S., Okazaki, Y. & Kyuragi,
H. (2002). A ngerprint verication algorithm using the differential matching rate,
Pattern Recognition, International Conference on 3: 30799.
Hong, L., Wan, Y. & Jain, A. (1998). Fingerprint image enhancement: Algorithm
and performance evaluation, "IEEE Transactions on Pattern Analysis and Machine
Intelligence" 20(8): 777789.
Jiang, X. & Yau, W.-Y. (2000). Fingerprint minutiae matching based on the local and global
structures, Pattern Recognition, International Conference on 2: 6038.
Jirachaweng, S., Leelasawassuk, T. & Areekul, V. (2009). Performance and computational
complexity comparison of block-based ngerprint enhancement, ICB09, pp. 656665.
Jonker, R. & Volgenant, A. (1987). A shortest augmenting path algorithm for dense and sparse
linear assignment problems, Computing 38(4): 325340.
Julasayvake, A. & Choomchuay, S. (2007). An algorithm for ngerprint core point
detection, Proc. of International Symposium on Signal Processing and its Applications 2007
(ISSPA-2007) 1(1): 14.
Kisel, A., Kochetkov, A. & Kranauskas, J. (2008). Fingerprint minutiae matching without
global alignment using local structures, Informatica 19(1): 3144.
Kwan, P. W., Gao, J. & Guo, Y. (2006). Fingerprint matching using enhanced shape context,
Proceedings of The 21st Image and Vision Computing New Zealand (IVCNZ 2006) Great
Barrier Island, New Zealand 1(1): 115120.
Kwon, D., Yun, I. D., Kim, D. H. & Lee, S. U. (2006). Fingerprint matching method using
minutiae clustering and warping, Pattern Recognition, International Conference on
4: 525528.
Kwon, D., Yun, I. D. & Lee, S. U. (2007). A robust warping method for ngerprint matching,
Computer Vision and Pattern Recognition, IEEE Computer Society Conference on 0: 16.
Liang, X. & Asano, T. (2006). Fingerprint matching using minutia polygons, ICPR06, pp. I:
10461049.
Lindoso, A., Entrena, L., Liu Jimenez, J. & San Millan, E. (2007). Correlation-based ngerprint
matching with orientation eld alignment, ICB07, pp. 713721.
Liu, L., Jiang, T., Yang, J. &Zhu, C. (2006). Fingerprint registration by maximization of mutual
information, IP 15(5): 11001110.
Maio, D. & Maltoni, D. (1997). Direct gray-scale minutiae detection in ngerprints, PAMI
19(1): 2740.
Maio, D., Maltoni, D., Cappelli, R., Wayman, J. & Jain, A. K. (2002). "fvc2002: Second
ngerprint verication competition", pp. 811814.
Nanni, L. & Lumini, A. (2009). Descriptors for image-based ngerprint matchers, Expert
Systems with Applications 36(10): 1241412422. Cited By (since 1996): 4.
URL: www.scopus.com
56 State of the Art in Biometrics
Qi, J., Wang, Y., Shi, Z., Xu, K. & Zhao, X. (2004). Fingerprint matching integrating the global
orientation eld with minutia, ICBA, pp. 337343.
Ratha, N. K. & Bolle, R. (2003). Automatic Fingerprint Recognition Systems, SpringerVerlag.
Reisman, J., Jain, A. & Ross, A. (2002). A hybrid ngerprint matcher, ICPR02, pp. III: 795798.
Rutovitz, D. (1966). "pattern recognition", "J. Royal Statist. Soc" (129): 504530.
Shi, Z. & Govindaraju, V. (2009). Robust ngerprint matching using spiral partitioning
scheme, ICB 09: Proceedings of the Third International Conference on Advances in
Biometrics, Springer-Verlag, Berlin, Heidelberg, pp. 647655.
Stoney, D. (1988). Distribution of epidermal ridge minutiae, Am. J. Physical Anthropology
77: 367376.
Tian, L., Chen, L. & Kamata, S.-i. (2007). Fingerprint matching using dual hilbert scans,
SITIS 07: Proceedings of the 2007 Third International IEEE Conference on Signal-Image
Technologies and Internet-Based System, IEEE Computer Society, Washington, DC, USA,
pp. 593600.
Tico, M. (2001). On Design and Implementation of Fingerprint-Based Biometric Systems, PhD thesis,
PhD thesis, Tampere Univ. of Technology, Tampere, Finland.
Tico, M. & Kuosmanen, P. (2003). Fingerprint matching using an orientation-based
minutia descriptor, IEEE Transactions on Pattern Analysis and Machine Intelligence
25(8): 10091014.
Tico, M., Onnia, V. & Kuosmanen, P. (2002). Fingerprint image enhancement based on
second directional derivative of the digital image, EURASIP J. Appl. Signal Process.
2002(1): 11351144.
Wahba, G. (1990). Spline Models for Observational Data, SIAM.
Wang, C. & Gavrilova, M. L. (2006). Delaunay triangulation algorithm for ngerprint
matching, ISVD 06: Proceedings of the 3rd International Symposium on Voronoi
Diagrams in Science and Engineering, IEEE Computer Society, Washington, DC, USA,
pp. 208216.
Xiao, Q. & Raafat, H. (1991). Fingerprint image post-processing: A combined statistical and
structural approach, PR 24(10): 985992.
Yager, N. & Amin, A. (2005). Coarse ngerprint registration using orientation elds, JASP
2005(13): 20432053.
Yang, J. C. &Park, D.-S. (2008). Angerprint verication algorithmusing tessellated invariant
moment features, Neurocomputing 71(10-12): 19391946.
Youssif, A. A., Chowdhury, M. U., Ray, S. & Nafaa, H. Y. (2007). Fingerprint recognition
system using hybrid matching techniques, "Computer and Information Science, ACIS
International Conference on" 0: 234240.
Zhang, W. & Wang, Y. (2002). Core-based structure matching algorithm of ngerprint
verication, Pattern Recognition, International Conference on 1: 10070.
Zhao, F. & Tang, X. (2007). Preprocessing and postprocessing for skeleton-based ngerprint
minutiae extraction, PR 40(4): 12701281.