METHOD OF PALM PRINT IDENTIFICATION
This is a Continuation-in-part of application number 10/253,914 filed on 25 September 2002.
BACKGROUND TO THE INVENTION
1. Field of the Invention
The invention relates to biometrics identification, and in particular to a method for analyzing a palm print for the identification of an individual.
2. Background Information
Computer-aided recognition of individuals is becoming increasingly important in our information society. Biometrics is one of the most important and reliable methods in this field. The most widely used biometric feature is the fingerprint, whereas the most reliable feature is the iris. However, it is very difficult to extract small unique features (known as minutiae) from unclear fingerprints and iris scanners are very expensive. Other biometric features, such as the face and voice, are less accurate and they can be mimicked easily. ■
Palm print recognition for personal identification is becoming increasingly popular. Known methods include analyzing an image of a palm print to identify singular points, wrinkles, delta points and minutiae in the palm print. However, this requires a high-resolution image. Palmprint scanners that capture high-resolution images
are costly and rely on high performance computers to fulfill the requirements of real-time identification.
One solution to the above problems seems to be the use of low-resolution images. In low-resolution palm print images, however, singular points and minutiae cannot be observed easily and only a small proportion of wrinkles are significantly clear. This makes it is questionable whether the use of such features from low resolutions provide sufficient distinctiveness to reliably identify individuals amongst a large population.
SUMMARY OF THE INVENTION
It is an object of the present invention to provide a method of biometrics identification, and in particular a method for analyzing a palm print for the identification of an individual, which overcomes or ameliorates the above problems.
According to the invention there is provided a method of biometrics identification including: obtaining an image including a portion of a hand of an individual, analyzing the image to find two or more feature parameters defining different characteristics of the hand, said parameters including a geometrical features parameter, a palm line features parameter or a palm texture features parameter.
comparing the two or more feature parameters with reference information in a database.
Preferably, the geometrical features parameter comprises a relationship between two or more points on the image of the hand.
Preferably, the geometrical features parameter is a line intersecting two or more of a point between the first finger and middle finger, a point between the third finger and little finger, and a point defining the intersection of a palm line with a boundary of the hand.
Preferably, the geometrical features parameter is a line intersecting two or more of a point between the first finger and middle finger, a point between the third finger and little finger, and a point defining the intersection of a hear line or life line with a boundary of the hand.
Preferably, the geometrical features parameter includes two lines intersecting at least three points on the image of the hand, and an angle between the two lines.
Preferably, finding the palm line features parameter or palm texture features parameter includes extracting a repeatable sub-image from the image.
Preferably, finding the palm line features parameter includes finding the first-order and second-order derivatives of the sub-image in two or more directions to identify lines in the image, and calculating a value for total strength for the lines.
Preferably, finding the palm texture features parameter includes calculating a total texture energy for the image.
Preferably, finding the palm texture features parameter includes calculating a total texture energy for the image using an equation of the form
rs TE(JJ3K) =
PιWxWy
where the rs sum is over all pixels within a square window W of size Wx x Wy centered on the pixel at i,j, Ak is a zero sum "tuned" 5 x 5 convolution mask, and P
is the normalizer P2 = ]T. (4y)2 ■
Further aspects of the invention will become apparent from the following description, which is given by way of example only.
BRIEF DESCRIPTION OF THE DRAWINGS
Embodiments of the invention will now be described with reference to the accompanying drawings in which:
Figure 1 shows the surface features of a palm print,
Figure 2 shows the geometrical features of a palm print,
Figures 3 to 5 illustrate the steps to find two of the geometrical features of Figure 2,
Figures 6 to 9 illustrate the steps to obtain a normalized palm print image,
Figures 10 to 13 illustrate identified surface features of the palm print image in Figure 9,.
Figures 14 to 17 illustrate 'tuned masks' for palm print texture extraction for horizontal, vertical, 45° and -45 ° lines, and
Figures 18 to 20 are graphs of verification test results for a method according to the invention.
DESCRIPTION OF THE PREFERRED EXAMPLE
In a preferred embodiment of the invention palmprint identification uses comparison of one or more feature parameters, which define a set of physical properties whose values describe different characteristics of the palm, with stored parameter information. In another embodiment identification relies on comparison of three feature parameters describing characteristics of the palm with stored parameter information.
The method of identification includes obtaining an image of the hand of an individual, analyzing the image and building two, or three, feature parameters describing different characteristics of the hand and palm print, and comparing these parameter to reference parameters stored in a database. The feature parameters are a geometrical feature vector (GFV) which describes geometric characteristics of the hand, a palm line feature (PLF) parameter which describes the characteristic lines on the palm, and a texture feature vector TFV) which the describes the texture characteristic of the palm. The following sections described how to obtain these feature parameters.
Geometrical Feature Extraction
Referring to Figure 2, the image of a hand has easily identifiable features comprising points P1, P2, P3, P4. P1 lies between the first finger and middle finger,
P2 between the third finger and little finger, P3 is the intersecting point of the hear line with the palm boundary and P4 is the intersecting point of the life line with the palm boundary. The relationship between the points P-i, P2, P3, P4 can be defined by straight lines with Li, L2, L3 and L4 representing the distance between points Pi and P2, P2 and P3, P3 and P4, P4 and Pi, respectively. Also, an angle a is the number of degrees between the lines L2 and L3 joining points P2, P3, and P4.
The geometrical feature vector is GRV=(L1, L2, L3, L4, a), and it is unique to an individual hand. The geometrical feature vector is used to identify an individual
from their palm print. To obtain GFV, the points Pi, P2, P3 and P4 must be found. Because these points exist on the boundary of the image and between prominent features such as the figures and major palm lines they can easily be found in low resolution images using known image processing techniques.
In the preferred embodiment of the invention points Pi, P2 are also needed to define a repeatable sub-image for palm line feature extraction. Palm line feature extraction identifies the hear line and life line, and so points Pi, P2, P3 and P4 can be found as part of the palm line feature extraction to obtain the GRV (Li, L2, L3, L4, a ).
Palm Line Feature Extraction
A person does not always place their hand in the same position of the palm print scanning device and so it is desirable, but not essential, that the palm print sub- ϊmage is extracted and 'normalized' before PLF parameter is defined. This involves defining a repeatable sub-image of the palm area of the raw palm print image from a palm print scanner. This improves the accuracy of recognition. The points Pi and P2 defining the areas between the figures are obtained and used to find the sub-image.
Figure 3 shows a low-resolution image of a portion the inside surface of a hand that was obtained using a CCD camera. The sub-image of the palm area is identified by finding the points P1 and P2 between fingers building a coordinate
system in which parameters that define the sub-image can be found. The preferred embodiment has six main steps, which are given below.
Referring to Figure 4, the first step is to apply a low pass filter, L(u,v), such as Gaussian, to the original image, 0(x,y). Then, a threshold, Tp, is used to convert the convoluted image to a binary image, B(x,y).
Referring to Figure 5 the second step is to obtain the boundaries of the holes between the first finger and middle finger, and between the third finger and little finger using a boundary tracking algorithm. These are defined as (FjXj, Fy- j): where i=1, 2. The boundary of the hole between ring and middle fingers is not extracted since it is not useful for the following processing. These holes define points Pi and P2. Boundary tracking algorithms are common and well known in the image process field.
Referring to Figure 6, the third step is to find a straight line 2 that passes through points Pi and P2. If Pi and P2 are two points on (FiXj1 Fiyj) and (F2Xj, F2Yj), respectively, where Pi = (xit y-i) and P2 = (X2, y2), then the line y = mx + c passing through Pi and P2 satisfies the inequality, Fjyj≤mFjXj+ C, for all / and j. The line y = mx + c is the tangent of the two holes between the Fingers. This line, represented by numeral 2 in Figure 6, is the Y-axis of a coordinate system used for determining the location of a sub-image 1.
The fourth step is to find the X-axis of the coordinate system. The X-axis is a line 3 passing through the midpoint of Pi and P2 and perpendicular to line 2.
The fifth step is to extract the sub-image 1 with a dynamic size on the basis of the coordinate system. The size and location of the sub-image 1 are based on the
Euclidean distance (D) between points Pi and P2. The points 4, 5, 6, 7 representing the corners of the sub-image 1 in the coordinate system are (0.25D, 0.5D), (1.25D,
0.5D), (0.25D, -0.5D) and (1.25D, -0.5D) respectively. Thus the sub-image 1 is square with a. distance along each side equal to the Euclidean distance and symmetrical about the Y-axis line 3. Because the sub-image is based on feature of the hand (i.e. the area between the fingers) it is repeatable for each individual hand.
Figures 7 and 8 shows the x and y axes 2, 3 of the coordinate system and the sub- image 1 overlaid on the raw image of Figure 3. The sixth step is to normalize the sub-image 1 to a standard size using bilinear interpolation for feature extraction. Figure 9 shows a normalized sub-image 1.
v
To find Point P3 and P4 the palm-lines are extracted first by using the following method. And then, according to the length, position and strength of palm-lines, the heart line and life line can be obtained. Lastly, the Point P3 and P4 are obtained by finding the intersecting points of the heart line and life line with the boundary of the palm.
Palm-lines are a kind of roof edge. A roof edge can be defined as a discontinuity in the first-order derivative of a gray-level profile. In other words, the positions of roof edge points are the zero-crossing points of their first-order derivatives. The magnitude of the second-derivative indicates the strength of the roof edge. These properties can used to detect palm-lines. Because the directions of palm-lines are arbitrary, detection must be done in different directions. The lines that can be detected in θ direction are called Directional Lines in θ direction. The directional
of horizontal lines is in the θ = 0° direction.
Suppose that I(χ,y) denotes an image, in order to improve the connection and
smoothness of the lines, the image is smoothed along the line direction (say, the
horizontal direction) by a 1-D Gaussian function Gσ with variance
σ, : Is = I* Gσs (Equation 1),
where * is the convolve operation.
The first- order derivative /' and second-order derivative /" in the vertical direction are obtained by convolving the smoothed image Is with the first-order derivative
( Gσ'd ) and second- order derivative ( G^ )of a 1-D Gaussian function Gσι with
variance σd . The equations are:
I' = IS *(Gσ'd)τ = (I*Gσs)HGσ'f = I*{Gσs *(Gσ'd)τ) (Equation 2) and
r = Is * (G:d )τ = (I * Gσs) * (G:d f = IHGσs * (G:d )τ). (Equation s
where T is the transpose operation and * is the convolve operation.
If the directional line detectors H°, H% are:
H1 0 = Gσs * (Gσ'd f (Equation 4) and
Hl = Gσs *{Glύ)τ (Equation 5),
Then
I' = I * F1 0 (Equation 6), and
/" = /*#° (Equation 7)
where H1 0 , H° are called the horizontal line detectors (directional line detectors in
0° direction).
The horizontal lines are obtained by looking for the zero-cross points of /' in the vertical direction and their strengths are the values of the corresponding points in. /" . So
jl'(x,y), if I'{x,y) = 0 or I'{x,y) x I'{x + Xy) < Q; ,- .. ,« ■ L0(x,y) = \ j . (Equation 8)
[ 0 otherwise.
Whether the roof edge is a valley or peak is given by the sign of the values in
. Positive represent a valley and minus signs represent a peak. Since all
palm-lines are valleys the minus values in
can be discarded. So
Ll(χ,y) = \ύ^y)> '/ 4(*oO >0; (Equation 9)
[ 0, otherwise.
Compared to ridges, the palm-lines are much thicker. Therefore, a threshold, T 1
can be used to get rid of ridges from L2 0. So
L0(x,y) = lLl iX'y)' if Ll (X> y) ≥ T; (Equation 10) [ 0, otherwise.
L0 is called the directional line magnitude image in 0° direction.
Because the directions of palm-lines are arbitrary, detection must be done in
different directions. The directional line detectors H?, H% in a direction θ can be
obtained by rotating H°, H° by angle θ . And the line points can be obtained by
looking for the zero-cross points in # + 90° direction. After discarding the peak roof
edges and thresholding the directional line magnitude image Lθ in θ direction is
obtained.
There are two parameters σs and σd in the directional line detectors H° , H^ . σs
controls the connection and smoothness of the lines and σd controls the width of
the lines which can be detected. A small value of σs results in the poor connection
and poor smoothness of the detected lines while a large value σs results in the loss
of some short lines and the line segments whose curvature is large. The thin roof edges cannot be extracted when σd is large. In general, palm-lines are long,
straight and narrow, and so σs should be large while σd should be small for palm-
line detection. For example σs - 1.8 and σd = 0.5.
'
Figures 10 to 13 illustrate directional line magnitude images of the palm in Figure 9 for θ = 0°, 45°, 90° and 135° respectively, with σs and σd are set to 1.8 and 0.5,
respectively.
The following explains how to compute the directional line energy (DLE). Let
Lθ (1 ≤ j ≤ K) be K directional line magnitude images of palm print image I . Each
Lθ, is divided equally into MxM blocks, labeled 1,-,MxM . The directional line
energy (DLE) of block i in θ} direction is defined as:
m
^ = ∑[4, (*c^c)]2, l ≤ i ≤ Mx M, (Equation 11)
where m is the total number of points in the block and {χι,yι), (x2,y2), ---, (Xn ,ym)
are the coordinates of the points. DLE E^ reflects the strength of the palm-lines in
block i in direction θj .
A if x Mx M -dimensional vector V is constructed for the whole palm print. The equations for vector V is:
V = {E\,El,---X;M,---,E\κ,Eθ 2 κ,---X;M). (Equation s)
The vector V is normalized by using the maximum and minimum values of its
components. The equations for the normalized vector V is:
V
,e
θ 2 κ ,-,ef;
M). (Equation 13)
where
e
θ ι j l ≤ i ≤ M x M, l ≤ j ≤ K. (Equation 14)
and £max and Emia are the maximum and minimum values of the components of
V respectively. The normalized vector V is called a Palm-line feature (PLF) with K directions.
As described above, to construct a PLF, the palm print image is divided into MxM blocks definitely. Each point on a directional line has only two states: either it belongs to a block or not. Because it is impossible to remove all of the translations and rotations during the preprocessing stage, the points around the boundaries of blocks in an image may not be in the same block of the image captured from the same palm at different time. To avoid this problem, a method of fuzzy block and fuzzy division are used.
Let 21 be a positive integer, and U be the collection of all points in the palm print.
Then, a fuzzy block, FBk , whose central point is (xk,yk) , can be defined as follows.
FBk = {μk(i,j)/(i,j)} , , (Equation 15)
where (i,j) is the coordinates of the point and μk(i,j) is the~ corresponding
membership function in the .FB k . μk(i,j) is given by:
where ' d = max(| i -xk \, \ j - yk |) . (Equation 17)
According to Equations 16 and 17, the membership grade of a point in a fuzzy block is computed by examining the distance from it to the central point of the block.
We call MxM fuzzy blocks, which are labeled
(0, 0)5 (0, 1), • • •, (z, j), ■ ■ •, (M - 1, M - Y) , a M x M fuzzy division of an image with size
NxN if and only if
3 x(=/+— xzx/, (Equation 18)
xM-ι=yM-i =1 +-X(M-Y)Xl = N -ϊ, (Equation 20)
where (χ,,.y,) is the center point of block (i,j) (z,y = (),•••, M-I); M and 2/ are
two positive integers.
In fuzzy division of an image, each fuzzy block overlaps —χ2l = l2 pixels of the
adjacent blocks, thus there is no definite boundary between tήe fuzzy blocks, so Equation 20 can be rearranged as:
M = 2Nzi (Equation 21)
Because both M and 21 are positive integers. If for example N = 128, then M only has four values: 85, 21, 5 and 1, which can satisfy Equation 21. The corresponding values of / are 1,4, 16 and 64, respectively. That is, there exist four
fuzzy divisions, i.e. a 85 x 85 fuzzy division, a 21 x 21 fuzzy division, a 5 x 5 fuzzy
division and a1 χ1 fuzzy division. The length of the corresponding PLFs is 85 x 85
x K = 7,225K, 21 x21 x K = 441K, 5 x5 xK = 25K and 1 x 1 x K = K (where K is
the number of the directional line magnitude images used to compute PLFs),
respectively. Obviously, the 1 x 1 fuzzy division is not suitable for palm print
recognition. Because the storage requirements and the computational complexity
are direct ratio to the length of the vectors, the PLFs of the 85 x 85 and 21 x 21
fuzzy division are too long to use in palm print recognition. Therefore, the 5 x 5
fuzzy division is employed to compute PLF.
For the.fuzzy block, p , Equation 11 can be modified as follows:
where m is the total number of points in this block and (X^y1), (χ2,y2),---, (xm,ym)
are the coordinates of these points. To obtain the definition of the PLF for the fuzzy
division of the palm print Eθ'_ is replaced with Eθ ι (l≤i≤MxM, l≤j≤K) in the
Equations 12 to 14,
Texture Feature Vector Extraction
The texture energy (TE) of a palm print image I is defined as below:
TE(i,j,k) = - > ■* fc t f" , (Equation 23)
PlWχWy
where the rs sum is over all pixels within a square window W of size Wx x Wy
centered on the pixel at /J1 Ak is a zero sum "tuned" 5 x 5 convolution mask as
shown in Figures 14 to 17, and P is the parameter normalizer P2 = ∑, (4j)2 • TE
is called a texture energy image.
Figures 14 to 17 illustrate four kinds of 'tuned masks' for global palm print texture extraction. Figures 14 is the Horizontal line, Figures 15 is the Vertical line, Figures 16 is the 45° line and Figures 17 is the -45 ° line.
The texture energy image TE is divided first into MxM blocks equally. Then the local texture energy for each block its is computed using:
LTE = ^-∑∑∑TE(xi,yJ,k) , (24)
LN ,-=i J-] k=0
where Lx M is the size of the block and (x,,^) are the coordinates of the points
in the block.
Finally, a MxM vector is formed by using the local texture energies of all blocks, which is called texture feature vector (TFV).
Similarity Measurement
Similarity Measurement is used to compare the measured palm print parameters with reference parameters stored in an identification database.
For the GFV and PLF parameters Euclidean distance is used to measure the
similarity. The Euclidean distance of two vectors, V1 and v2 , are defined as follows:
u β = J∑(v_(Q -v2 (Q)2 . ■ (Equation 25)
where M is the length of the vectors, V1 is the GFV or PLF extracted from the palm
print, and v2 is a vector parameter stored in an identification database.
For the TFV parameter the angular distance is used to evaluate the difference of two feature parameters. Let X and V be two local texture energy feature vectors. The angular distance is as:
where T represents transpose of a vector and is a norm of a vector
The following experimental results illustrate the effectiveness of a system according to the invention. Palm print images were collected from 160 individuals, using a CCD-based palm print scanner. The palm print images were processed and vectors stored to establish a palm print database. The individuals were asked to provide 20 images of their right and left palms and so there were 3,200 palm
prints in the database. The resolution of the images was 384x284 pixels, at 75dpi.
The sub-image 1 size is 128x128 pixels. . '
For testing the PLF features, six images of each palm were used as training, samples to establish the database, and the remaining four were used as testing
samples. The variances σs and σd of the directional line detectors Hf , E{ were
1.8 and 0.5 respectively, and a Hysteresis threshold is used in which the high
threshold is obtained by using Otsu' method to the non-zero points of ύθ and the
low threshold is chosen as the minimum value of the non-zero points of L\ : A 5x5
fuzzy division of the images is used to compute PLFs. The templates are obtained by averaging PLFs of the training samples from the same palms. PLFs are computed by using six directional line magnitude images (the corresponding direction angles are 0°, 30°, 60°, 90°, 120° and 150°).
An accuracy of 97.5% was obtained in one-against-320 matching tests. The false rejection rate (FRR) and the false acceptance rate (FAR) of one-against-one matching tests at different thresholds are plotted in Figure 18. The equal error rate (EER, where FAR equal FRR) is 2.08%.
For testing the TFV parameter Palm print images were collected from 193 individuals using a CCD-based palm print scanner. The palm print images were processed and vectors stored to establish a palm print identification database. The individuals were asked to provide 10 images of their right and left palms and so there were 3,834 palm prints in the database.
The verification accuracy is shown in Fig 19. This presents the probability distributions of genuine and impostor of TFV. Figure 20 is the receiver operating characteristic (ROC) of TFV. This is a plot of genuine acceptance rate against false acceptance rate for all possible operating points.
Where in the foregoing description reference has been made to integers or elements having known equivalents then such are included as if individually set forth herein.
Embodiments of the invention have been described, however it is understood that variations, improvements or modifications can take place without departure from the spirit of the invention or scope of the appended claims.