An apparatus for automatic fingerprint classification

Abstract: In fingerprint pattern classification, radial scanning vectors are used. A space between two adjacent ridge lines including a core point is traced by radial scanning. Radial distribution of number of cross points from the core point is a clue to a fingerprint classification.

Description: This invention relates to an apparatus for automatic fingerprint classification. There are two types of processing fingerprint images for automatic fingerprint classification. In a first type of processing, a fingerprint image is subdivided in a plural number of subregions, and for each subregion, a ridge line direction is quantized, a core point of the fingerprint image is determined from quantized ridge line directions of subregions, and the fingerprint is classified in accordance with the shape and the direction trend of ridge line directions in an area near to the core point. This type of processing is disclosed, for example, in US-A-5,337,369. In a second type of processing, ridge lines of a fingerprint are processed to produce a thin line in the center of each ridge line. This type of processing is disclosed, for example, in JP-A-153687/'88, wherein thinned ridge lines are approximated by fragmental straight line segments. The fingerprint is classified in accordance with direction distribution of these straight line segments. In these two types of processing, there are advantages and disadvantages. When a fingerprint is smudged, ridge line direction of a smudged subregion can not be determined, or mistakenly determined. This is a disadvantage of the first type of processing. And, in the method disclosed in JP-A-153687/'88, the core point is not used for classification. This is a disadvantage of the second type processing, as ridge line directions in a neighborhood of the core point are most important for classification. Therefore, an object of the present invention is to provide an apparatus for automatic fingerprint classification wherein advantages of the two types of processing are combined. This object is achieved with the features of the claims. An apparatus for automatic fingerprint classification according to the invention is set out in claim 1. For the following descriptions, position coordinates of a fingerprint image will be determined. The core point of a fingerprint is used as an origin of the coordinates, a line parallel to a joint of the finger is determined as the X axis of an x-y rectangular coordinates. The tip of the finger is taken as +y direction of the coordinates. In a first embodiment of this invention, a space including the core point between two ridge lines is traced by a joint of straight line segments, and from the shape of the result of tracing, the fingerprint is classified. In a second embodiment of this invention, a predetermined number of vectors of a predetermined length starting from the core point are used for scanning ridge lines of a fingerprint image. Number of ridge lines crossed by a vector is represented as an ordinate of a graph with the direction of the vector as an abscissa. From the shape of the graph, the fingerprint is classified. When an ambiguity remains for classifying a fingerprint by the second embodiment of this invention, a third embodiment of this invention can be applied, and the starting point of a vector having the smallest number of crosspoints, is displaced on the Y axis, and the ridge lines are scanned by the new vector. Further objects, features, and advantages of this invention will become apparent from a consideration of the following description, the appended claims, and the accompanying drawings in which the same numerals indicate the same or the corresponding parts. Fig. 1 shows a block diagram illustrating an embodiment of this invention. Fig. 2 shows a flow chart of a first embodiment of this invention. Fig. 3 shows a block diagram representing functions performed by program control in a processor for classification of Fig. 1. Figs. 4 show scanning vectors used in the first embodiment of this invention. Figs. 5 show an example of ridge line tracing in the first embodiment of this invention. Figs. 6 illustrate a result of tracing in the first embodiment of this invention. Fig. 7 illustrates means for classifying fingerprints in the first embodiment of this invention. Fig. 8 shows a flow chart of a second and a third embodiment of this invention. Figs. 9 show scanning vectors used in the second embodiment of this invention. Fig. 10 illustrates means for classifying fingerprints in the second embodiment of this invention. Figs. 11 show scanning vectors used in the third embodiment of this invention. Fig. 12 shows integrated means for fingerprint classification of this invention. Referring to Fig. 1, a fingerprint image input unit 10 comprises a photo-electric transducer for producing an electrical signal of a fingerprint picture taken, for example, from a surface of a finger placed on a transparent plate or from a fingerprint picture printed on a sheet. The electrical signal output from the fingerprint image input unit 10 is converted to digital signals by an A/D converter 11, and then converted to binary(black or white) signals by a binary converter 12. A set of binary signals from the binary converter 12 is stored in the fingerprint image memory 170(Fig.3) in a two-dimensional area, and each binary signal representing a point of a fingerprint picture is stored at an address of the image memory 170 corresponding to the coordinates position of the point in the fingerprint picture. A processor for classification 17 classifies the fingerprint pattern stored in the image memory 170. An input unit 18 is used for entering necessary informations to the processor 17, and an output unit 19 is used for displaying necessary informations from the processor 17. An I/O interface unit 13 serves as an interface between the processor 17 and the I/O units 12, 18 and 19. A CPU 14 has a program memory 15 and a work memory 16 wherein the fingerprint image memory 170(Fig. 3) is included. Data from the image memory 170 is processed by a program controlled CPU 14 in the processor for classification 17. Fig. 3 shows a block diagram representing functions of the processor for classification 17 of Fig. 1. In the flow chart of Fig. 2, program steps from 21 to 24 are well known, for example as disclosed in JP-A-138174/'80, and in JP-A-271883/'89. And these steps will not here be explained. At a step 22, a fingerprint image data are binarized before ridge direction extraction. Line thinning in a step 23 is a recommended but is not an indispensable step of this invention. In descriptions of later paragraphs, it will become apparent that data collection in this invention is far easier for thinned ridge lines, but is feasible when the fingerprint image is represented in binary signals. Steps 25, 26, and 27 are described in connection with Fig. 3, Figs. 4, Figs. 5, and Figs. 6. At the step 24, the core point determination unit 171 determines the positional coordinates of the core point in the fingerprint image memory 170. And these positional coordinates are made as an origin of the original coordinates. This origin of the original coordinates is stored in a tracing vector memory 172, as a starting point of tracing. At a step 25, a scanning unit 173 scans the fingerprint image memory 170 for distance measurement. Sixteen vectors of a same magnitude V and spaced in a uniform angular spacing of 2π/16 in the 2π space, and each originating at the coordinates origin(which is a core point 41) are used for scanning the fingerprint image memory 170 where the fingerprint image is shown as binarized data 4. These vectors are numbered from 400 to 415 as shown in Fig. 4(b), the vector 400 being coincident with the Y axis and the vector 412 being coincident with the X axis. For scanning in a region where x<0, the fingerprint image 4 is scanned by vectors 401-407, all of which have components in -x direction. Referring to Fig. 5(a), in this scanning, a first cross point of a vector and a ridge line is detected, the distance of the cross point from the origin is calculated, and cross points having a distance less than a predetermined threshold T1(represented by a circle of radius T1 with the center at the origin) are ignored. Of all the cross points outside the circle, a cross point on a vector nearest to the -X axis(the vector 404, including the vector 404 itself) (represented by a small circle on the vector 405 in Fig. 5(a) ) is selected. Then, the step goes to a step 26 and a next coordinates determination unit 174 is put in action. When the cross point have distance "a" from the origin, the next temporary coordinates are determined in a following process. The vector 405 is -X axis of the next temporary coordinates, and a point on the vector displaced by a/2 from the previous origin(core point 41) is the new origin of the next temporary coordinates. The direction of the vector 405 and the displacement a/2 are recorded in the tracing vector memory 172. A judgement unit 175 performs the judgement at a step 27. When the origin 51 of the new temporary coordinates is in the predetermined range(as determined by a circle connecting the end points of the vectors), the step returns to the step 25, and the image memory 170 is scanned by vectors 402-409, all of which have a component along the vector 405. As shown in Fig. 5(b), the next -X axis of a temporary coordinates is determined as the vector 406. The vector 406 and the displacement of the origin are stored in the tracing vector memory 172. When the answer at the step 27 is yes, the step goes to a step 28, where coordinates are returned to the original coordinates, and the program step is returned to the step 25 through a step 29, for tracing in an area where x>0. The fingerprint image 4 is scanned by vectors 415-409, all of which have components in +x direction. The tracing in the +x area is performed in a same way as in the -x area, repeating the steps 25, 26, 27, 25. When the tracing in the +x region is finished, the result of tracing stored in the tracing vector memory 172 will be as shown by Figs. 6. Black dots in Fig. 6(a) represent origins of temporary coordinates determined by the step 25 and the core point 41. Dotted line segments represent temporary -X axes, and solid line segments represent temporary +X axes. At a step 30, ridge line shape is detected from the result of tracing as shown in Fig. 6(a) by a classifier unit( I )176. The locus 61 and 62 represent ridge line shape in -x and +x areas respectively. The locus 61 is represented by a ridge line shape 63 (Fig. 6(b)) of a straight line in the direction of the vector 406, since all the straight line segments in the locus 61 have components in -x direction and components in -y direction. The locus 62 is represented by a ridge line shape 64(Fig. 6(b) ) of a semicircle, since there are at least one straight line segment having a component in +x direction and at least one straight line segment having a component in -x direction. An auxiliary line 65 represents a line where x=0. At a step 31, the fingerprint is classified in accordance with the ridge line shape detected at the step 30. Referring to Fig. 7, there are four different ridge line shapes, and each ridge line shape represents a corresponding pattern shown in Fig. 7. The result of the classification obtained at the step 31 is displayed at the output unit 19 through the I/O interface unit 13. Now referring to the flow chart of Fig. 8, the second and the third embodiment of this invention is described. After the step 24, the fingerprint image 4 is scanned by a scanning unit 177 for cross points determination at a step 81. In an embodiment shown in Figs. 9, there are seventeen scanning vectors of a same magnitude as shown by 900-916 in Fig. 9(b). These seventeen vectors have uniform angular spacing of π/16 in a π space where y<0. The direction of the vector 900 coincides with -X axis, that of the vector 908 coincides with -Y axis, and that of the vector 916 coincides with +X axis. In this scanning, a number of cross points n between the scanning vector and the ridge lines are detected. For example, n(908) denotes number of cross points between the vector 908 and the ridge lines. And in the step 81, the detected number n is represented as an ordinate 94 of a graph shown by Fig. 9(c) with the direction of the scanning vector as an abscissa 93. The vector 900 is placed at the origin 95 of the abscissa, the vector 908 is placed at the center 96 of the abscissa, and the vector 916 is placed at the far end 97 of the abscissa. The distribution 98 of n thus determined is used as a key for fingerprint classification. At a step 82, the distribution 98 obtained at the step 81 is examined as to whether a further scanning is necessary or not. When the distribution 98 has two minimum points as shown in column(e) of Fig. 10,, it is decided that a further scanning is necessary, and the step goes to a step 84. Otherwise, the step goes to a step 83, where the fingerprint is classified by a classifier( II )178 in accordance with Fig. 10. When a minimum point of the distribution 98 is near the center 96 of the abscissa 93, the fingerprint is classified as a whorl, as in column(b) of Fig. 10. When the minimum point is in the left of the center 96 of the abscissa 93, the fingerprint is classified as a whorl or a left loop, as in column(c) of Fig. 10. And when the minimum point is in the right of the center 96 of the abscissa 93, the fingerprint is classified as a whorl or a right loop, as in column(d) of Fig. 10. At the step 84, the third embodiment of this invention is performed. As seen from the distribution shown in the column(e) of Fig. 10, there are two vectors which have minimum number of cross points, the one vector in -x and -y area, and the other vector in +x and -y area. These two vectors are shown as a vector 112 and a vector 113 in Fig. 11(a). Other four vectors, 1121, 1122, 1131, 1132 are determined as shown in the drawing. The magnitude and the direction of the vectors 1121, 1122 are equal to those of the vector 112, and the magnitude and the direction of the vectors 1131, 1132 are equal to those of the vector 113. Fig. 11(b) shows these parallel scanning vectors. All the spaces between two adjacent parallel vectors are made to be equal to a predetermined magnitude "b". Start points of all these vectors are determined to be on x=0 line denoted by a numeral 114. Points 1123, 1124, 1133, and 1134 are these start points, The point 111 in Fig. 11(b) is the core point. The scanning unit 177 performs the scanning on these vectors. Numbers of cross points obtained are denoted respectively by n(1121), n(1122), n(1131), n(1132). For a predetermined threshold value T2, when n(1122)-n(1121)>T2 and n(1132)-n(1131)≤T2 the fingerprint image is classified as a right loop in a classification step 85, and when n(1122)-n(1121)≤T2 and n(1132)-n(1131)>T2 the fingerprint image is classified as a left loop in the classification step 85. When either inequality (1) or (2) is not satisfied, the fingerprint image is classified as "not determined". A classifier unit( III ) 180 performs the comparison in inequalities (1) and (2) and the classification. For a numerical example, when n(1122)=10, n(1121)=4, n(1132)=7, n(1131)=5, T2=4, the fingerprint image is classified as a right loop. The second and the third embodiment of this invention are often performed after the first embodiment of this invention in order to confirm the result of classification at the step 31. In such a case, steps 25-31 of Fig. 2 are inserted between the step 24 and the step 81. At a step 86, a final classification is performed as shown by Fig. 12. For example, when a fingerprint image is classified as a whorl at the step 31, an ambiguity is detected at the step 82, and is classified as a left loop at the step 85, the fingerprint image is classified as "a whorl or a left loop" at the step 86. When the fingerprint image is to be classified to any one of the four patterns shown in Fig. 7, the fingerprint which is classified as a whorl at the step 31 is classified as a whorl disregarding the classification at the step 85. In all the embodiments of this invention, the magnitude V of the scanning vectors, a first threshold value T1 for tracing a ridge line space(radius of the circle in Figs. 5), a second threshold value T2 in inequalities (1) and (2), and a spacing b of the scanning lines(Fig. 11(b)) are to be determined by design. The magnitude V(scanning vectors of Fig. 4(b) and Fig. 9(b) can have different magnitude) determines the total scanning area, T1 determines the fineness of tracing, and b and T2 determines a criterion for a classification. It will be easy to determine proper values for these constants in a cut and try method. Although only preferred embodiments have been described on this invention, it must be understood that various modifications can be made without departing from the invention as set out in the appended claims. For example, total number of scanning vectors may not be 8(Fig. 4(b)) and 17(Fig. 9(b)), and the vectors may not be equispaced.

