This is the most popular and widely used in commercial applications, because of its good performance and low computation time, specially for good quality images. This method tries to align the minutiae of the input image (query template) and stored templates (reference template) and find the number of matched minutiae. After alignment, two minutiae are considered in matching if the spacial distance and direction difference between them are smaller that a given tolerance. A correct aligning of fingerprint is very important in order to maximize the number of matched minutiae, this requires the computing of the translation and rotation information, as well as other geometrical transformations such as scale and distortion. In order to compute efficiently aligning information there has been proposed many approaches. In this section we present a method that uses segments (formed by minutiae) instead of isolated minutiae. A segment is formed by two pair of minutiae of the same fingerprint, the way how the set of segments are constructed may vary (e.g., nearest neighbour, delaunay, etc). The figure below shows the segments constructed from the set of minutiae.

segments constructed from a set of minutiae
In order to perform the matching, the segments are constructed for both templates (query and reference), Thereafter are compared the segments of query template with the segments of the reference. Each segment contains following information: segment length and the angles (α and β) formed by the segment and the minutia direction, as it is show in the following figure.

Here, l is the length of the segment formed by the minutiae k and j, both minutia are from the same template.
Using the segments of the query template and reference template, we find the rotation and translation information by constructing list of matched segments. Each segment of the query template are compared with all segments of the reference template if there is matching the pair of segments are include in the list. Two segments (r,q) are considered in matching if their length (l) and angles (α,β) difference are below some threshold.

where tl is the tolerance of the segments length difference and ta is the tolerance of the angles difference. Using the orientation angle difference of the matched segment are constructed histogram in order to find the rotation angle. The figure below show the histogram ( number of segments vs angle difference) of angle difference. The rotation angle is defined by selecting the cluster with high number of matched segments.

In the same way are constructed the histogram for displacement of x and y (position difference) in order to find the translation. With the information of translation and rotation one can find the matched minutiae and find the matching score. Alternatively, using the matched segments list can be constructed a graph with the pair of segments and solve a graph matching problem in order to obtain a more robust minutiae based matching. The figure below shows the result of matched segments (red color). In the final result of the matching one query segment match one and only one segment of the reference template
reference template |
![]() query template |