U.S. patent application number 10/860542 was filed with the patent office on 2004-11-04 for two-stage local and global fingerprint matching technique for automated fingerprint verification/identification.
Invention is credited to Jiang, Xudong, Ser, Wee, Yau, Wei Yun.
Application Number | 20040218791 10/860542 |
Document ID | / |
Family ID | 20430391 |
Filed Date | 2004-11-04 |
United States Patent
Application |
20040218791 |
Kind Code |
A1 |
Jiang, Xudong ; et
al. |
November 4, 2004 |
Two-stage local and global fingerprint matching technique for
automated fingerprint verification/identification
Abstract
A method for determining a degree of match between a search
fingerprint and a reference fingerprint comprises the following: a)
Extracting at least one first search feature from a first region of
said search fingerprint thereby forming a local search feature
vector, b) Extracting at least one second search feature from a
second region of said search fingerprint thereby forming a global
search feature vector, whereby said second region comprises said
first region, c) Determining a first similarity degree by comparing
said local search feature vector with a local reference feature
vector, d) Determining a second similarity degree by comparing said
global search feature vector with a global reference feature vector
of said reference fingerprint and using said first similarity
degree, e) Determining said degree of match from said second
similarity degree, wherein said feature vectors describe minutiae
of said fingerprints or a relation between minutiae of said
fingerprints.
Inventors: |
Jiang, Xudong; (Singapore,
SG) ; Yau, Wei Yun; (Singapore, SG) ; Ser,
Wee; (Singapore, SG) |
Correspondence
Address: |
Rutan and Tucker, LLP
Fourteenth Floor
611 Anton Blvd.
Costa Mesa
CA
92626
US
|
Family ID: |
20430391 |
Appl. No.: |
10/860542 |
Filed: |
June 2, 2004 |
Related U.S. Patent Documents
|
|
|
|
|
|
Application
Number |
Filing Date |
Patent Number |
|
|
10860542 |
Jun 2, 2004 |
|
|
|
09611951 |
Jul 6, 2000 |
|
|
|
6778685 |
|
|
|
|
Current U.S.
Class: |
382/124 |
Current CPC
Class: |
G06V 40/1365
20220101 |
Class at
Publication: |
382/124 |
International
Class: |
G06K 009/00 |
Foreign Application Data
Date |
Code |
Application Number |
Jul 8, 1999 |
SG |
9903290-6 |
Claims
What is claimed is:
1. A method for determining a degree of match between a search
fingerprint and a reference fingerprint comprising: a) Extracting
at least one first search feature from a first region of said
search fingerprint thereby forming a local search feature vector,
b) Extracting at least one second search feature from a second
region of said search fingerprint thereby forming a global search
feature vector, wherein said second region comprises said first
region, c) Determining a first similarity degree by comparing said
local search feature vector with a local reference feature vector
of said reference fingerprint, d) Determining a second similarity
degree by comparing said global search feature vector with a global
reference feature vector of said reference fingerprint and using
said first similarity degree, e) Determining said degree of match
from said second similarity degree, wherein said feature vectors
describe at least one of minutiae of said fingerprints and a
relation between minutiae of said fingerprints.
2. A method according to claim 1, wherein said features are
independent from at least one of rotation and translation of the
fingerprints compared with a given coordinate system.
3. A method according to claim 1, wherein said first region
comprises a given first amount of neighbor minutiae; said second
region comprises a given second amount of neighbor minutiae; and
said second amount is larger than said first amount.
4. A method according to claim 1, further comprising: Determining
said first similarity degree for all minutiae in said first region;
Determining a best match local structure pair of minutiae by using
said first similarity degrees; and Aligning all minutiae in said
second region based on said best match local structure pair,
thereby forming said global search feature vector.
5. A device for determining a degree of match between a search
fingerprint and a reference fingerprint comprising: a) Means for
extracting at least one first search feature from a first region of
said search fingerprint thereby forming a local search feature
vector, b) Means for extracting at least one second search feature
from a second region of said search fingerprint thereby forming a
global search feature vector, wherein said second region comprises
said first region, c) Means for determining a first similarity
degree by comparing said local search feature vector with a local
reference feature vector of said reference fingerprint, d) Means
for determining a second similarity degree by comparing said global
search feature vector with a global reference feature vector of
said reference fingerprint and using said first similarity degree,
e) Means for determining said degree of match from said second
similarity degree, wherein said feature vectors describe at least
one of minutiae of said fingerprints and a relation between
minutiae of said fingerprints.
6. A computer readable medium having a program recorded thereon,
wherein the program is to make a computer execute a procedure for
determining a degree of match between a search fingerprint and a
reference fingerprint, the procedure comprising instructions for
the steps of: a) Extracting at least one first search feature from
a first region of said search fingerprint thereby forming a local
search feature vector, b) Extracting at least one second search
feature from a second region of said search fingerprint thereby
forming a global search feature vector, wherein said second region
comprises said first region, c) Determining a first similarity
degree by comparing said local search feature vector with a local
reference feature vector of said reference fingerprint, d)
Determining a second similarity degree by comparing said global
search feature vector with a global reference feature vector of
said reference fingerprint and using said first similarity degree,
and e) Determining said degree of match from said second similarity
degree, wherein said feature vectors describe at least one of
minutiae of said fingerprints and a relation between minutiae of
said fingerprints.
7. A computer program for determining a degree of match between a
search fingerprint and a reference fingerprint, the program
comprising instructions for: a) Extracting at least one first
search feature from a first region of said search fingerprint
thereby forming a local search feature vector, b) Extracting at
least one second search feature from a second region of said search
fingerprint thereby forming a global search feature vector, wherein
said second region comprises said first region, c) Determining a
first similarity degree by comparing said local search feature
vector with a local reference feature vector of said reference
fingerprint, d) Determining a second similarity degree by comparing
said global search feature vector with a global reference feature
vector of said reference fingerprint and using said first
similarity degree, and e) Determining said degree of match from
said second similarity degree, wherein said feature vectors
describe at least one of minutiae of said fingerprints and a
relation between minutiae of said fingerprints.
Description
[0001] This application is a divisional application of previously
allowed U.S. application with the Ser. No. 09/611951 filed on Jul.
6, 2000, which claims priority of Singapore patent application No.
9903290-6, which was filed Jul. 8, 1999.
BACKGROUND OF THE INVENTION
[0002] This invention relates to a method, a device, a computer
readable medium and a computer program element for matching
fingerprints.
[0003] The word "fingerprint" is herein used as a representative of
a fingerprint or a like pattern or figure. More particularly, the
fingerprint may be an actual finger, a palm print, a toe print, a
soleprint, a squamous pattern, and a streaked pattern composed of
streaks. The fingerprint may also be a diagram drawn by a skilled
person to represent a faint fingerprint which is, for example, left
at the scene of a crime.
[0004] The "matching" is for identification of a fingerprint with
reference to a plurality of known reference fingerprints. The
matching may also be for discrimination, collation, and/or
verification of the fingerprint.
[0005] In the following, the fingerprint which is to be recognized
is called a search fingerprint. A stored fingerprint which is
compared with said search fingerprint is called reference
fingerprint.
[0006] U.S. Pat. No. 5,633,947 describes a method and an apparatus
for fingerprint characterization and recognition using an auto
correlation approach. A fingerprint image is captured and a binary
image of said fingerprint image is determined. Furthermore, said
binary image is replicated. Said replica is overlaid on said binary
image and an autocorrelation pattern having a displacement modulus
equal to a fractional part of the mean fingerprint inter-ridge
spacing and a displacement vector rotated through a vector argument
in incremental steps is generated.
[0007] U.S. Pat. No. 5,493,621 discloses an approach to match a
fingerprint by setting up a graph. A master point is the minutia
nearest to a center. A sub-branch point is then selected from the
nearest point to the master point in each quadrant, followed by
sub-sub-branch points in increasing distance. Positional
relationship between each branch point with the master point and
the sub-sub-branch points in each quadrant are recorded as well as
the number of branch points. These data are subsequently used for
matching.
[0008] In U.S. Pat. No. 4,896,363 a distance spectrum is used for
fingerprint matching. In this method, a set of points
representative of the characteristic features of a fingerprint
image and a set of points representative of the characteristic
features of a reference image are determined, respectively. For
each point in the set of points, a spectrum of values representing
the distances between the point and each other point in the set of
points is calculated.
[0009] U.S. Pat. No. 4,790,564 describes a method in which at least
one search print minutia is replicated by varying at least one of
its coordinates of location and angle, thereby obtaining at least
one additional minutia which is different from said search print
minutia in at least one of said coordinates. Said search print
minutia is compared against the minutiae of pre-stored file
prints.
[0010] In U.S. Pat. No. 4,135,147 means responsive to minutiae of
first and second patterns for selectively generating a plurality of
sets of neighborhood comparison signals representative of the
closeness of match and coordinate and orientation displacements
between minutiae neighborhoods of the first and second patterns are
described. Each set of neighborhood comparison signals comprises a
match score and associated coordinate and orientation displacement
signals respectively representative of the closeness of match and
coordinate and orientation displacements between a minutiae
neighborhood of the first minutiae pattern and a minutiae
neighborhood of the second pattern. The comparison uses a plurality
of three-dimensional ranges of different displacements in a
three-coordinate system for adding in each three-dimensional range
all match scores whose associated sets of displacement signals
represent displacements lying within that three-dimensional range
in order to find the three-dimensional range having the highest
combined match score, the highest combined match score being
indicative of the relative closeness of match between the first and
second patterns.
[0011] Block-based matching of fingerprints is described in U.S.
Pat. No. 5,239,590.
[0012] U.S. Pat. No. 5,613,014 describes a method to match
fingerprints using an attribute relational graph.
[0013] In U.S. Pat. No. 5,631,972 a hyperladder approach is used to
perform fingerprint matching.
[0014] U.S. Pat. No. 4,646,352 describes a method and a device for
matching fingerprints, wherein a pair candidate list is formed by
selecting minutia pairs with reference to a minutia list showing
original position and direction data given for minutiae by
principal coordinate systems preliminarily selected on a search and
a file fingerprint and those relation data of the minutiae which
are substantially independent of the coordinate systems. One of the
coordinate systems is transformed by those optimum amounts to
provide transformed position and direction data which are decided
by the original position and direction data of the minutia pairs of
the pair candidate list. A pair list is formed by precisely
selecting minutiae from the pair candidate list with reference to
the transformed position and direction data and the original
position and direction data given by the other principal coordinate
system and to the relation data. On forming the pair list, an
additional minutia list is preferably formed which shows the
transformed position and direction data and the last-mentioned
original position and direction data together with the relation
data.
[0015] A minutiae consists of a set of invariant and disciminating
features of a fingerprint. It is a local discontinuity of a
fingerprint ridge (ridge ending and ridge bifurcation).
[0016] One of the disadvantages of these known methods are the
uncertainty of the matching result.
SUMMARY OF THE INVENTION
[0017] It is thus an object of the present invention to determine a
degree of match between a search fingerprint and a reference
fingerprint with a higher degree of certainty than it is possible
using the known methods described above.
[0018] The object is met with a method, a device, a computer
readable medium and a computer program element for matching
fingerprints with features according to the independent claims.
[0019] A method for determining a degree of match between a search
fingerprint and a reference fingerprint comprising the
following:
[0020] a) Extracting at least one first search feature from a first
region of said search fingerprint thereby forming a local search
feature vector,
[0021] b) Extracting at least one second search feature from a
second region of said search fingerprint thereby forming a global
search feature vector, wherein said second region comprises said
first region,
[0022] c) Determining a first similarity degree by comparing said
local search feature vector with a local reference feature vector
of said reference fingerprint,
[0023] d) Determining a second similarity degree by comparing said
global search feature vector with a global reference feature vector
of said reference fingerprint and using said first similarity
degree,
[0024] e) Determining said degree of match from said second
similarity degree, wherein said feature vectors describe minutiae
of said fingerprints or a relation between minutiae of said
fingerprints.
[0025] A device for determining a degree of match between a search
fingerprint and a reference fingerprint comprising:
[0026] a) Means for extracting at least one first search feature
from a first region of said search fingerprint thereby forming a
local search feature vector,
[0027] b) Means for extracting at least one second search feature
from a second region of said search fingerprint thereby forming a
global search feature vector, wherein said second region comprises
said first region,
[0028] c) Means for determining a first similarity degree by
comparing said local search feature vector with a local reference
feature vector of said reference fingerprint,
[0029] d) Means for determining a second similarity degree by
comparing said global search feature vector with a global reference
feature vector of said reference fingerprint and using said first
similarity degree,
[0030] e) Means for determining said degree of match from said
second similarity degree, wherein said feature vectors describe
minutiae of said fingerprints or a relation between minutiae of
said fingerprints.
[0031] A computer readable medium having a program recorded
thereon, where the program is to make the computer execute a
procedure, comprising the following for determining a degree of
match between a search fingerprint and a reference fingerprint:
[0032] a) Extracting at least one first search feature from a first
region of said search fingerprint thereby forming a local search
feature vector,
[0033] b) Extracting at least one second search feature from a
second region of said search fingerprint thereby forming a global
search feature vector, wherein said second region comprises said
first region,
[0034] c) Determining a first similarity degree by comparing said
local search feature vector with a local reference feature vector
of said reference fingerprint,
[0035] d) Determining a second similarity degree by comparing said
global search feature vector with a global reference feature vector
of said reference fingerprint and using said first similarity
degree,
[0036] e) Determining said degree of match from said second
similarity degree, wherein said feature vectors describe minutiae
of said fingerprints or a relation between minutiae of said
fingerprints.
[0037] A computer program element which is to make the computer
execute a procedure comprising the following for determining a
degree of match between a search fingerprint and a reference
fingerprint:
[0038] a) Extracting at least one first search feature from a first
region of said search fingerprint thereby forming a local search
feature vector,
[0039] b) Extracting at least one second search feature from a
second region of said search fingerprint thereby forming a global
search feature vector, wherein said second region comprises said
first region,
[0040] c) Determining a first similarity degree by comparing said
local search feature vector with a local reference feature vector
of said reference fingerprint,
[0041] d) Determining a second similarity degree by comparing said
global search feature vector with a global reference feature vector
of said reference fingerprint and using said first similarity
degree,
[0042] e) Determining said degree of match from said second
similarity degree, wherein said feature vectors describe minutiae
of said fingerprints or a relation between minutiae of said
fingerprints.
[0043] By the invention local and global information (features) are
used, thereby enhancing the certainty of the result.
[0044] The result is robust to a nonlinear deformation of an image
of the fingerprint due to variation in pressure and the pressing
manner.
[0045] A further advantage of the invention is, that the method is
fast to compute thereby being suitable for an online fingerprint
verification and/or fingerprint identification.
[0046] The invention may be implemented in a programmable computer
device as well as with a special electronic circuit.
[0047] Advantageous embodiments of the invention are claimed in the
dependent claims.
[0048] The further described embodiments are valid for the method
as well as the device, the computer readable medium and the
computer program.
[0049] Features may be used which are independent from rotation
and/or translation of the fingerprints compared with a given
coordinate system.
[0050] The invention may further comprise the following
features:
[0051] said first region comprises a given first amount of neighbor
minutiae,
[0052] said second region comprises a given second amount of
neighbor minutiae,
[0053] said second amount is larger than said first amount.
[0054] The invention may further comprise the following
features:
[0055] Determining said first similarity degree for all minutiae in
said first region,
[0056] Determining a best match local structure pair of minutiae by
using said first similarity degrees,
[0057] Aligning all minutiae in said second region based on said
best match local structure pair, thereby forming said global search
feature vector.
[0058] By these features, even a better and more robust result is
achieved.
BRIEF DESCRIPTION OF THE DRAWING
[0059] FIG. 1 is a block diagram of a computer system which is used
to perform the steps of the method;
[0060] FIG. 2 is a flowchart of the method for determining the
degree of match;
[0061] FIG. 3 is a minutia local structure of two nearest
neighborhood minutiae to a minutia;
[0062] FIG. 4 shows a common region of a search fingerprint and a
reference fingerprint.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0063] Preferred embodiments of this invention and modifications
thereof will now be described with reference to the accompanying
drawings.
[0064] FIG. 1 shows a computer 100 comprising
[0065] a central processing unit (CPU) 101,
[0066] a storage device 102,
[0067] a bus 103, and
[0068] an input/output-interface 104.
[0069] Said central processing unit 101, said storage device 102
and said input/output-interface 104 are connected with said bus 103
for exchanging electrical signals.
[0070] Via said input/output-interface 104 and a first connection
105, said computer 100 is connected with a fingertip sensor 106,
with which an image of a fingertip 107 is taken from a finger 108.
Furthermore, via said input/output-interface 104 and a second
connection 109, said computer 100 is connected with a keypad 110,
and via a third connection 111, said computer 100 is connected with
a read device 112, like a card or a smartcard reader. Via said
input/output-interface 104 and a fourth connection 113 , said
computer 100 is connected with a display 114.
[0071] After said sensor 106 has taken said image of the fingertip,
said image is sent from said sensor 106 to said computer 100, where
it is stored in an image memory portion 115 of said memory 102. In
said memory 102, there is stored a computer program 117, which
makes said computer 100 execute a procedure comprising the
following steps, which will now be described in detail.
[0072] For the further explanation it is assumed, that the image of
the fingertip 107 comprises n minutiae, which are extracted from
said image 115.
[0073] For each minutia k (k=1, . . . , n) a minutia feature vector
FG.sub.k 116 is determined and stored in said memory 102 (cf. Step
201 in FIG. 2). Said minutia feature vector FG.sub.k 116 comprises
the following features: 1 FG k = ( x k y k k m k ) , ( 1 )
[0074] wherein
[0075] x.sub.k is a first coordinate of said minutia in a given
right-hand orthogonal coordinate system,
[0076] y.sub.k is a second coordinate of said minutia in said
coordinate system,
[0077] .phi..sub.k is a direction
(-.pi.<.phi..sub.k.ltoreq..pi.), which is defined as a local
ridge direction of an associated ridge of said minutia,
[0078] m.sub.k is a minutia type out of a given amount of minutia
types.
[0079] The global characteristics of said minutia such as said
first coordinate X.sub.k, said second coordinate y.sub.k and said
direction .phi..sub.k are dependent on the position and orientation
of said finger 108 on said fingertip sensor 106 when said fingertip
107 is acquired. These are not rotation and translation
invariant.
[0080] In a second step (step 202), for each minutia k of the image
115, the two next minutia i and j respectively are determined.
[0081] For each minutia k of the image 115, the following features
of said minutia are determined (Step 203):
[0082] a first distance d.sub.ki between a first minutia point k
and a point of a first neighborhood minutia i,
[0083] a second distance d.sub.kj between said first minutia point
k and a point of a second neighborhood minutia j,
[0084] a first ridge count n.sub.ki between said first minutia
point k and said point of said first neighborhood minutia i,
[0085] a second ridge count n.sub.kj between said first minutia
point k and said point of said second neighborhood minutia j,
[0086] a first relative angle .THETA..sub.ki between said first
minutia point k and said point of said first neighborhood minutia
i,
[0087] a second relative angle .THETA..sub.kj between said first
minutia point k and said point of said second neighborhood minutia
j,
[0088] a first ridge direction .phi..sub.ki, and
[0089] a second ridge direction .phi.kj.
[0090] Said first distance d.sub.ki is determined according to the
following formula:
d.sub.ki={square root}{square root over
((x.sub.k-x.sub.i).sup.2+(y.sub.k-- y.sub.i).sup.2)} (2)
[0091] wherein
[0092] x.sub.i is a first coordinate of said point of said first
neighborhood minutia i in said coordinate system,
[0093] y.sub.i is a second coordinate of said point of said first
neighborhood minutia i in said coordinate system.
[0094] Said first relative angle .THETA..sub.ki is determined
according to the following formula: 2 ki = { tan - 1 ( y k - y i x
k - x i ) - k if - < tan - 1 ( y k - y i x k - x i ) - k 2 + tan
- 1 ( y k - y i x k - x i ) - k , if tan - 1 ( y k - y i x k - x i
) - k - 2 - tan - 1 ( y k - y i x k - x i ) + k , if tan - 1 ( y k
- y i x k - x i ) - k > ( 3 )
[0095] Said first ridge direction .phi..sub.ki is determined
according to the following formula: 3 ki = { i - k , if - < i -
k 2 + i - k , if i - k - 2 - i + k , if i - k > ( 4 )
[0096] Said second distance d.sub.kj, said second relative angle
.THETA..sub.kj, said second ridge direction .phi..sub.kj are also
determined using formulas (2), (3), (4), respectively, wherein the
index i is then exchanged by the index j.
[0097] These features are independent from the rotation and
translation of said finger 108 on said fingertip sensor 106 when
said fingertip 107 is acquired.
[0098] After having determined said features described above, for
each of the n minutiae a local search feature vector FL.sub.k 118
is determined and stored in said memory 102 according to: 4 FL k =
( d ki d kj ki kj ki kj n ki n kj m k m i m j p k ) , ( 5 )
[0099] wherein
[0100] d.sub.ki is said first distance,
[0101] d.sub.kj is said second distance,
[0102] .THETA..sub.ki is said first relative angle,
[0103] .THETA..sub.kj is said second relative angle,
[0104] .phi..sub.ki is said first ridge direction,
[0105] .phi..sub.kj is said second ridge direction,
[0106] n.sub.ki is said first ridge count,
[0107] n.sub.kj is said second ridge count,
[0108] m.sub.k is a minutia type of minutia k,
[0109] m.sub.i is a minutia type of minutia i,
[0110] m.sub.j is a minutia type of minutia j,
[0111] p.sub.k is a parameter which describes the type of both the
ridges and valleys in the neighborhood of the minutia k.
[0112] As mentioned above, said parameter m describes the minutiae
type, wherein e.g. m=0 in case of a ridge ending and m>0 in case
of a ridge bifurcation. The parameter n.sub.ki describes said ridge
count, i.e. the number of ridges, between the minutiae k and i.
Said parameter p.sub.k describes the type of both the ridges and
valleys in the neighborhood of the minutia k and is obtained by
considering only the endings of said ridges and valleys. For
example, if there are 4 ridges and 4 valleys in the neighborhood of
the minutia k which are to be described, p.sub.k is a vector
consisted of 8 components. The value of each component of such a
vector may then be 0, 1 and 2 depending on whether the
corresponding ridge or valley has no ending, one ending or two
endings. The search for the ending can be done for the entire ridge
and valley or in a freely specified region only.
[0113] Therefore, the parameters n and p describe the local
characteristics of the minutiae in their respective neighborhood
and are determined by using the image of the search
fingerprint.
[0114] The element of the vector is ordered in such a way that the
first element corresponds to the nearest minutia found, followed by
the second nearest and so on.
[0115] Referring to FIG. 3, for said minutia k, a local structure
of the two nearest neighborhood minutia is shown including the
features described above. For each of the minutia, the local
structure is divided into four quadrants by two perpendicular axes.
A first axis x is normal to the direction of the minutia while a
second axis y is tangential to the minutia direction. The number of
minutiae in each quadrant shall not exceed a maximum value, g.
Typically, the number neighborhood minutiae taken into account is
less than 6 and the value for g in such a case is 2.
[0116] In a further step (step 204), a first similarity degree
cl(k1, k2) for all k1, k2 is determined by comparing each stored
local search feature vector FL.sup.S.sub.k1 of the search
fingerprint with local reference feature vectors FL.sup.R.sub.k2
119 which describe one or more reference fingerprints, the search
fingerprint is to be compared to in order to verify or identify,
respectively, a search fingerprint.
[0117] The reference feature vectors FL.sup.R.sub.k2 119 of the
reference fingerprint(s) are formed in advance in the same way as
said local search feature vector FL.sup.S.sub.k1 of said search
fingerprint.
[0118] Thus it is to be understood that there are stored n local
search feature vectors FL.sup.S.sub.k1 Of the search fingerprint to
be identified/verified. Further, in case of identification of a
search fingerprint the local reference feature vectors
FL.sup.R.sub.k2 119 of a free amount of reference fingerprints are
stored in advance in said memory 102 or in an external memory (not
shown), wherein the external memory is connected to the computer
100 via the input/output-interface 104. In case of verification of
a search fingerprint, the local reference feature vectors
FL.sup.R.sub.k2 119 of a reference fingerprint, by which the search
fingerprint is to be verified, are either selected from the local
reference feature vectors of the reference fingerprints stored in
the memory 102 or the external memory by the user via the keypad
110 or input from a card, smartcard or the like via the read device
112.
[0119] Said local search feature vectors FL.sup.S.sub.k1 are now
matched to said earlier stored local reference feature vectors
FL.sup.R.sub.k2, forming said first similarity degree cl(k1, k2)
for all minutiae k1 of said search fingerprint and for all minutiae
k2 of each of said reference fingerprints.
[0120] Said first similarity degree cl(k1, k2) is determined
according to the following formula: 5 cl ( k1 , k2 ) = { bl - W
.times. FL k1 S - FL k2 R bl , if W .times. FL k1 S - FL k2 R <
bl 0 , Others ( 6 )
[0121] with
W=(w.sub.d, w.sub.d, w.THETA., w.THETA., w.sub..phi., w.sub..phi.,
w.sub.n, w.sub.n, w.sub.m, w.sub.m, w.sub.m, w.sub.p), (7)
[0122] wherein
[0123] bl is a freely selectable local threshold,
[0124] W is a weight vector that specifies the weight associated
with each component of said feature vector,
[0125] FL.sup.S.sub.k1 is a local search feature vector of minutia
k1,
[0126] FL.sup.R.sub.k1 is a local reference feature vector of
minutia k2.
[0127] The possible range of said first similarity degree cl(k1,
k2) is 0.ltoreq.cl(k1, k2).ltoreq.1. Thus, cl(k1, k2)=1 implies a
perfect match while cl(k1, k2)=0 implies a total mismatch.
[0128] In a further step (step 205), a best match of local
structure pairs cl(b1, b2) of search feature vector and reference
feature vector is determined. Said best match is obtained by
maximizing said first similarity degree cl(k1, k2) as: 6 cl ( b1 ,
b2 ) = max k1 , k2 ( cl ( k1 , k2 ) ) . ( 8 )
[0129] Said best match of local structure pairs cl(b1, b2) of
search feature vector and reference feature vector is now used as a
reliable correspondence of the two compared fingerprints.
[0130] All other minutiae will be aligned based on this
corresponding pair, which will be named as base. Supposing said
base of a fingerprint found is (x.sub.b, y.sub.b,
.phi..sub.b).sup.T, (b=b1, b2), then all the other minutiae of the
respective fingerprint are described with respect to said base
minutia.
[0131] Thus, for each minutia, a global search feature vector
FG.sub.kb is determined using the following formula (step 206): 7
FG kb = ( d kb kb kb m kb ) = ( ( x k - x b ) 2 + ( y k - y b ) 2
tan - 1 ( y k - y b x k - x b ) - b k - b m k ) , k , k b . ( 9
)
[0132] wherein the vector parameters have the same meaning as those
used in the local search feature vector. However, the parameters n
and p being descriptive for the local characteristics of the
minutiae as mentioned above are, in general, not included in the
the global search feature vector to avoid unnecessary
repetition.
[0133] Having determined said global search feature vectors
FG.sup.S.sub.k1b, they are subsequently matched to earlier stored
global reference feature vectors FG.sup.R.sub.k2b 120, which were
determined in the same way as said global search feature vectors
FG.sup.S.sub.k1b using formula (9) described above.
[0134] The result of said matching is a second similarity degree cg
(k1, k2) for all minutia pairs (k1, k2) of said search fingerprint
and of said reference fingerprints.
[0135] Said second similarity degree cg (k1, k2) is determined
according to the following formula (step 207): 8 cg ( k1 , k2 ) = {
cl ( k1 , k2 ) , if FG k1b S - FG k2b R < bg 0 , Others , ( 10
)
[0136] wherein bg is a freely selectable global threshold
vector.
[0137] Equation (10) increases the reliability of the result
because cg (k1, k2) is nonzero only if minutiae k1 and k2 are both
locally and globally matched. This means with other words that the
second similarity degree is determined by both comparing said
global feature vectors and using the first similarity degree.
Moreover, through the use of Equation (10) a soft decision is
provided instead of a simple result "matched" or "unmatched".
[0138] Finally (step 208) a degree of match ms is computed
according to the following formula: 9 m s = cg ( k1 , k2 ) max ( N1
, N2 ) , ( 11 )
[0139] wherein N1, N2 are the numbers of the minutiae in a common
region 401 (cf. FIG. 4) of said search fingerprint and said
reference fingerprint respectively. Said common region 401 is the
region where said search fingerprint and said reference fingerprint
overlap each other using said given coordinate system. Said common
region 401 is obtained by transforming a rectangle 402 which
defines a region of interest of said reference fingerprint to said
search fingerprint by an appropriate angle and translation amount
as given by the corresponding base information. This is graphically
shown in FIG. 4 where a shaded region is said common region
401.
[0140] Accordingly, the degree of match is determined from said
second similarity degree and the number of minutiae in said common
region of said search and said reference fingerprints.
[0141] Two fingerprints will be verified as that of the same finger
if and only if
[0142] the number of the minutiae in said common region 401 (max
(N1, N2) is larger than a first predefined threshold N, and
[0143] an area cs of the common region 401 is larger than a second
predefined threshold S, and
[0144] said degree of match ms is larger than a third predefined
threshold T.
[0145] By taking into consideration not only the degree of match,
but also the number of the minutiae in said common region and the
area of said common region of the search fingerprint and the
reference fingerprint according to this embodiment of the
invention, the reliability of the fingerprint
identification/verification is significantly increased.
[0146] After having determined a result, whether said search
fingerprint is matched with a reference fingerprint according to
the method described above, said computer 100 sends a result signal
to said display 114 where the result is presented to a user.
[0147] Then, the computer program stops execution (step 209).
[0148] While the preferred embodiments of this invention and
modifications thereof have so far been described with reference to
the accompanying drawing, it will now readily be possible for one
skilled in the art to carry this invention into effect in various
other manners.
[0149] In the embodiment described above the two next minutiae i
and j, respectively, are taken into consideration for determining a
local search feature vector. However, there is no limit in the
amount of how many neighborhood minutia may be taken into
account.
[0150] The embodiment described above relies on only one best
matched of local structure pairs cl(b1, b2) of search feature
vector and reference feature vector. In an alternative it is also
possible to use a plurality of pairs as a plurality of bases, which
would even improve the achievable reliability of the result.
[0151] Said degree of match may also be obtained by simply adding
the number of the matched minutiae.
[0152] Furthermore, in an alternative of the embodiment described
above, one may also use the following criterion for determining a
said best match structure pair: 10 cl ( b1 , b2 ) = min k1 , k2 ( ;
FL k1 S - FL k2 R r; ) ( 12 )
[0153] It should be mentioned, that in this alternative, said
weight vector W is not used. A plurality of bases may be used in
this case as well.
* * * * *