Fingerprint minutia node matching method and device
By employing a fingerprint minutiae matching method based on standardized processing and an absorption bucket mechanism, the problems of missing minutiae and pseudo-node interference in the matching of on-site fingerprints and rolling fingerprints are solved, achieving efficient and accurate fingerprint recognition.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING HISIGN TECH
- Filing Date
- 2026-04-24
- Publication Date
- 2026-05-29
AI Technical Summary
Existing technologies suffer from problems such as missing minutiae due to local overlay, interference from pseudo minutiae, and nonlinear deformation in on-site fingerprint and rolling fingerprint matching, resulting in low matching accuracy and efficiency.
By acquiring a set of minutiae of the fingerprint image, performing normalization processing, constructing node features, establishing a cost matrix, introducing an absorption bucket mechanism to construct an extended cost matrix, and calculating the fingerprint similarity score through the optimal transmission matching matrix, the matching result is output.
It improves the accuracy and efficiency of on-site fingerprint recognition, can handle local coverage and false minutiae interference, adapts to nonlinear deformation scenarios, and provides interpretable matching results.
Smart Images

Figure CN122116429A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of data processing, specifically to a fingerprint minutiae matching method and apparatus. Background Technology
[0002] In fingerprint recognition technology, minutiae matching is one of the core issues. Currently, there is a challenge in matching live fingerprints with rolling fingerprints: rolling fingerprints are high-quality fingerprints with complete coverage, sufficient minutiae, and a low false detection rate; while live fingerprints usually have the following prominent problems: partial coverage results in only including part of the fingerprint area, broken and blurred ridges cause missed minutiae, background interference introduces a large number of false minutiae, nonlinear deformation (such as stretching and twisting) occurs during the pressing process, and the number of minutiae differs significantly (live fingerprints may only have dozens of minutiae, while rolling fingerprints can have hundreds).
[0003] Traditional minutiae matching methods typically rely on geometric consistency assumptions or local descriptors for similarity calculations, which are prone to failure when faced with numerous missing or false minutiae in on-site fingerprints. In recent years, deep learning methods have often encoded single fingerprints into fixed-length embedding vectors for retrieval, but these methods lack explicit node-level alignment mechanisms, struggle to handle partial coverage matching scenarios, and have weak interpretability.
[0004] Therefore, there is an urgent need for a fingerprint minutiae matching method that can improve the accuracy and efficiency of on-site fingerprint recognition. Summary of the Invention
[0005] To address the problems in the prior art, this application provides a fingerprint minutiae matching method and apparatus, which can improve the accuracy and efficiency of on-site fingerprint recognition.
[0006] To solve at least one of the above problems, this application provides the following technical solution: In a first aspect, this application provides a fingerprint minutiae matching method, including: Obtain the first set of minutiae of the first fingerprint image to be compared and the second set of minutiae of the second fingerprint image. The required attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. Based on the node features, a cost matrix is constructed for pairwise matching between the first set of minutiae and the second set of minutiae. The element values of the cost matrix represent the matching cost between minutiae, which includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. An absorption bucket mechanism is introduced to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. Solve the extended cost matrix to determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, extract the candidate matching pairs with the highest matching probability to calculate the initial similarity score, and count the proportion of unmatched minutiae assigned to the absorption bucket. Apply a penalty term to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and output the fingerprint matching result based on the score.
[0007] Furthermore, the normalization processing of the first set of details and the second set of details to construct comparable node features includes: All details in the first set of details and the second set of details are normalized. The normalization process includes at least one of coordinate centering, coordinate scale normalization, orientation angle normalization, and mass normalization. For all minutiae that have undergone normalization, corresponding comparable node features are extracted. The node feature extraction methods include at least one of the following: directly using the mandatory attributes of minutiae as node features, encoding node features based on a preset multilayer perceptron, and obtaining context-enhanced node embedding features based on a preset graph neural network.
[0008] Furthermore, the coordinate scale normalization process includes: Based on the number of minutiae or the radius of the fingerprint coverage area, the corresponding scale parameters are adaptively determined. The coordinates of the minutiae are normalized according to the scale parameters to eliminate scale differences between fingerprints caused by different acquisition areas.
[0009] Furthermore, the step of constructing a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae based on the node features includes: Based on the node features of each extracted detail point, calculate the embedding feature similarity between each detail point in the first set and each detail point in the second set, and determine the corresponding node embedding feature similarity cost. Calculate the Euclidean distance between each detail point in the first set and each detail point in the second set, and determine the corresponding geometric coordinate difference cost; Calculate the absolute value or period-normalized difference of the orientation angle difference between each detail point in the first set and each detail point in the second set, and determine the corresponding orientation angle difference cost. The quality confidence attribute of each detail point in the first set and each detail point in the second set is used as the quality confidence weighted cost; Using the number of minutiae in the first set of minutiae as the row N of the cost matrix and the number of minutiae in the second set of minutiae as the column M of the cost matrix, and using the node embedding feature similarity cost, the geometric coordinate difference cost, the orientation angle difference cost, and the quality confidence weighted cost as the element values of the cost matrix, a cost matrix for pairwise matching of minutiae is constructed.
[0010] Furthermore, the introduction of the absorption bucket mechanism constructs an extended cost matrix based on the cost matrix, including: Based on the cost matrix, an absorption bucket mechanism is introduced to expand the N rows of the cost matrix to N+1 rows and the M columns of the cost matrix to M+1 columns, thereby determining the corresponding expanded cost matrix. Wherein, the N+1 rows represent the first absorption bucket, which is used to absorb the unmatched minutiae in the second minutiae set, the M+1 list represents the second absorption bucket, which is used to absorb the unmatched minutiae in the first minutiae set, and the (N+1, M+1)th element represents the matching cost between buckets. The matching cost of the absorption bucket is dynamically adjusted based on the quality confidence attribute of the corresponding minutiae, including: Calculate the overall noise level and the average quality of the minutiae in the current fingerprint image, and construct a negative correlation mapping function between the minutiae quality confidence and the absorption bucket cost based on the overall noise level and the average quality of the minutiae. For low-quality minutiae with a quality confidence level below a preset threshold, a first absorption bucket matching cost is assigned through the mapping function; for high-quality minutiae with a quality confidence level above a preset threshold, a second absorption bucket matching cost is assigned through the mapping function, wherein the first absorption bucket matching cost is lower than the second absorption bucket matching cost, so as to encourage the absorption of low-quality minutiae and increase the absorption penalty for high-quality minutiae.
[0011] Further, solving the extended cost matrix to determine the corresponding optimal transmission matching matrix includes: The extended cost matrix is softened by applying a temperature parameter and subjected to exponential operations to determine the corresponding initial transmission probability matrix. The initial transmission probability matrix is subjected to alternating iterative normalization of row and column normalization to satisfy the approximate double random constraint of row sum and column sum; The alternating iterative normalization process continues until convergence or the preset maximum number of iterations is reached, and the corresponding optimal transmission matching matrix is determined. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae in the first minutiae set and the second minutiae set.
[0012] Further, the step of calculating the fingerprint similarity score based on the optimal transmission matching matrix includes: The top K minutiae matching pairs with the highest matching probability values are extracted from the optimal transmission matching matrix to form a candidate matching pair set, where K is a preset positive integer, which is adaptively determined based on the smaller number of minutiae in the first minutiae set and the second minutiae set. For each matching pair in the candidate matching pair set, the matching probability value of the matching pair is weighted based on the weighting coefficient of the two minutiae in the matching pair to determine the corresponding initial similarity matching score. The weighting coefficient includes at least one of the following: a weighting term based on quality confidence, a weighting term based on geometric coordinate consistency, and a weighting term based on orientation angle consistency.
[0013] Secondly, this application provides a fingerprint minutiae matching device, comprising: The minutiae feature determination module is used to obtain a first set of minutiae in a first fingerprint image to be compared and a second set of minutiae in a second fingerprint image. The mandatory attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. The cost matrix determination module is used to construct a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae based on the node features. The element values of the cost matrix represent the matching cost between minutiae, which includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. An absorption bucket mechanism is introduced to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. An extended cost matrix solving module is used to solve the extended cost matrix and determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, the candidate matching pairs with the highest matching probability are extracted to calculate the initial similarity score, and the proportion of unmatched minutiae assigned to the absorption bucket is counted. A penalty term is applied to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and the fingerprint matching result is output based on the score.
[0014] Thirdly, this application provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the steps of the fingerprint minutiae matching method.
[0015] Fourthly, this application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the fingerprint minutiae matching method.
[0016] Fifthly, this application provides a computer program product, including a computer program / instructions that, when executed by a processor, implement the steps of the fingerprint minutiae matching method.
[0017] As can be seen from the above technical solution, this application provides a fingerprint minutiae matching method and apparatus. It acquires a first set of minutiae from a first fingerprint image and a second set of minutiae from a second fingerprint image, and performs normalization processing on each minutiae to construct comparable node features. Based on the node features, it constructs a pairwise matching cost matrix, where the matrix elements comprehensively reflect the node embedding similarity, geometric coordinate difference, orientation angle difference, and quality confidence weighted cost. An absorbing bucket mechanism is introduced to construct an extended cost matrix, adding rows and columns to absorb unmatched minutiae, and the optimal transmission matching matrix is obtained by solving this matrix. The fingerprint similarity score is calculated based on the matching matrix, and the matching result is output, thereby improving the accuracy and efficiency of on-site fingerprint recognition. Attached Figure Description
[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a flowchart illustrating the fingerprint minutiae matching method in an embodiment of this application. Figure 2This is a structural diagram of the fingerprint minutiae matching device in the embodiments of this application. Detailed Implementation
[0020] To make the objectives, technical solutions, and advantages of the embodiments of this application clearer, the technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.
[0021] The acquisition, storage, use, and processing of data in this application comply with relevant laws and regulations.
[0022] Considering the current state of fingerprint recognition, on-site fingerprints often fail to match properly and lack interpretability during the rolling fingerprint matching process due to the large amount of missing details. This application provides a fingerprint minutiae matching method and apparatus. It acquires a first set of minutiae from a first fingerprint image and a second set of minutiae from a second fingerprint image, and standardizes each minutiae to construct comparable node features. Based on these node features, it constructs a pairwise matching cost matrix, where matrix elements comprehensively reflect node embedding similarity, geometric coordinate differences, orientation angle differences, and a quality confidence weighted cost. An absorbing bucket mechanism is introduced to construct an extended cost matrix, adding rows and columns to absorb unmatched minutiae, and the optimal transmission matching matrix is obtained by solving this matrix. Finally, the fingerprint similarity score is calculated based on the matching matrix, and the matching result is output, thereby improving the accuracy and efficiency of on-site fingerprint recognition.
[0023] Optionally, the overall process of this embodiment is as follows: S1: Obtain the set of minutiae of the first and second fingerprints; S2: Standardize the details and construct node features; S3: Construct the cost matrix for pairwise matching of detail points; S4: Introduce a dustbin into the cost matrix and construct an extended cost matrix; S5: Use Sinkhorn iteration to solve for the optimal transmission matching matrix with absorbing bucket; S6: Calculate the fingerprint similarity score based on the matching matrix and output the matching result; S7 (optional): Estimate the geometric transformation using the matching results and iteratively update the cost matrix, repeating S3~S6.
[0024] To improve the accuracy and efficiency of on-site fingerprint recognition, this application provides an embodiment of a fingerprint minutiae matching method, see [link to embodiment].Figure 1 The fingerprint minutiae matching method specifically includes the following: Step S101: Obtain the first set of minutiae of the first fingerprint image to be compared and the second set of minutiae of the second fingerprint image. The required attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. Optionally, in this embodiment, this step is the data preparation and preprocessing stage. The goal is to obtain the original fingerprint minutiae data and eliminate the incomparability between different fingerprint images caused by differences in acquisition methods, size ranges, and coordinate systems through normalization processing, thus laying the foundation for subsequent construction of the cost matrix and accurate matching.
[0025] Optionally, the first fingerprint image and the second fingerprint image are respectively a field fingerprint image and a rolling fingerprint image.
[0026] Optionally, as key features of fingerprint ridges, minutiae must include at least three mandatory attributes: - Coordinate attributes (x, y) are used to describe the two-dimensional spatial location of detail points in the image; - The direction angle attribute θ is used to describe the local tangent direction of the texture line where the detail point is located; - The quality confidence attribute q is used to characterize the reliability of the minutiae extraction result. It is usually expressed in numerical form. The higher the value, the greater the probability that the minutiae is a true minutiae.
[0027] Optional, detail point optional attributes include: - Details point type (endpoint / fork); - Local orientation field consistency; - Ridge count or local ridge density feature; - Descriptors extracted from local image patches.
[0028] Optionally, since two fingerprint images may come from different acquisition devices, different pressing methods, or different imaging conditions, their minutiae sets often differ significantly in their original coordinate range, scale, and orientation reference. For example, a field fingerprint may only cover a local area of the finger, while a rolling fingerprint includes the complete fingertip ridges, making their coordinate ranges incomparable. Therefore, this step performs normalization processing on the two minutiae sets separately.
[0029] Perform at least one of the following normalization processes on the set of detail points: - Coordinate centering (subtracting the centroid) - Coordinate scale normalization (adaptive scaling based on coverage area or number of nodes) - Direction angle normalization (mapped to [0, 2π) or [-π, π)) - Quality normalization (mapped to [0,1]) Preferred solution: Based on the number of minutiae N or the coverage area, estimate the scale parameter S(N) to achieve comparability between on-site fingerprints and rolling fingerprints in terms of spatial scale.
[0030] Optionally, after normalization, the coordinate range, scale, and orientation reference of all detail points are unified, and they have achieved preliminary comparability. Based on this, detail point features are extracted for subsequent cost matrix construction.
[0031] Specifically, this embodiment does not limit the method of node feature extraction; the following methods may be used: - Directly use (x,y,θ,q) as node features (required attribute); - Use a multilayer perceptron (MLP) to encode node features; - Use graph neural networks (GNNs) to perform message passing within the graph to obtain context-enhanced node embeddings.
[0032] The graph can be constructed using kNN, radius graphs, or multi-scale graphs.
[0033] Step S102: Based on the node features, construct a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae. The element values of the cost matrix represent the matching cost between minutiae. The matching cost between minutiae includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. Introduce an absorption bucket mechanism to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. Optionally, in this embodiment, this step constructs a cost matrix that can comprehensively reflect the matching probability between two fingerprint minutiae.
[0034] Specifically, let N be the number of minutiae in the first fingerprint and M be the number of minutiae in the second fingerprint.
[0035] Construct the cost matrix: C∈R ^ {N×M} Each element C_ij in the matrix corresponds to the matching cost between the i-th minutiae of the first fingerprint image and the j-th minutiae of the second fingerprint image: C_ij =α·C ^ emb_ij+β·C ^ geo_ij+γ·C ^ ori_ij+δ·C ^ q_ij Where α, β, γ, and δ are weighting coefficients that balance the importance of each term; C ^ emb_ij, node embedding feature similarity cost, measures whether the intrinsic features of two details are similar; C ^ geo_ij, the geometric coordinate difference cost, measures the spatial proximity of two detail points; C ^ ori_ij, the cost of orientation angle difference, measures whether the ridge directions of two details are consistent; C ^ q_ij, the quality confidence-weighted cost, dynamically adjusts the matching cost based on the confidence level of the details themselves.
[0036] This cost matrix design makes matching not only dependent on feature similarity, but also explicitly considers the geometric and directional consistency in the fingerprint domain, thus distinguishing it from general keypoint matching.
[0037] Optionally, in this embodiment, to handle missing minutiae and pseudo minutiae in the on-site fingerprint, an absorption bucket mechanism is introduced to transform the originally closed minutiae matching problem into an optimal transmission problem with an exit, thereby enabling the handling of a large number of unmatchable nodes in the on-site fingerprint.
[0038] Specifically, construct the extended cost matrix: C ~ ∈R ^ {(N+1)×(M+1)} in: - The N+1th row represents the absorption bucket of the first fingerprint, which is used to absorb nodes that cannot be matched in the second fingerprint; - The M+1th column represents the absorption bucket of the second fingerprint, which is used to absorb nodes that cannot be matched in the first fingerprint; - C ~ {N+1,M+1} represents the cost of bucket-to-bucket matching.
[0039] The bucket cost can be adaptively set based on node quality and noise estimation, for example: - It is less expensive to match low-quality nodes to buckets; - Matching high-quality nodes to buckets is more expensive; - Bucket cost can vary with the local coverage ratio.
[0040] Step S103: Solve the extended cost matrix to determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, extract the candidate matching pairs with the highest matching probability, calculate the initial similarity score, and count the proportion of unmatched minutiae assigned to the absorption bucket. Apply a penalty term to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and output the fingerprint matching result based on the score.
[0041] Optionally, after constructing the extended cost matrix, the optimal transport solution matrix with absorbing bucket based on Sinkhorn can be used.
[0042] For the extended cost matrix C ~ Construct the transmission probability matrix: P=Sinkhorn(-C ~ / τ) in: -τ is the temperature parameter; - Sinkhorn iteration makes P satisfy approximately double random constraints (marginal constraints) in the row and column directions. - The dustbin (absorption bucket) rows / columns allow unmatched nodes to be assigned to the bucket.
[0043] This process yields a node-level soft-matching matrix P, where: - P_ij represents the matching probability between node i and node j; - P_{i,M+1} indicates that node i is matched to the absorption bucket (not matched); - P_{N+1,j} indicates that node j is matched to the absorption bucket (not matched).
[0044] The fingerprint similarity score s can be calculated based on the matching matrix P using at least one of the following methods: 1) Top-K matching pair aggregation: Select the K pairs of nodes with the highest matching probability, and obtain a score by combining quality weighting; 2) Matching consistency score: Calculate the geometric consistency and directional consistency of the matched pairs as weighting factors; 3) Unmatched ratio penalty: If a large number of nodes are assigned to dustbin, a penalty is imposed on the final score.
[0045] Final output: - Graph-level similarity score; - Node-level matching pair set (interpretable output).
[0046] Optionally, to further improve accuracy, this embodiment may include the following steps: - Estimate rigid body / similarity transformation or thin plate spline (TPS) deformation based on the current matching pair; - Use the estimated transformation to update the geometric cost term C ^ geo_ij; - Re-execute OT+ Sinkhorn (the optimal transfer algorithm based on Sinkhorn iteration) to obtain a more stable alignment result.
[0047] This iterative mechanism is particularly suitable for on-site fingerprint nonlinear deformation scenarios.
[0048] It is understandable that, through the global allocation constraints based on OT (Optimal Transfer) and the unmatched absorption mechanism of dustbin (absorption bucket) in this embodiment, the following can be achieved: 1) It can still output reliable matches even in scenarios with partial coverage (containing only a portion of the fingerprint area); 2) It has the ability to suppress interference from pseudo-details; 3) Robust to large variations in the number of detail points (e.g., 30~600); 4) Output node-level matching matrix and graph-level similarity score to enhance interpretability; 5) It can be combined with graph neural networks or other feature extraction networks to improve matching accuracy.
[0049] Furthermore, this embodiment can satisfy the following fingerprint matching requirements: - Explicitly output the alignment of detail points; - It can naturally handle unmatched nodes (missing and pseudo-nodes); - It can remain stable even when the number of nodes varies greatly; - Can be used for candidate ranking in 1:1 validation and 1:N retrieval.
[0050] This example demonstrates how this embodiment constructs a cost matrix for pairwise matching of minutiae, employs an optimal transport (OT) algorithm based on Sinkhorn iteration, and introduces a dustbin mechanism to handle missing minutiae and pseudo-minutiae, thereby obtaining robust node alignment relationships and fingerprint matching scores.
[0051] As described above, the fingerprint minutiae matching method provided in this application can construct comparable node features by acquiring a first set of minutiae from a first fingerprint image and a second set of minutiae from a second fingerprint image, and standardizing each minutiae; constructing a pairwise matching cost matrix based on the node features, where the matrix elements comprehensively reflect the node embedding similarity, geometric coordinate difference, orientation angle difference, and quality confidence weighted cost; introducing an absorption bucket mechanism to construct an extended cost matrix, adding rows and columns to absorb unmatched minutiae, and obtaining the optimal transmission matching matrix by solving this matrix; calculating the fingerprint similarity score based on the matching matrix and outputting the matching result, thereby improving the accuracy and efficiency of on-site fingerprint recognition.
[0052] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S201: Normalize all the details in the first set of details and the second set of details respectively. The normalization process includes at least one of coordinate centering, coordinate scale normalization, orientation angle normalization and mass normalization. Step S202: For all minutiae that have been normalized, extract the corresponding comparable node features. The node feature extraction method includes at least one of the following: directly using the mandatory attributes of minutiae as node features, encoding node features based on a preset multilayer perceptron, and obtaining context-enhanced node embedding features based on a preset graph neural network.
[0053] Optionally, in this embodiment, this step is the standardization and feature extraction stage of fingerprint minutiae, which transforms the original minutiae into node features with uniform dimensions and rich semantics, providing high-quality input data for subsequent matching calculations.
[0054] Specifically, normalization is first performed on the two sets of detail points respectively.
[0055] Normalization processing includes at least one of the following methods: 1. Coordinate centering (subtracting the centroid) Calculate the average coordinates of all minutiae within each set, and then subtract the average coordinates from the coordinates of each minutiae to shift the center of the entire set to the origin, thereby eliminating the overall offset difference between the two fingerprints caused by the different image positions.
[0056] 2. Coordinate scale normalization (adaptive scaling based on coverage area or number of nodes) Adaptive scaling is performed based on the distribution range of minutiae or the number of nodes. For example, the coordinate range is mapped to a unified interval, making the on-site fingerprint and the rolling fingerprint comparable in spatial scale and avoiding scale interference caused by different fingerprint coverage areas.
[0057] 3. Direction angle normalization (mapping to [0, 2π) or [-π, π)). By uniformly mapping the direction and angle of detail points to a standard range, the periodic ambiguity of angle representation is eliminated, ensuring the accuracy of direction difference calculation.
[0058] 4. Quality normalization (mapped to [0,1]) Mapping quality confidence values to a uniform numerical range allows fingerprint quality metrics from different sources to be compared under the same standard.
[0059] Through the combination of at least one of the above-mentioned normalization operations, the original details points, which were of different origins and with inconsistent dimensions, were transformed into a unified reference system, creating the basic conditions for subsequent feature extraction.
[0060] Next, comparable feature representations are constructed from the standardized details. There are multiple implementation options available, which can be flexibly adopted according to the actual application scenario. This embodiment does not impose limitations, but only provides a few possible solutions.
[0061] Specifically, the first implementation method is to directly use the required attributes of the minutiae as node features, that is, to concatenate the normalized coordinates, orientation angles, and quality confidence into an original feature vector. This method is simple to calculate, efficient, and suitable for scenarios with high real-time requirements.
[0062] Specifically, the second approach is to encode the original attributes based on a pre-set multilayer perceptron (an open-source multilayer perceptron model that is trained and fine-tuned), and then map the low-dimensional original attributes to a high-dimensional feature space through nonlinear transformations to enhance the expressive power of the features.
[0063] Specifically, the third approach involves constructing a graph structure within a single fingerprint based on a pre-defined graph neural network structure (an existing graph structure model). Then, a message-passing mechanism is used to aggregate information from the neighboring nodes of each minutiae, thereby obtaining context-aware enhanced node embedding features. This method can capture the local structural relationships between minutiae and is particularly effective for noisy or missing fingerprints from the field.
[0064] Through step S202, this embodiment obtains standardized node features. The node features are comparable among different fingerprints and can also reflect the attributes of the minutiae themselves and their structural relationship with neighboring nodes, providing a solid data foundation for subsequent construction of the cost matrix and solving for optimal transmission matching.
[0065] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S301: Based on the number of minutiae or the radius of the fingerprint coverage area, adaptively determine the corresponding scale parameters; Step S302: Normalize the coordinates of the minutiae according to the scale parameters to eliminate scale differences between fingerprints caused by different acquisition areas.
[0066] Optionally, in this embodiment, this step is a specific operation step of scaling the coordinates of detail points.
[0067] Different fingerprint images exhibit scale differences due to variations in the area captured and the pressure applied, such as large versus small fingerprints, or complete versus partial fingerprints. The purpose of this step is to dynamically determine a reasonable scale benchmark based on the fingerprint's own size characteristics, thereby eliminating scale differences between different fingerprint images.
[0068] Specifically, the scale parameter is adaptively determined based on the distribution of minutiae in the first or second fingerprint image. Optionally, the scale parameter can be determined based on the number of minutiae or the radius of the fingerprint coverage area.
[0069] If based on the number of minutiae, the number is mapped to a scale factor through a preset function relationship. Generally, the more minutiae there are, the larger the fingerprint coverage area is, and the larger the required scale parameter is. If the radius of the fingerprint coverage area is used as the basis, the distribution range of all minutiae coordinates is calculated, with the maximum radius used as the scale benchmark.
[0070] This adaptive determination method avoids the bias that may be caused by using a fixed scale: for a local fingerprint that only covers a part of the field, if the same fixed scale as the complete fingerprint is used, its coordinates will be over-enlarged or reduced, resulting in geometric information distortion; while the adaptive scale can be dynamically adjusted according to the actual size of the fingerprint, so that fingerprints of different sizes can obtain a normalized benchmark that matches its scale.
[0071] Based on the scale parameters determined in the previous step, the coordinates of the minutiae are normalized. The original coordinates of each minutiae are divided by the scale parameter, converting the coordinate values into dimensionless quantities relative to the fingerprint's own size. For example, if the radius of a fingerprint coverage area is small, its scale parameter is correspondingly small, and the coordinates, after being divided by the smaller scale parameter, still maintain a reasonable numerical range. Conversely, if the radius of a complete rolling fingerprint coverage area is large, its scale parameter is also large, and the coordinates, after being divided by the larger scale parameter, also fall into a similar numerical range. Through this process, original coordinates that might have differed by several times are mapped to a similar numerical range, eliminating scale differences caused by different acquisition areas.
[0072] Through step S302, this embodiment achieves the comparability of coordinate data between local field fingerprints and complete rolling fingerprints, providing a unified metric for the subsequent calculation of geometric coordinate differences in the cost matrix.
[0073] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S401: Based on the node features of each extracted detail point, calculate the embedding feature similarity between each detail point in the first set and each detail point in the second set, and determine the corresponding node embedding feature similarity cost. Step S402: Calculate the Euclidean distance between each detail point in the first set and each detail point in the second set, and determine the corresponding geometric coordinate difference cost; Step S403: Calculate the absolute value or periodic normalized difference of the orientation angle difference between each detail point in the first set and each detail point in the second set, and determine the corresponding orientation angle difference cost; Step S404: Use the quality confidence attribute of each detail point in the first set and each detail point in the second set as the quality confidence weighted cost; Step S405: Using the number of minutiae in the first set of minutiae as the row N of the cost matrix, and the number of minutiae in the second set of minutiae as the column M of the cost matrix, and using the node embedding feature similarity cost, the geometric coordinate difference cost, the orientation angle difference cost, and the quality confidence weighted cost as the element values of the cost matrix, a cost matrix for pairwise matching of minutiae is constructed.
[0074] Optionally, in this embodiment, the node embedding feature similarity cost is obtained by converting the dot product / cosine similarity of the node embedding.
[0075] Deep feature embeddings are extracted for each detail point. These embeddings can be feature vectors enhanced by a graph neural network, effectively representing the ridge structure information of the node and its neighborhood. Then, for the i-th node in the first set and the j-th node in the second set, the similarity distance between their feature vectors is calculated, for example, using cosine distance or Euclidean distance. The calculated distance value is the node embedding feature similarity cost; the smaller the distance, the closer the features, the more similar the two nodes are at the ridge structure level, and the lower the corresponding matching cost.
[0076] Optionally, in this embodiment, the geometric coordinate difference cost is obtained based on the node coordinate difference and neighborhood structure difference transformation.
[0077] Based on the normalized two-dimensional coordinates, the Euclidean distance between the i-th node of the first set and the j-th node of the second set is calculated. This distance value serves as the geometric coordinate difference cost, reflecting the degree of physical proximity between the two nodes. If two nodes belong to the same location of the same fingerprint, their spatial coordinates should essentially coincide after correction and alignment. Therefore, the geometric coordinate difference cost is a direct indicator of spatial consistency.
[0078] Optionally, in this embodiment, the orientation angle difference cost is based on the orientation angle difference Δθ.
[0079] Because the orientation angle is periodic, the minimum normalized result of the difference between the two must be taken during the calculation, that is, the angle difference within the range of (0,π). This cost term is used to measure the consistency of the two nodes in the ridge direction, ensuring that the matched nodes are not only close in position, but their ridge directions should also be basically aligned.
[0080] Optionally, in this embodiment, the quality confidence weighted cost means that nodes with lower quality are more likely to enter the absorption bucket in terms of matching cost.
[0081] The quality confidence attribute of the minutiae is directly used to reflect the reliability of the minutiae. The lower the quality, the more likely the node is to be a pseudo minutiae or originate from a fuzzy region.
[0082] Optionally, in this embodiment, the aforementioned four costs are integrated. A cost matrix is constructed using the number of first detail points N as the number of rows in the matrix and the number of second detail points M as the number of columns. For each element position in the matrix, the four costs calculated in steps S401 to S404 are weighted and fused according to weight coefficients to form the final matrix element value at that position. When all N rows and M columns of elements are filled, a complete cost matrix of size N×M is constructed.
[0083] Through step S405, this embodiment successfully constructed the cost matrix, providing comprehensive and detailed input for subsequent optimal transmission solutions. Each element in the matrix integrates information from four dimensions: feature similarity, spatial location, directional consistency, and node quality, ensuring that the cost value accurately reflects the matching rationality of a pair of detail points.
[0084] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S501: Based on the cost matrix, an absorption bucket mechanism is introduced to expand the N rows of the cost matrix to N+1 rows and the M columns of the cost matrix to M+1 columns, thereby determining the corresponding expanded cost matrix. Step S502: Wherein, the N+1 row represents the first absorption bucket, which is used to absorb the unmatched minutiae in the second minutiae set, the M+1 list represents the second absorption bucket, which is used to absorb the unmatched minutiae in the first minutiae set, and the (N+1, M+1)th element represents the matching cost between buckets. The matching cost of the absorption bucket is dynamically adjusted based on the quality confidence attribute of the corresponding minutiae, including: Calculate the overall noise level and the average quality of the minutiae in the current fingerprint image, and construct a negative correlation mapping function between the minutiae quality confidence and the absorption bucket cost based on the overall noise level and the average quality of the minutiae. For low-quality minutiae with a quality confidence level below a preset threshold, a first absorption bucket matching cost is assigned through the mapping function; for high-quality minutiae with a quality confidence level above a preset threshold, a second absorption bucket matching cost is assigned through the mapping function, wherein the first absorption bucket matching cost is lower than the second absorption bucket matching cost, so as to encourage the absorption of low-quality minutiae and increase the absorption penalty for high-quality minutiae.
[0085] Optionally, in this embodiment, the dimensions are expanded based on the original cost matrix.
[0086] The original cost matrix is an N x M square matrix that only considers the pairwise matching possibilities between the N nodes of the first fingerprint and the M nodes of the second fingerprint. To absorb unmatched nodes, the matrix is mathematically expanded by increasing the number of rows from N to N+1 and the number of columns from M to M+1, thus constructing a completely new (N+1) × (M+1) extended cost matrix.
[0087] The newly added (N+1)th row is defined as the first absorption bucket. During the matching process, this row acts as a "hospital." When traversing to a minutiae of the second fingerprint (corresponding to the j-th column in the matrix), if the cost of matching this node with all N real nodes in the first fingerprint is too high, it can choose to "match" to the position corresponding to this row. This means that the second fingerprint node is considered to have no corresponding counterpart in the first fingerprint, i.e., it is judged as a pseudo-minution or redundant point and is absorbed by the absorption bucket, thus preventing it from being forcibly paired with an incorrect real node.
[0088] The newly added M+1th column is defined as the second absorption bucket. Its mechanism is symmetrical to that of the first absorption bucket, and it is used to collect real nodes in the first fingerprint that cannot be matched in the second fingerprint. This is mainly aimed at the details in the field fingerprint that cannot be matched due to missing parts.
[0089] Furthermore, the intersection of the newly added row and column, i.e., the element at position (N+1, M+1) in the matrix, represents the matching cost between buckets. The setting of this parameter is crucial, as it affects the balance of the entire mathematical model. If this value is set too high, the algorithm will tend to match real nodes with each other; if it is set too low, nodes will be easily absorbed.
[0090] Regarding the setting of this key parameter, we have defined the adaptive logic: the parameter is dynamically adjusted based on the quality confidence and noise estimation of the details.
[0091] Specifically, the algorithm evaluates the overall noise level of the current fingerprint image (such as ridge breaks and false minutia density) and the average quality of minutiae (based on features like ridge sharpness and contrast), and constructs a negative correlation mapping function based on this. If a minutiae itself has a low quality confidence, below a preset threshold (e.g., it might be a false point generated by noise), then the cost of matching it into the absorption bucket will be relatively low, encouraging its absorption; conversely, if a high-quality node attempts to enter the absorption bucket, the algorithm will set a higher cost as a penalty, forcing it to try to find a true corresponding node. This adaptive setting mechanism ensures that the absorption bucket can effectively filter noise without mistakenly absorbing high-quality true minutiae. The preset threshold is determined through statistical analysis of sample data.
[0092] This adaptive setting mechanism in this embodiment is a core technical means to solve the problem of high noise in on-site fingerprints. Traditional optimal transmission models usually set a fixed hyperparameter cost for the absorption bucket, which is feasible in clean image matching, but on-site fingerprints are often accompanied by a large number of pseudo nodes caused by oil stains or defects. By using the 'quality confidence' of minutiae as an adjustment variable, this application forces low-quality nodes to flow into the absorption bucket at a very low cost, thereby achieving physical isolation of pseudo nodes at the underlying logic of mathematical solution, greatly enhancing the robustness of the algorithm to fingerprint background noise.
[0093] Through step S502, this embodiment successfully introduces the absorbing bucket mechanism to construct the extended cost matrix, and ensures that the absorbing bucket can effectively filter noise without mistakenly absorbing high-quality real detail points through adaptive matching cost.
[0094] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S601: Apply a temperature parameter to the extended cost matrix for softening and exponential operation to determine the corresponding initial transmission probability matrix; Step S602: Perform alternating iterative normalization of row and column normalization on the initial transmission probability matrix to satisfy the approximate double random constraint of row sum and column sum; Step S603: The alternating iterative normalization process continues until convergence or the preset maximum number of iterations is reached, and the corresponding optimal transmission matching matrix is determined. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae in the first minutiae set and the second minutiae set.
[0095] Optionally, in this embodiment, this step is a specific implementation process of using the Sinkhorn algorithm to solve for the optimal transmission matching matrix with an absorption bucket.
[0096] Specifically, the extended cost matrix is first softened by applying a temperature parameter.
[0097] The cost matrix is scaled by a temperature coefficient, and the scaled result is then exponentially calculated to convert the original matching cost into initial matching probabilities (initial transmission probability matrix). The temperature parameter controls the "hardness" of this transformation: at lower temperatures, the probability distribution tends to be sharper, approaching hard assignment; at higher temperatures, the probability distribution is smoother, preserving more possibilities. Each element in the transformed matrix is positive and reflects the initial probability of establishing a match between nodes.
[0098] Next, the Sinkhorn algorithm is used to iteratively normalize the initial transmission probability matrix by alternating between row and column normalization. First, each row of the matrix is normalized so that the sum of its elements equals a preset target value (usually 1, representing that each first fingerprint node has one unit of mass to allocate). Then, each column is normalized so that the sum of its elements equals another preset target value (also usually 1, representing that each second fingerprint node has one unit of capacity to receive). These two steps are performed alternately: row normalization disrupts column normalization, and column normalization disrupts row normalization. However, by continuously repeating this process, the matrix gradually approaches a state that satisfies the double random constraint—that is, all row sums and column sums simultaneously reach the target value.
[0099] The iterative process continues until a preset convergence condition is met (e.g., the change between two iterations is less than a threshold) or a preset maximum number of iterations is reached. The final optimal transmission matching matrix P still has a dimension of (N+1)×(M+1). Each element in the matrix has undergone global optimization, representing the final probability of establishing a match between a node of the first fingerprint and a node of the second fingerprint, under the premise of satisfying the overall allocation constraints.
[0100] The first N rows and M columns represent the matching probability between valid nodes; the last column represents the probability that the first fingerprint node is absorbed by the absorption bucket; and the last row represents the probability that the second fingerprint node is absorbed by the absorption bucket.
[0101] Through step S603, this embodiment successfully uses the Sinkhorn algorithm to solve for the optimal transmission matching matrix with absorbing buckets, ensuring the global optimality of the matching results and avoiding the defects of local greedy matching.
[0102] In one embodiment of the fingerprint minutiae matching method of this application, it may further include the following: Step S701: Extract the top K minutiae matching pairs with the highest matching probability values from the optimal transmission matching matrix to form a candidate matching pair set, where K is a preset positive integer, adaptively determined based on the smaller number of minutiae in the first minutiae set and the second minutiae set; Step S702: For each matching pair in the candidate matching pair set, the matching probability value of the matching pair is weighted based on the weighting coefficient of the two minutiae in the matching pair to determine the corresponding initial similarity matching score. The weighting coefficient includes at least one of the following: a weighting term based on quality confidence, a weighting term based on geometric coordinate consistency, and a weighting term based on orientation angle consistency.
[0103] Optionally, in this embodiment, this step is a post-processing and aggregation process from the original matching matrix to the final fingerprint similarity score.
[0104] First, a filtering operation is performed. Given that the value P_ij in our constructed optimal transmission matching matrix P represents the probability of a match between nodes, we use a preset positive integer K to filter out the top K matching pairs with the highest probability values, extracting a high-quality candidate matching pair set from the optimal transmission matching matrix. The value of K is adaptively determined based on the smaller number of minutiae in the first and second minutiae sets. This adaptive mechanism ensures that regardless of the difference in the number of minutiae between the two fingerprints, the number of extracted candidate pairs matches the actual number of potentially matching nodes, avoiding the problem of noise introduced by an excessively large K value or the omission of effective matches due to an excessively small K value.
[0105] Next, the selected candidate matching pairs are subjected to a refined weighted evaluation to determine the initial similarity matching score for each matching pair.
[0106] For each candidate match, the algorithm will combine at least one of the following weighting terms: a weighting term based on quality confidence, a weighting term based on geometric coordinate consistency, and a weighting term based on orientation angle consistency, to adjust the probability value of the match pair.
[0107] Among them, the quality confidence weighting term reflects the consideration of the credibility of the details themselves (the matching of high-quality nodes should be given higher weight, while the matching of low-quality nodes is suppressed).
[0108] The geometric coordinate consistency weighting term is used to evaluate whether the matching pair conforms to the overall transformation law in spatial location, such as judging whether the coordinate difference is reasonable through local neighborhood structure or global transformation model.
[0109] The orientation angle consistency weighting term checks whether the orientation angle difference between two minutiae is within an acceptable range and conforms to the physical constraints of the fingerprint ridge flow direction.
[0110] By using these three weighting factors, we can effectively eliminate incorrect matches that have high probability values but abnormal geometric or directional relationships, strengthen correct matches that conform to the physical characteristics of fingerprints, and thus improve the reliability of the initial score.
[0111] Following this step, unmatched nodes are taken into consideration to determine the final fingerprint similarity score.
[0112] The introduction of an absorption bucket penalty term forms the closed loop of the fingerprint matching logic in this application. Relying solely on a few high-scoring matches to determine the final score can easily lead to false positives when two completely different fingerprints coincidentally overlap. This application not only utilizes the optimal transfer matrix to find matching points but also makes full use of the waste data (unmatched points) in the absorption bucket. When the proportion of nodes falling into the absorption bucket is too high, it indicates a serious divergence in the overall topological structure of the two fingerprints. By using the unmatched proportion as a penalty factor to lower the initial score, this algorithm not only performs excellently in finding similarities but also has extremely high accuracy in rejecting non-homogeneous fingerprints.
[0113] Specifically, this step counts the number of minutiae assigned to the absorption bucket, including the nodes absorbed in the first fingerprint and the nodes absorbed in the second fingerprint, and then calculates the proportion of unmatched nodes.
[0114] Based on this ratio, a penalty term is applied to the initial similarity matching score. The logic is that a high proportion of nodes in the overlapping area of two similar fingerprints can form a valid match. A large number of nodes being absorbed by the absorbing bucket means that the overlapping area is small or there are a large number of false points / missing points. Even if a small number of matching pairs have high scores, the overall similarity should be suppressed.
[0115] Through step S703, this embodiment successfully obtained the final fingerprint matching score by matching matrix filtering, refined weighted evaluation, and absorption bucket penalty term. This avoids the drawback of relying on a few high-confidence matching pairs to cover up the overall mismatch, making the output results more robust and realistic.
[0116] In addition, the overall embodiments of this application also include the construction of training samples.
[0117] Training samples, i.e., different fingerprint images used for training, are obtained and then the steps S1-S7 of this application are performed.
[0118] The training samples include positive sample pairs and negative sample pairs: - Positive sample pairs: the same fingerprint under different acquisition conditions (rolling / planar / on-site) or different local cropping; - Negative sample pairs: different fingerprints; - Difficult negative samples: structurally similar but different fingerprints.
[0119] Add ambient noise enhancement to the training samples, and perform the following on at least one side of the fingerprint in the training samples: - Randomly delete details (simulate missed detections) - Randomly add pseudo-details (simulate false positives) - Partial cropping (simulating partial print) - Non-rigid perturbation (simulating compression deformation) - Direction angle perturbation (simulated direction estimation error) In addition, the overall embodiments of this application also include the construction of a loss function.
[0120] In this embodiment, a combined loss can be used: 1) Graph-level metric loss L_metric: contrastive loss, triplet loss, or N-pair loss; This loss is used during training to optimize the output of node feature extraction networks (such as MLP or GNN).
[0121] 2) OT Matching Supervision Loss (Core): Imposing consistency constraints on the matching matrix P of positive sample pairs; This loss is used during training to supervise the matching matrix P output by the Sinkhorn algorithm, ensuring that the generated matching matrix P matches the actual matching relationships.
[0122] 3) Bidirectional consistency loss: The matching matrices of constraints A→B and B→A are consistent with each other; This loss is used during training to compare the matching matrices obtained from both directions, A→B and B→A, to prevent one-way false matching.
[0123] 4) Geometric consistency regularization term: Constraint matching pairs form a consistent transformation in geometric space.
[0124] This loss is used as an auxiliary loss term during training to constrain the consistency of the matching pairs under geometric transformations (such as rigid body transformations or thin plate spline transformations), thereby improving the physical interpretability of the matching.
[0125] In addition to the overall embodiments of this application, specific embodiments are also included.
[0126] Example 1: Basic OT + dustbin matching - Node features: (x,y,θ,q) encoded by MLP - Cost matrix: Embedding similarity + Geometric distance + Orientation difference + Mass term - Expanded matrix: Add 1 row and 1 column dustbin - Sinkhorn: 20 iterations - Score: Top-20 Match Probability + Non-Match Percentage Penalty Example 2: Adding Intra-Graph GNN Enhancement - First, construct a kNN graph from a single graph. - Node embedding is obtained using 2-layer message passing. - Then execute OT+dustbin matching - Suitable for scenarios with many pseudo-details Example 3: Iterative refinement - First OT match found - Estimate similarity transformation using matching pairs - Update geometric cost - Second OT output final match In the overall embodiments of this application, at least the following beneficial effects are achieved: 1) Introduce global allocation constraints for OT to avoid errors caused by local greedy matching; 2) The dustbin mechanism is introduced, which can naturally handle a large number of unmatched nodes (missing and false points) in the on-site fingerprint. 3) It can operate stably even when the number of detail points varies greatly; 4) It can output a node-level alignment matrix, improving interpretability; 5) It can combine graph neural networks to enhance node features, but does not rely on single graph embedding retrieval; 6) Improve matching accuracy under nonlinear deformation conditions through iterative refinement.
[0127] To improve the accuracy and efficiency of on-site fingerprint recognition, this application provides an embodiment of a fingerprint minutiae matching device for implementing all or part of the fingerprint minutiae matching method, see [link to embodiment]. Figure 2 The fingerprint minutiae matching device specifically includes the following components: The minutiae feature determination module 10 is used to obtain a first set of minutiae in the first fingerprint image to be compared and a second set of minutiae in the second fingerprint image. The mandatory attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. The cost matrix determination module 20 is used to construct a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae based on the node features. The element values of the cost matrix represent the matching cost between minutiae. The matching cost between minutiae includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. An absorption bucket mechanism is introduced to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. The extended cost matrix solving module 30 is used to solve the extended cost matrix and determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, the candidate matching pairs with the highest matching probability are extracted to calculate the initial similarity score, and the proportion of unmatched minutiae assigned to the absorption bucket is counted. A penalty term is applied to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and the fingerprint matching result is output based on the score.
[0128] As described above, the fingerprint minutiae matching device provided in this application can acquire a first set of minutiae from a first fingerprint image and a second set of minutiae from a second fingerprint image, and perform normalization processing on each minutiae to construct comparable node features; construct a pairwise matching cost matrix based on the node features, where the matrix elements comprehensively reflect the node embedding similarity, geometric coordinate difference, orientation angle difference, and quality confidence weighted cost; introduce an absorption bucket mechanism to construct an extended cost matrix, adding rows and columns to absorb unmatched minutiae, and obtain the optimal transmission matching matrix by solving this matrix; calculate the fingerprint similarity score based on the matching matrix and output the matching result, thereby improving the accuracy and efficiency of on-site fingerprint recognition.
[0129] This invention also provides a computer device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor performs the fingerprint minutiae matching method described above.
[0130] This invention also provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the above-described fingerprint minutiae matching method.
[0131] This invention also provides a computer program product, which includes a computer program that, when executed by a processor, implements the above-described fingerprint minutiae matching method.
[0132] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, apparatus, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0133] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (devices), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0134] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0135] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0136] Specific embodiments have been used to illustrate the principles and implementation methods of this invention. The descriptions of the embodiments above are only for the purpose of helping to understand the method and core ideas of this invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of this invention. Therefore, the content of this specification should not be construed as a limitation of this invention.
Claims
1. A fingerprint minutiae matching method, characterized in that, The method is applied to a fingerprint recognition device, including: Obtain the first set of minutiae of the first fingerprint image to be compared and the second set of minutiae of the second fingerprint image. The required attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. Based on the node features, a cost matrix is constructed for pairwise matching between the first set of minutiae and the second set of minutiae. The element values of the cost matrix represent the matching cost between minutiae, which includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. An absorption bucket mechanism is introduced to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. Solve the extended cost matrix to determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, extract the candidate matching pairs with the highest matching probability to calculate the initial similarity score, and count the proportion of unmatched minutiae assigned to the absorption bucket. Apply a penalty term to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and output the fingerprint matching result based on the score.
2. The fingerprint minutiae matching method according to claim 1, characterized in that, The normalization process performed on the first set of minutiae and the second set of minutiae to construct comparable node features includes: All details in the first set of details and the second set of details are normalized. The normalization process includes at least one of coordinate centering, coordinate scale normalization, orientation angle normalization, and mass normalization. For all minutiae that have undergone normalization, corresponding comparable node features are extracted. The node feature extraction methods include at least one of the following: directly using the mandatory attributes of minutiae as node features, encoding node features based on a preset multilayer perceptron, and obtaining context-enhanced node embedding features based on a preset graph neural network.
3. The fingerprint minutiae matching method according to claim 2, characterized in that, The coordinate scale normalization process includes: Based on the number of minutiae or the radius of the fingerprint coverage area, the corresponding scale parameters are adaptively determined. The coordinates of the minutiae are normalized according to the scale parameters to eliminate scale differences between fingerprints caused by different acquisition areas.
4. The fingerprint minutiae matching method according to claim 1, characterized in that, The step of constructing a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae based on the node features includes: Based on the node features of each extracted detail point, calculate the embedding feature similarity between each detail point in the first set and each detail point in the second set, and determine the corresponding node embedding feature similarity cost. Calculate the Euclidean distance between each detail point in the first set and each detail point in the second set, and determine the corresponding geometric coordinate difference cost; Calculate the absolute value or period-normalized difference of the orientation angle difference between each detail point in the first set and each detail point in the second set, and determine the corresponding orientation angle difference cost. The quality confidence attribute of each detail point in the first set and each detail point in the second set is used as the quality confidence weighted cost; Using the number of minutiae in the first set of minutiae as the row N of the cost matrix and the number of minutiae in the second set of minutiae as the column M of the cost matrix, and using the node embedding feature similarity cost, the geometric coordinate difference cost, the orientation angle difference cost, and the quality confidence weighted cost as the element values of the cost matrix, a cost matrix for pairwise matching of minutiae is constructed.
5. The fingerprint minutiae matching method according to claim 4, characterized in that, The introduced absorption bucket mechanism constructs an extended cost matrix based on the cost matrix, including: Based on the cost matrix, an absorption bucket mechanism is introduced to expand the N rows of the cost matrix to N+1 rows and the M columns of the cost matrix to M+1 columns, thereby determining the corresponding expanded cost matrix. Wherein, the N+1 rows represent the first absorption bucket, which is used to absorb the unmatched minutiae in the second minutiae set, the M+1 list represents the second absorption bucket, which is used to absorb the unmatched minutiae in the first minutiae set, and the (N+1, M+1)th element represents the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted based on the quality confidence attribute of the corresponding minutiae, including: Calculate the overall noise level and the average quality of the minutiae in the current fingerprint image, and construct a negative correlation mapping function between the minutiae quality confidence and the absorption bucket cost based on the overall noise level and the average quality of the minutiae. For low-quality minutiae with a quality confidence level below a preset threshold, a first absorption bucket matching cost is assigned through the mapping function; for high-quality minutiae with a quality confidence level above a preset threshold, a second absorption bucket matching cost is assigned through the mapping function, wherein the first absorption bucket matching cost is lower than the second absorption bucket matching cost, so as to encourage the absorption of low-quality minutiae and increase the absorption penalty for high-quality minutiae.
6. The fingerprint minutiae matching method according to claim 1, characterized in that, Solving the extended cost matrix to determine the corresponding optimal transmission matching matrix includes: The extended cost matrix is softened by applying a temperature parameter and subjected to exponential operations to determine the corresponding initial transmission probability matrix. The initial transmission probability matrix is subjected to alternating iterative normalization of row and column normalization to satisfy the approximate double random constraint of row sum and column sum; The alternating iterative normalization process continues until convergence or the preset maximum number of iterations is reached, and the corresponding optimal transmission matching matrix is determined. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae in the first minutiae set and the second minutiae set.
7. The fingerprint minutiae matching method according to claim 1, characterized in that, The step of extracting the candidate matching pairs with the highest matching probability based on the optimal transmission matching matrix and calculating the initial similarity score includes: The top K minutiae matching pairs with the highest matching probability values are extracted from the optimal transmission matching matrix to form a candidate matching pair set, where K is a preset positive integer, which is adaptively determined based on the smaller number of minutiae in the first minutiae set and the second minutiae set. For each matching pair in the candidate matching pair set, the matching probability value of the matching pair is weighted based on the weighting coefficient of the two minutiae in the matching pair to determine the corresponding initial similarity score. The weighting coefficient includes at least one of the following: a weighting term based on quality confidence, a weighting term based on geometric coordinate consistency, and a weighting term based on orientation angle consistency.
8. A fingerprint minutiae matching device, characterized in that, The device includes: The minutiae feature determination module is used to obtain a first set of minutiae in a first fingerprint image to be compared and a second set of minutiae in a second fingerprint image. The mandatory attributes of each minutiae include physical coordinates, orientation angle, and quality confidence. The first set of minutiae and the second set of minutiae are normalized to construct comparable node features. The cost matrix determination module is used to construct a cost matrix for pairwise matching between the first set of minutiae and the second set of minutiae based on the node features. The element values of the cost matrix represent the matching cost between minutiae, which includes node embedding feature similarity cost, geometric coordinate difference cost, orientation angle difference cost, and quality confidence weighted cost. An absorption bucket mechanism is introduced to construct an extended cost matrix based on the cost matrix. The absorption bucket is used to absorb noisy minutiae that cannot be matched. The newly added element values of the extended cost matrix represent the matching cost of the absorption bucket. The matching cost of the absorption bucket is dynamically adjusted according to the quality confidence attribute of the corresponding minutiae. An extended cost matrix solving module is used to solve the extended cost matrix and determine the corresponding optimal transmission matching matrix. The element values of the optimal transmission matching matrix represent the matching probability between each minutiae. Based on the optimal transmission matching matrix, the candidate matching pairs with the highest matching probability are extracted to calculate the initial similarity score, and the proportion of unmatched minutiae assigned to the absorption bucket is counted. A penalty term is applied to the initial similarity score according to the proportion of unmatched minutiae to obtain the final fingerprint similarity score, and the fingerprint matching result is output based on the score.
9. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps of the fingerprint minutiae matching method according to any one of claims 1 to 7.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the computer program implements the steps of the fingerprint minutiae matching method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Passive indoor positioning method based on fingerprint self-adaptive environmental changes
CN106199514A
Fingerprint feature similarity assessment method based on probability geometric feature
CN108805034A
Method to conduct fingerprint verification and a fingerprint verification system
US20050084143A1
Efficient Similarity Search of Seismic Waveforms
US20150316666A1
Catheters, systems, and related methods for mapping, minimizing, and treating cardiac fibrillation
WO2018106496A1