Claims: An apparatus for automatic fingerprint classification comprising: means for converting a fingerprint image picture to a set of binary data and storing said set of binary data in a fingerprint image memory(170), storing each binary data corresponding to a point in said fingerprint image picture at an address of said image memory corresponding to position coordinates of said point in the fingerprint image picture; a core point determination unit(171) for detecting a core point of a fingerprint image stored in said image memory, and for deciding original x-y rectangular coordinates wherein the origin of the coordinates is at the core point, the X axis of the coordinates is parallel to a joint of a finger, and fingertip is in +y direction; means for tracing a space between two ridge lines starting from said core point in both areas where x>0 and x<0, by a scanning unit (173) for distance measurement, a next coordinates determination unit (174), a tracing vector memory (172), and a judgement unit(175); said scanning unit for distance measurement scanning said fingerprint image by vectors having a same magnitude, starting from an origin of a current temporary coordinate and diverging in different directions, and measuring distances from the origin of a first cross point between ridge lines in said fingerprint image and said vectors, the area of scanning being limited in accordance with the position of the core point and a circle connecting the end points of the vectors; said next coordinates determination unit deciding next temporary coordinates from said current temporary coordinates and the result of distance measurement in said scanning unit, said original coordinates being initial current temporary coordinates; said tracing vector memory storing position coordinates of all origins of temporary coordinates with respect to said original coordinates; said judgement unit deciding a termination of tracing in an area; and a classifier unit( I ) (176) for detecting ridge line shape from data stored in said tracing vector memory and for classifying said fingerprint image in accordance with said detected ridge line shape. The apparatus according to claim 1, wherein said next coordinates determination unit decides a threshold value T1, selects a vector which is the nearest to -X(or +X)axis (including the -X or +X axis) of the current temporary coordinates among the vectors with measured distance larger than T1, decides the selected vector as a new -X(or +X) axis of the next temporary coordinates, and decides a middle point(51)between the origin(41)of the current temporary coordinates and the first cross point of the new -X(or +X)axis as the origin of said next temporary coordinates. The apparatus according to claim 1, wherein said classifier unit ( I ) examines locus (61, 62)of the temporary origins stored in said tracing vector memory in -x and +x area, classifies the locus as a straight line(63) or a semicircle(64), a fingerprint pattern with semicircles in -x and +x area being classified as a whorl, a fingerprint pattern with a semicircle in +x area and a straight line in -x area being classified as a left loop, a fingerprint pattern with a semicircle in -x area and a straight line in +x area being classified as a right loop, and a fingerprint pattern with straight lines in -x and +x area being classified as an arch. The apparatus according to claim 1, 2, or 3, further comprising: a scanning unit(177) for cross points detection for scanning said fingerprint image by vectors having a same magnitude, starting from said core point and diverging in different directions in -y area, and measuring number of cross points between the vectors and ridge lines in said fingerprint image; and a classifier unit(II) (178) for classifying said fingerprint image from directional distribution of said number of cross points. The apparatus according to claim 4, wherein said classifier unit( II ) detects a vector with a minimum number of cross points, a fingerprint pattern having a vector with a minimum number of cross points near to -Y axis being classified as a whorl, a fingerprint pattern having a vector with a minimum number of cross points in a direction having a -x component being classified as a left loop or a whorl, and a fingerprint pattern having a vector with a minimum number of cross points in a direction having a +x component being classified as a right loop or a whorl. The apparatus according to claim 4 or 5, further comprising: a generating unit(179) of new vectors for generating four new scanning vectors when said classifier unit( II ) detects two vectors with a minimum number of cross points; and a classifier unit( III ) (180) for classifying said fingerprint image from result of scanning by said scanning unit for cross points detection. The apparatus according to claim 6, wherein said generating unit of new vectors detects a first vector (112) having a -x component with a minimum number of cross points and a second vector(113)having a +x component with a minimum number of cross points, generates a third vector(1121) having a same magnitude and a same direction with said first vector, spaced by a predetermined magnitude b upward from said first vector, and starting from x=0, a fourth vector (1122) having a same magnitude and a same direction with said first vector, spaced by b downward from said first vector, and starting from x=0, a fifth vector(1131) having a same magnitude and a same direction with said second vector, spaced by b upward from said second vector, and starting from x=0, and a sixth vector (1132)having a same magnitude and a same direction with said second vector, spaced by b downward from said second vector, and starting from x=0.

Inventors: SHIBUYA TATSUO, SHIBUYA, TATSUO, SHIBUYA, TATSUO, NEC SECURITY SYSTEMS, LTD.
Applicants: NIPPON ELECTRIC CO, NEC CORPORATION
Application year: 1994
Main classification: G06K9
IPC codes: G06T7, G07C9, G06K9