A deformation fingerprint matching method based on spatial clustering
By calculating candidate matching structure pairs in fingerprint matching and performing cluster screening, combining the KM algorithm and local structure similarity score, the matching error problem caused by fingerprint image deformation is solved, and higher matching accuracy is achieved.
Patent Information
- Application Number
- CN202210933758.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-04
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2042-08-04
AI Technical Summary
When the existing fingerprint matching algorithm faces the deformation distortion of fingerprint images, it uses unified parameter matching to cause missing or misidentified matching points, affecting accuracy.
By calculating the candidate matching structure pair and performing clustering screening in the transformation space, a high matching feature point pair is obtained, and the maximum weight matching is used to match the KM algorithm. Combining the similarity score and proximity calculation of the local structure, the matching feature point pair is finally determined.
It effectively improves the accuracy of fingerprint matching, reduces the omissions and misjudgment of matching point pairs, and improves the recognition accuracy of deformation fingerprint images.
Smart Images

Figure CN115240233B_ABST
Abstract
Description
Technical field
[0001] The present invention relates to the technical field of fingerprint recognition, and in particular to a deformation fingerprint matching method based on spatial clustering. [Background Technology]
[0002] Due to the uniqueness, accessibility, and ease of identification of fingerprints, fingerprint recognition has become a biometric identification technology with widespread application. The ultimate goal of fingerprint recognition is to determine whether two fingerprint images originate from the same finger. Fingerprint matching, as the final step in fingerprint recognition, is an essential and crucial step, as its accuracy is directly linked to the accuracy of the final fingerprint image recognition.
[0003] Currently, there are many different types of fingerprint matching algorithms on the market, one of the mainstream ones being the feature point-based fingerprint matching algorithm. Most existing fingerprint feature point matching algorithms usually assume that the rotation and translation parameters of all matching point pairs are unified. However, the reality is that due to differences in the position and force of the fingerprint each time it is collected, the fingerprint images obtained are unlikely to be exactly the same, and there will be varying degrees of deformation and distortion, resulting in certain deviations in the rotation and translation parameters of different matching point pairs. If unified parameters are used for matching, it may not only result in missing matching point pairs, but also cause detail point pairs that could have been matched to not meet the matching conditions, or detail point pairs that could not have been matched to meet the matching conditions, resulting in misidentification, which greatly affects the accuracy of fingerprint matching. [Summary of the invention]
[0004] In response to the problems raised in the background technology, the present invention proposes a deformation fingerprint matching method based on spatial clustering, which calculates candidate matching structure pairs and performs clustering screening in the transformation space to obtain feature point pairs with high matching degree, thereby effectively improving the fingerprint matching accuracy.
[0005] A deformation fingerprint matching method based on spatial clustering includes the following steps:
[0006] Step 1: Extract fingerprint feature points from two fingerprints to obtain two initial feature point sets T and I.
[0007] Step 2: For all feature point pairs consisting of any feature point in the initial feature point set T and any feature point in the initial feature point set I, corresponding local structures P and Q are established.
[0008] Step 3: Calculate the similarity score between the feature point pair consisting of the initial feature point set T and the local structure P and the feature point pair consisting of the initial feature point set I and the local structure Q.
[0009] Step 4: Select any local structures P and Q, and use the KM algorithm to perform maximum weight matching on the feature point pairs they constitute, using the corresponding similarity scores in step 3 as connection weights to obtain a matching point pair set M. The similarity score of the selected local structures P and Q is the sum of the similarity scores corresponding to the point pairs contained in the matching point pair set M;
[0010] If the number of point pairs in the matching point pair set M is not less than T1 and the similarity scores corresponding to the selected local structures P and Q are not less than T2, then the local structure pair composed of the selected local structures P and Q is regarded as a candidate matching local structure pair, where T1 and T2 are empirical thresholds set through experiments.
[0011] Step 5: Continue to select local structures P and Q and form new feature point pairs. Repeat the operation in step 4 for the new feature point pairs until all feature point pairs formed by local structures P and Q are traversed and all candidate matching local structure pairs are obtained.
[0012] Step 6: For all candidate matching local structure pairs, clustering is calculated using their proximity in the transformation space to determine whether any two candidate matching local structure pairs are adjacent.
[0013] Step 7: Set the initial empty set S1, select any candidate matching local structure pair and add it to S1, then add the candidate matching local structure pairs adjacent to the candidate matching local structure pair to S1, repeat the operation until every candidate matching local structure pair in S1 and its adjacent candidate matching local structure pairs belong to S1. Then set the initial empty set S2, and continue to select any one of the remaining candidate matching local structure pairs to repeat the above operation on the empty set S2 until all candidate matching local structure pairs are assigned, and finally obtain the sequence {S1, S2, ..., S c}.
[0014] Step 8: For each Si in the sequence, the candidate matching local structure pairs contained therein are used as weighted edges to form a weighted graph, and the local structure similarity scores are used as connection weights. The KM algorithm is used to perform maximum weight matching, and the resulting matching pairs are used as the final matching local structure pairs corresponding to Si. The sum of the corresponding local structure similarity scores is S. i The corresponding original matching score.
[0015] Step 9, if S i The corresponding original matching score is not less than the threshold T S , then the feature points corresponding to the local structures in the final matching local structure pair constitute the final matching feature point pair, and further calculation based on the final matching feature points can obtain S i The corresponding final matching score, where the threshold T S It is an empirical value determined through experiments.
[0016] Step 10, take the sequence {S1, S2, ..., S c The maximum value of the final matching score in} is taken as the final matching score of the two fingerprints. According to the final fingerprint matching score and the fingerprint matching threshold T M , determine whether the two fingerprints match: if the final fingerprint matching score is not less than the fingerprint matching threshold T M , then it is determined that the two fingerprints are from the same finger, otherwise it is determined that the two fingerprints are not from the same finger. The fingerprint matching threshold T M The specific value is not fixed and can be set according to the security level required by the application.
[0017] Furthermore, each feature point includes the following information: a horizontal coordinate, a vertical coordinate, and an angle between the feature direction and the horizontal axis.
[0018] Furthermore, the local structure P constructed in step 2 is a structure with any feature point in the point set T as the center point, and the Euclidean distance between the feature points and the center point is no greater than T d , the local structure Q is a point with any feature point in the point set I as the center point, and the Euclidean distance between the feature points and the center point is no greater than T d .
[0019] Furthermore, the T d It is an empirical threshold, which can be adjusted appropriately according to the change of the distance between feature points. In the present invention, the preferred value is 100.
[0020] Furthermore, step 6 includes the following steps:
[0021] (1) Calculate the rotation angle corresponding to each candidate matching local structure pair;
[0022] (2) Calculate the Euclidean distance between corresponding feature points in each candidate matching local structure pair;
[0023] (3) Calculate the rotation angle difference between the candidate matching local structure pairs. If the rotation angle difference is not greater than the threshold T Θ , then calculate the average rotation angle, where the threshold T Θ is an empirical value determined through experiments;
[0024] (4) calculating the relative displacement difference after rotation based on the average rotation angle obtained in (3);
[0025] (5) If the calculation results between two candidate matching local structure pairs satisfy that the Euclidean distance is not greater than T d , the rotation angle difference is not greater than the threshold T Θ , the relative displacement difference is not greater than the threshold T L , then it is determined that the two candidate matching structure pairs are adjacent, where the threshold T LIt is an empirical value determined through experiments.
[0026] Compared with the background technology that uses unified parameters to match feature points, the present invention provides a deformation fingerprint matching method based on spatial clustering. By calculating candidate matching structure pairs and clustering and screening in the transformation space to obtain feature point pairs with high matching degree, the problem of missing or misjudging fingerprint feature point matching point pairs is greatly avoided. This method has good fingerprint matching performance and can effectively improve the accuracy of deformation and distortion fingerprint matching.
Brief Description of the Drawings
[0027] Figure 1 This is a schematic flow chart of the deformation fingerprint matching method based on spatial clustering provided by the present invention.
[0028] Figure 2 These are two fingerprint images of the same finger with different degrees of deformation.
[0029] Figure 3 For z i The local structure P is the center i and z′ j The local structure Q j Schematic diagram.
[0030] Figure 4 This is a schematic diagram of adjusting the matching relationship using the KM algorithm provided in step 4 of an embodiment of the present invention. [Specific implementation method]
[0031] The technical solutions provided by the present invention are further described below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the specific embodiments described herein are merely exemplary and explanatory and do not limit the present invention. In addition, it should be understood that various equivalent modifications made by those skilled in the art to the present invention also fall within the scope of the claims appended hereto.
[0032] The present invention provides a deformation fingerprint matching method based on spatial clustering, and the technical route adopted includes the following steps:
[0033] Step 1: Extract fingerprint feature points from two fingerprints to obtain two initial feature point sets T and I:
[0034] T={z1,z2,…,z m}
[0035] I={z′1,z′2,…,z′ n}
[0036] in
[0037] z i =(x i ,y i,θ i ),i∈[1,m];
[0038] z′ j =(x′ j ,y′ j ,θ′ j ),j∈[1,n];
[0039] m and n represent the number of feature points in feature point sets T and I respectively, z i is the i-th feature point in the set T, where x i 、y i ,θ i are feature points z i The x-coordinate, y-coordinate, angle between the feature direction and the x-axis, z′ j Same thing.
[0040] Step 2: For all the above feature point pairs (z i ,z′ j ) Establish the corresponding local structures P and Q, including the following steps:
[0041] (1) Calculate all points z in the point set T h With z i The Euclidean distance d ih :
[0042]
[0043] will be combined with the feature point z i The Euclidean distance of the feature point z is not greater than 100 h The set of z is defined as i The local structure P is the center i .
[0044] (2) Calculate all points z′ in point set I k and z′ j The Euclidean distance d′ jk :
[0045]
[0046] With the feature point z′ j The Euclidean distance of the feature point z′ is not greater than 100 k The set of z′ is defined as j The local structure Q j .
[0047] Step 3, calculate the point pair (z i ,z h ) and (z′ j ,z′ k), including the following steps:
[0048] (1) For P i Point z in h and Q j Point z′ in k , calculate the point pair (z i ,z h ) and (z′ j ,z′ k )’s connecting direction α ih and α jk , as well as the relative displacement difference Δd and the relative angle difference
[0049] α ih =direct(z h -z i )
[0050] α jk =direct(z′ k -z′ j )
[0051] Δd=|d ih -d′ jk |
[0052]
[0053]
[0054] where z h -z i Indicates that from point (x i ,y i ) points to (x h ,y h ), direct() represents the angle between the direction corresponding to the vector and the positive direction of the x-axis.
[0055] (2) Calculate the point pair (z i ,z h ) and (z′ j ,z′ k )’s similarity score s(i,j,h,k),
[0056]
[0057] where t d and is the displacement difference threshold and angle difference threshold, σ d and are relevant coefficients, all of which are empirical values determined through experiments.
[0058] Step 4: For the local structure P fixed by the value of i i Point z in h and the local structure Q with fixed j value j Point z′ in k The point pair (z h ,z′ k ), use the corresponding similarity score s(i,j,h,k) in step 3 as the connection weight and use the Kuhn Munkres algorithm to perform maximum weight matching to obtain the matching point pair set M ij , M ij The sum of the similarity scores s(i, j, h, k) corresponding to the point pairs contained in is the selected local structure P i , Q j The similarity score of .
[0059] If the matching point pair set M ij The number of point pairs in is not less than T1 and the selected local structure P i , Q j If the similarity score is not less than T2, the local structure pair (P i ,Q j ) as candidate matching local structure pairs, where T1 and T2 are empirical thresholds set through experiments.
[0060] Step 5: Continue to select local structures P and Q and form new feature point pairs. Repeat the operation in step 4 for the new feature point pairs until all feature point pairs formed by local structures P and Q are traversed and all candidate matching local structure pairs are obtained.
[0061] Step 6: For all candidate matching local structure pairs, clustering is performed using their proximity in the transformation space to determine whether any two candidate matching local structure pairs are adjacent. and To illustrate with an example, the determination method is as follows:
[0062] (1) Calculate the rotation angle corresponding to each candidate matching local structure pair, For example, the calculation formula is as follows:
[0063]
[0064]
[0065]
[0066] in is the set of matching point pairs Point pairs in The corresponding point, mean() represents Take the average of all pairs of points in .
[0067] (2) Calculate two candidate matching local structure pairs and Middle feature point and Euclidean distance and and Euclidean distance
[0068]
[0069]
[0070] (3) Calculate the above candidate matching local structure pairs and The rotation angle difference ΔΘ(i1,j1,i2,j2),
[0071] ΔΘ(i1,j1,i2,j2)=|Θ(i1,j1)-Θ(i2,j2)|
[0072] If the rotation angle difference ΔΘ(i1, j1, i2, j2) is not greater than the threshold T Θ , then calculate the average rotation angle The threshold T Θ Empirical values determined through experiments:
[0073]
[0074] (4) Average rotation angle Calculate the relative displacement difference ΔL(i1, j1, i2, j2) after rotation:
[0075]
[0076] in Indicates that a vector is The new vector obtained after the angle rotation, ‖.‖ represents the modulus of the vector.
[0077] (5) If the above calculation results also meet the Euclidean distance and are not greater than 100, and the average rotation angle difference ΔΘ(i1, j1, i2, j2) is not greater than the threshold T Θ , the relative displacement difference ΔL(i1,j1,i2,j2) is not greater than the threshold T L , then determine the candidate matching local structure pair and is adjacent, where the threshold T LIt is an empirical value determined through experiments.
[0078] Step 7: Set S1 and initialize it to an empty set, and arbitrarily select a candidate matching local structure pair (P i ,Q j ) is added to S1, and then the candidate matching local structure pairs adjacent to the candidate matching local structure pair are added to S1, and the operation is repeated until every candidate matching local structure pair in S1 and the candidate matching local structure pairs adjacent to it belong to S1; continue to set S2 and initialize it to an empty set, and randomly select a pair S2 from the remaining candidate matching local structure pairs that do not belong to S1 and repeat the above operation until all candidate matching local structure pairs are assigned, and finally the sequence {S1, S2, ..., S c}.
[0079] Step 8: For each S in the sequence i , the candidate matching local structure pairs contained therein are used as weighted edges to form a weighted graph, the local structure similarity score is used as the connection weight, the maximum weight matching is performed using the Kuhn Munkres algorithm, and the obtained matching pairs are used as the final matching local structure pairs corresponding to Si. The sum of the corresponding local structure similarity scores is S i The corresponding original matching score.
[0080] Step 9, if S i The corresponding original matching score is not less than the threshold T S , then the feature points corresponding to the local structures in the final matching local structure pair constitute the final matching feature point pair. According to the final matching feature points, further calculation can be obtained to obtain S i The corresponding final matching score, where the threshold T S It is an empirical value determined through experiments.
[0081] Step 10, take the sequence {S1, S2, ..., S c The maximum value of the final matching score in} is taken as the final matching score of the two fingerprints. According to the final fingerprint matching score and the fingerprint matching threshold T M , determine whether the two fingerprints match: if the final fingerprint matching score is not less than the fingerprint matching threshold T M , then it is determined that the two fingerprints come from the same finger, otherwise it is determined that the two fingerprints are not from the same finger; the fingerprint matching threshold T M The specific value of is not fixed and can be set according to the security level required by the application.
[0082] It should be emphasized that the above are only preferred embodiments of the present invention and do not impose any form of limitation on the present invention. Any simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention are still within the scope of the technical solution of the present invention.
[0083] To verify the performance of the present method, technicians collected 1,800 fingerprint images (including half-deformed fingerprint images) from 120 fingers for testing, with five registration images and ten verification images collected for each finger. Table 1 lists the EER (equal error rate) and the corresponding FRR (false rejection rate) for the Hough matching algorithm and the present matching method when the FAR (false acceptance rate) is 0.01. The Hough algorithm is one of the mainstream algorithms mentioned in the background technology, with unified rotation and translation parameters for the default matching point pair.
[0084] Table 1
[0085] EER FRR Hough matching algorithm 0.3304% 0.4695% Matching method of the present invention 0.2338% 0.3478%
[0086] As can be seen from Table 1, under the same test background, the performance of the embodiment of the present invention is better than that of the Hough matching algorithm, and the EER (equal error rate) and FRR (false rejection rate) are significantly reduced. The lower the EER, the better the algorithm stability, and the lower the FRR, the lower the possibility of the fingerprint image being misidentified and misjudged. The test results show that the matching method of the present invention has a better recognition rate for deformed fingerprints.
Claims
1. A deformation fingerprint matching method based on spatial clustering, characterized in that: The steps include: Step 1: Extract fingerprint feature points from two fingerprints to obtain two initial feature point sets T and I; Step 2: For all feature point pairs consisting of any feature point in the initial feature point set T and any feature point in the initial feature point set I, establish corresponding local structures P and Q; Step 3, calculating the similarity score between the feature point pair consisting of the initial feature point set T and the local structure P and the feature point pair consisting of the initial feature point set I and the local structure Q; Step 4: Select any local structures P and Q, and use the KM algorithm to perform maximum weight matching on the feature point pairs they constitute, using the corresponding similarity scores in step 3 as connection weights to obtain a matching point pair set M. The similarity score of the selected local structures P and Q is the sum of the similarity scores corresponding to the point pairs contained in the matching point pair set M; If the number of point pairs in the matching point pair set M is not less than T1 and the similarity scores of the corresponding selected local structures P and Q are not less than T2, then the local structure pair consisting of the selected local structures P and Q is regarded as a candidate matching local structure pair, where T1 and T2 are empirical thresholds set by experiments; Step 5: Continue to select local structures P and Q and form new feature point pairs. Repeat the operation in step 4 for the new feature point pairs until all feature point pairs formed by local structures P and Q are traversed and all candidate matching local structure pairs are obtained. Step 6: For all candidate matching local structure pairs, clustering is calculated using their proximity in the transformation space to determine whether any two candidate matching local structure pairs are adjacent; Step 7: Set the initial empty set S1, select any candidate matching local structure pair and add it to S1, then add the candidate matching local structure pairs adjacent to the candidate matching local structure pair to S1, and repeat the operation until every candidate matching local structure pair in S1 and its adjacent candidate matching local structure pairs belong to S1. 1; Then, an initial empty set S2 is set, and the above operation is repeated for each of the remaining candidate matching local structure pairs until all candidate matching local structure pairs are assigned, and finally the sequence {S1, S2, …, Sc} is obtained; Step 8: For each Si in the sequence, a weighted graph is constructed using the candidate matching local structure pairs contained therein as weighted edges, and the local structure similarity scores are used as connection weights. The KM algorithm is used to perform maximum weight matching, and the resulting matching pairs are used as the final matching local structure pairs corresponding to Si. The sum of the corresponding local structure similarity scores is the original matching score corresponding to Si. Step 9: If the original matching score corresponding to Si is not less than the threshold T S , then the feature points corresponding to the local structures in the final matching local structure pair constitute the final matching feature point pair. According to the final matching feature points, the final matching score corresponding to Si can be obtained by further calculation, where the threshold T S is an empirical value determined through experiments; Step 10: Take the maximum value of the final matching score in the sequence {S1, S2, ..., Sc} as the final matching score of the two fingerprints, and calculate the final matching score of the two fingerprints according to the final matching score of the fingerprint and the fingerprint matching threshold T M , determine whether the two fingerprints match: if the final fingerprint matching score is not less than the fingerprint matching threshold T M , then it is determined that the two fingerprints come from the same finger, otherwise it is determined that the two fingerprints are not from the same finger, where the fingerprint matching threshold T M The specific value is not fixed and can be set according to the security level required by the application.
2. The deformation fingerprint matching method based on spatial clustering according to claim 1, characterized in that: Each feature point includes the following information: horizontal coordinate, vertical coordinate and the angle between the feature direction and the horizontal axis.
3. The deformation fingerprint matching method based on spatial clustering according to claim 1, characterized in that: The local structure P constructed in step 2 is a point set T with any feature point as the center point, and the Euclidean distance between the feature points and the center point is no greater than T d , the local structure Q is a point with any feature point in the point set I as the center point, and the Euclidean distance between the feature points and the center point is no greater than T d .
4. The method for deformable fingerprint matching based on spatial clustering according to claim 3, characterized in that: The T d It is an empirical threshold and can be adjusted appropriately according to the change of the distance between feature points.
5. The deformation fingerprint matching method based on spatial clustering according to claim 4, characterized in that: The T d The value is 100.
6. The method for deformable fingerprint matching based on spatial clustering according to claim 1, wherein: The calculation method of step 6 is as follows: (1) Calculate the rotation angle corresponding to each candidate matching local structure pair; (2) Calculate the Euclidean distance between corresponding feature points in each candidate matching local structure pair; (3) Calculate the rotation angle difference between the candidate matching local structure pairs. If the rotation angle difference is not greater than the threshold T Θ , then calculate the average rotation angle, where the threshold T Θ is an empirical value determined through experiments; (4) calculating the relative displacement difference after rotation based on the average rotation angle obtained in (3); (5) If the calculation results between two candidate matching local structure pairs satisfy that the Euclidean distance is not greater than T d , the rotation angle difference is not greater than the threshold T θ , the relative displacement difference is not greater than the threshold T L , then it is determined that the two candidate matching structure pairs are adjacent, where the threshold T L It is an empirical value determined through experiments.
Citation Information
Patent Citations
Partial fingerprint recognition
US20090310831A1
Method and a System for Matching Fingerprint Images Obtained From Different Fingerprint Image Capturing Devices
US20160247012A1