Method of comparing two fingerprints

The method projects minutiae coordinates into a higher-dimensional space using trained models, applying graph neural networks to identify fingerprints without images, addressing interoperability and efficiency issues in existing systems.

FR3159697A1Active Publication Date: 2025-08-29IDEMIA PUBLIC SECURITY FRANCE
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
FR2024001840
Authority / Receiving Office
FR · FR
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-02-26
Publication Date
2025-08-29
Estimated Expiration
2044-02-26

AI Technical Summary

Technical Problem

Existing fingerprint identification methods require fingerprint images, which may not be available in some databases, leading to interoperability issues and inefficiencies, and methods based on minutiae-encoded graphs struggle with identifying a single dactylogram from a set of candidates.

Method used

A method that projects minutiae coordinates into a higher-dimensional space using a trained projection model, applies graph neural networks to infer and concatenate matrices, and aggregates information using trained aggregation and conversion models to generate a matching score without requiring fingerprint images.

Benefits of technology

Enables fingerprint identification on any database with minutiae, handles varying minutiae counts, and improves interoperability and accuracy by reducing statistical noise.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Method for comparing two dactylograms from the lists of their minutiae, said method takes, as input data, a first source matrix MS1 of the coordinates of each minutiae of a first list L1 of minutiae of a first dactylogram and a second source matrix MS2 of the coordinates of each minutiae of a second list L2 of minutiae of a second dactylogram, and provides, as output data, a correspondence score between the two lists L1, L2 of minutiae.
Need to check novelty before this filing date? Find Prior Art

Description

Title of the invention: Method for comparing two fingerprints Technical field

[0001] The invention relates to a method and a system for comparing two fingerprints from lists of their minutiae. Technical background

[0002] Dactyloscopy is a method of identifying individuals based on the use of dactylograms which are also known as "fingerprints" and / or "palm prints". This method is used in particular by forensic anthropometry services or by civil identification systems during, for example, administrative procedures, border crossings or access to secure locations.

[0003] Dactylograms are drawings formed by the traces left on the surfaces by dermatoglyphs of the fingers and / or palms. Dermatoglyphs are the superficial furrows formed on the palms, soles and fingertips by dermal ridges and arranged in lines or spirals. They are specific to each individual and the drawings they form constitute an anthropometric "identity card" by which they can be identified.

[0004] Unlike authentication where a fingerprint acquired for an individual is compared to a single or a very limited number of reference fingerprints (1:1), the identification of an individual from a fingerprint requires the comparison of this fingerprint with many other fingerprints previously acquired from several individuals (1:N) and generally stored in a database. Because fingerprints are drawings with complex characteristics and the number of comparisons required during an identification can become very high, the identification process can remain lengthy despite the computing resources of currently available data processing devices. In order to reduce the time required to carry out this operation, it is known to classify fingerprints according to different classes based on certain morphological characteristics of dermatoglyphs.As examples, these morphological characteristics can be the general shape of the dermatoglyph (orientation of the loops, arches, spirals, etc.) according to the categories of Henry Faulds, Francis Galton and Edward Henry, the overall outline of the ridges, the "minutiae" constituted by singular points along the ridges (termination of a ridge, bifurcation, etc.), the shape of the ridges, the pores or even the scars.

[0005] Among these morphological characteristics, the minutiae are the subject of particular attention because, due to their singularity, the comparison of the minutiae between dactylograms helps to provide probative value to any attempt at identification. For example, according to Balthazar's rule, 17 or 18 common minutiae are sufficient to certify the concordance between two dactylograms, or, according to Locard's rule, fingerprint proof is made when between two dactylograms there is no discordance and 12 common minutiae share.

[0006] It is common to classify minutiae into two categories: bifurcations and terminations. Bifurcations include right or left bifurcations, lakes and bridges. Terminations include right or left terminations, islands and hooks. However, this division into two categories has no normative or limiting character. There are other combinations, so that minutia is generally understood to mean any singular point and / or any discontinuity present along the ridges of dermatoglyphs

[0007] Minutiae are generally represented and stored in databases in the form of coordinates in a three-dimensional space, as described in particular in the ISO / IEC 19794-2:2005 standard, Information Technology—Biometri c Data Interchange Formats—Part 2: Finger Minutiae Data, 2005. The first two dimensions correspond respectively to the abscissa and the ordinate of the minutiae in a dactylogram coordinate system. The third dimension corresponds to the angle of orientation of the minutiae relative to the horizontal axis of this same coordinate system. Thus, unlike dactylograms stored in image form, the computer storage of minutiae in this form requires less memory space. They also allow better interoperability of databases and reduce the calculation time during identification or authentication operations.

[0008] All these advantages contribute to the adoption of minutiae as the characteristics of first choice when processing fingerprints for the purpose of creating biometric identification databases, to the point that they very often constitute the only data available. In other words, in these databases, the images of the fingerprints are not preserved and only the geometric coordinates of the points constituting the minutiae are.

[0009] The methods and systems for identifying fingerprints are either manual, semi-automatic or fully automatic. Because the size of databases and the computing power of data processing devices are constantly increasing, automatic fingerprint identification systems (AFIS - "Automated Fingerprint Identification System") based on the exploitation of minutiae are increasingly used. They allow for rapid analysis and efficiently a list of candidate fingerprints likely to match a fingerprint whose owner is to be identified.

[0010] The automatic identification methods implemented by this type of system generally comprise two main stages. In a first stage, one or more screening algorithms are used to quickly eliminate candidate fingerprints sharing the fewest common characteristics with the fingerprint whose owner identification is sought. In a second stage, one or more algorithms, usually slower and more precise, compare said fingerprint with the remaining candidate fingerprints in order to establish a list of the best matches.

[0011] Among the automatic identification methods, those based on the implementation of neural networks generally require a prior step of encoding the fingerprints, whether they are provided in the form of images, lists of minutiae or their combination. During this encoding step, the relevant distinctive characteristics of the fingerprints are extracted, selected and then transcribed into instructions that can be deciphered by a data processing device such as a computer and adapted to be the subject of computational and / or combinatorial operations. The encoding step is often an integral part of the identification methods.

[0012] Su et al., MRA-GNN: Minutiae Relation-Aware Model over Graph Neural Network for Fingerprint Embedding. arXiv preprint arXiv:2307.16416, 2023 describes a method for encoding dactylograms based on their minutiae. First, the method encodes each minutia of each dactylogram of a plurality of candidate dactylograms into graphs representing their topological relationships. Second, each dactylogram is encoded into a graph representing the correlation structures between nearest neighbor dactylograms based on the graphs relating to each of their minutiae. This encoding is achieved using a graph neural network (GNN) implemented on fingerprints provided in the form of images from which the minutiae are extracted using a pre-encoder. The graphs are presented in the form of vectors.

[0013] The use of the method as a means of identification is limited. It is in fact only suitable for the identification of a set of fingerprints comprising several fingerprints to be identified. Each of them must first be encoded into a graph using the same first neighbor approach before being able to be compared to each candidate fingerprint via a criterion applied to the vector product of the vectors representing their graph. In other words, the method is not suitable for the identification of a single fingerprint provided as input data.

[0014] Grosz et al., Minutiae-guided fingerprint embeddings via vision transformers. arXiv preprint arXiv:2210.13994, 2022 describes a method for encoding fingerprint images as a fixed-size vector. The minutiae of each fingerprint image are first extracted and represented as a two-channel heat map. Then, the channels of each heat map and the corresponding fingerprint image are concatenated together, flattened, and provided as input to a Vision Transformer neural network such as the one described in VASWANI et al. Attention is ail you need. Advances in neural information processing Systems, vol. 30, 2017.The identification of a fingerprint among a set of candidate fingerprints is carried out via a comparison of the encoded vectors, the result of which is combined with those of identification methods based on convolutional neural networks.

[0015] TANDON et al, Transformer based fingerprint feature extraction, 26th International Conference on Pattern Recognition (ICPR), 2022, describes a method for encoding a fingerprint image using a convolutional neural network based on a Convolutional Transformer approach. The method encodes a general representation of the fingerprint, predicts a list of minutiae, and encodes a local representation of the list of predicted minutiae. Identifying a fingerprint from a set of candidate fingerprints involves several conditional steps. First, the global representations of the fingerprint images are compared. If the global similarity score is greater than a threshold value, the identification is validated. If it is below, a local similarity score is calculated from the comparison of the local representations based on minutiae.An average score is then established between the global similarity score and the local similarity score. Summary of the invention Technical problem

[0016] A first disadvantage of methods for identifying fingerprints from their images is that they require that the fingerprint images be available in existing databases. However, either for storage reasons or by choice, existing databases may lack them. These methods may in particular be unsuitable for old databases in which only the minutiae are available.

[0017] A second disadvantage of these image methods is their lack of interoperability. Being image-based, they may require a certain format and / or quality of images. However, the format and quality of images of Fingerprints of existing databases can vary from one database to another. To be able to be implemented, these methods may therefore require specific adaptations according to the specificities of each database, further reducing interoperability between these databases.

[0018] A disadvantage of methods for identifying dactylograms from their minutiae encoded in graphs representing their topological relationships is their prohibitive inability to identify a single dactylogram from a set of candidate dactylograms. In addition, they require making more or less arbitrary choices from a set of possibilities on the nearest neighbors in order to construct correlation structures between dactylograms from the graphs relating to their minutiae. However, since the space of possibilities is almost infinite, making such choices necessarily implies neglecting certain solutions, some of which may prove to be optimal.

[0019] There is therefore still a need to improve methods for identifying fingerprints, more particularly methods for comparing fingerprints two by two based on their minutiae, in order not only to reduce calculation times during an identification operation but also to ensure better interoperability of databases. In particular, there is a need for methods for identifying fingerprints capable of operating on any type of database comprising lists of minutiae and / or on systems with limited storage capacities and / or computing resources. Technical solution

[0020] According to a first aspect of the invention, there is provided a computer-implemented method for comparing two fingerprints from lists of their minutiae, said method takes, as input data, a first source matrix MSI of the coordinates of each minutiae of a first list L1 of 'n' minutiae of a first fingerprint in an 0-dimensional E space and a second source matrix MS2 of the coordinates of each minutiae of a second list L2 of 'm' minutiae of a second fingerprint in an 0-dimensional E space, and provides, as output data, a correspondence score between the two lists L1, L2 of minutiae, the method comprises the following steps: (a) projecting each of the two source matrices MSI, MS2 to a P-dimensional space G, the number of dimensions P of the space G being greater than the number of dimensions O of the space E of the coordinates of each minutia, said projection being carried out using a projection model Proj, the projection model Proj being previously trained to form, from the source matrices MSI, MS2, the projected matrices MPI, MP2 of dimension (n, p) and (m, p) respectively; (b) infer two inference matrices MF1, MF2 respectively of dimensions (n+1, p) and (m+1, p), by application, on the projected matrices MPI, MP2, of a previously trained graph neural network; (c) concatenate each of the inference matrices MF1 and MF2 with a vector VI, V2 of coordinates of a dummy minutia to form enriched inference matrices MFE1, MFE2 of dimension (n+1, p) and (m+l, p) respectively; (d) concatenate the two enriched inference matrices MFE1, MFE2 into an intermediate matrix MI of dimension (n+m+2, p); (e) encoding the intermediate matrix MI into an encoding matrix ME of dimension (n+m+2,p) by applying a second previously trained graph neural network; (f) aggregate the values ​​of the intermediate matrix into a fixed-size VE vector (1, p) using a previously trained aggregation model; (g) converting the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the matching score between the two lists L1, L2 of minutiae. Advantageous embodiments are described below.

[0021] According to a second aspect of the invention, there is provided a data processing device comprising means for implementing the method of any one of the embodiments of the first aspect of the invention.

[0022] According to a third aspect of the invention, there is provided a computer program comprising instructions which, when the program is executed by a computer, cause the computer to implement the method according to any one of the embodiments of the first aspect of the invention.

[0023] According to a fourth aspect of the invention, there is provided a storage medium comprising instructions which, when executed by a computer, cause the computer to implement the method according to any one of the embodiments of the first aspect of the invention.

[0024] According to a fifth aspect of the invention, there is provided a system for comparing two fingerprints from lists of their minutiae. Benefits

[0025] A first advantage of the invention is that the identification or authentication of a fingerprint does not require any fingerprint image. It can therefore be used on any fingerprint database comprising lists of minutiae. In particular, it can be used on old databases which are devoid of fingerprint images as well as on more recent databases comprising images from which minutiae are likely to be extracted.

[0026] A second advantage of the invention is the possibility of comparing pairs of fingerprints for which the number of minutiae available for each is different. The method can then be implemented simultaneously on different databases comprising different numbers of minutiae and / or on lists of minutiae of different sizes within the same database. The interoperability of the databases is reinforced in their exploitation, including between old databases which are devoid of fingerprint images and more recent databases comprising images from which minutiae are likely to be extracted.

[0027] A third advantage of the invention is the insensitivity to the number and order of minutiae in lists of minutiae provided as input data. Statistical noise is reduced and the results of the identification operations are more accurate. Brief description of the drawings

[0028] [Fig-1] is a graphical representation of an example of a minutiae list of a digital fingerprint.

[0029] [Fig.2]is a flowchart of the method according to the first aspect of the invention.

[0030] [Fig.3] is a schematic representation of a representation of a list of minutiae in the form of a source matrix.

[0031] [Fig.4] is a representation of a data processing device according to the second aspect of the invention.

[0032] [Fig.5] is a graphical representation of the false negative rate (FRR) as a function of the false positive rate (FAR) when comparing lists of minutiae encoded according to an exemplary embodiment of the invention. Detailed description of the embodiments

[0033] With reference to [Fig.l], a digital dactylogram 1001 is a drawing formed by the traces left on the surfaces by the dermatoglyphs of a finger. This drawing represents the curvatures of the furrows 1001a and ridges 1001b of the papillary or epidermal folds present on the pulp of the finger. They generally form lines, loops and spirals.

[0034] The minutiae 1002 are singular points and / or discontinuities present along the ridges. In [Fig.l], they are represented by circles 1003 provided with a segment 1004. On the left part of the figure, they are superimposed on the image of the dactylogram 1001. On the right part, they are grouped in the form of a cloud without the image of the dactylogram.

[0035] The minutiae may be, for example, bifurcations such as right or left bifurcations, lakes and bridges, or terminations such as terminations rights or lefts, islands and hooks. They can also be combinations of these different types.

[0036] In accordance with ISO / IEC 19794-2:2005, Information Technology—Biometrics Data Interchange Formats—Part 2: Finger Minutiae Data, 2005, it is common to reference each minutiae 1002 by its coordinates in a three-dimensional space using a three-dimensional (1,3) tuple or vector. The first two dimensions of this tuple are the abscissa and ordinate of the singular point representing the minutiae 1002 in a Cartesian X, Y coordinate system of the dactylogram 1001 and the third dimension is the orientation angle of the ridge at the minutiae relative to the horizontal X abscissa axis. In [Fig.l], the abscissa and ordinate of each minute are represented by the circle 1003 and the orientation angle by the segment 1004 attached to this circle.

[0037] According to a first aspect of the invention, with reference to [Fig. 2], there is provided a computer-implemented method 2000 for comparing two fingerprints from lists of their minutiae, said method taking, as input data, a first source matrix MSI of the coordinates of each minutiae of a first list L1 of 'n' minutiae of a first fingerprint in an 0-dimensional space E and a second source matrix MS2 of the coordinates of each minutiae of a second list L2 of 'm' minutiae of a second fingerprint 1001 in an 0-dimensional space E, and providing, as output data, a match score between the two lists L1, L2 of minutiae, the method 2000 comprising the following steps: (a) projecting 2001 each of the two source matrices MSI, MS2 to a P-dimensional space G, the number of dimensions P of the space G being greater than number of dimensions O of the space E of the coordinates of each minutia,said projection being carried out using a projection model Proj, the projection model Proj being previously trained to form, from the source matrices MSI, MS2, the projected matrices MPI, MP2 of dimension (n, p) and (m, p) respectively; (b) infer 2002 two inference matrices MF1, MF2 respectively of dimensions (n, p) and (m, p), by application, on the projected matrices MPI, MP2, of a previously trained graph neural network; (c) concatenate 2003 each of the inference matrices MF1 and MF2 with a vector VI, V2 of coordinates of a dummy minutia to form enriched inference matrices MFE1, MFE2 of dimension (n+1, p) and (m+l, p) respectively; (d) concatenate 2004 the two enriched inference matrices MFE1, MFE2 into an intermediate matrix MI of dimension (n+m+2, p); (e) encoding 2005 the intermediate matrix MI into an encoding matrix ME of dimension (n+m+2,p) by applying a second previously trained graph neural network; (f) aggregate 2006 the values ​​of the intermediate matrix into a fixed-size VE vector (1, p) using a previously trained aggregation model; (g) converting 2007 the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the matching score between the two lists L1, L2 of minutiae.

[0038] In the context of the present invention, the term “graph neural network” (GNN or “Graphical Neural Network”) is understood to mean a graph neural network as defined in the field of statistical or automatic learning (“Machine Learning”), in particular neural networks based on the exploitation of characteristic vectors (“embeddings”) to encode the properties of each node (“node embedding”) and of each edge (“edge embedding”) of information capable of being represented in the form of a graph.

[0039] In the context of the present invention, the term "coordinates of each minutiae" is understood to mean the coordinates of any referencing system or format making it possible at least to characterize the position and orientation of each minutiae in an E-dimensional space with O dimensions. This interpretation covers both the referencing system or format described in the standard ISO / IEC 19794-2:2005, Information Technology — Biometrics Data Interchange Formats — Part 2: Finger Minutiae Data, 2005, and any other system or format with equivalent functions which may differ from it.

[0040] According to a preferred embodiment, the space E is of dimension 3 (O = 3) and the coordinates of the minutiae correspond respectively to the values ​​of its abscissa, its ordinate and its orientation angle in the (X, Y) frame of reference of the dactylogram. The coordinates m of a minutiae can be represented in the form of a tuple or a vector of dimension (1, 3) in a three-dimensional space (O = 3). These coordinates include the abscissa and the ordinate of the minutiae in a Cartesian frame X, Y of the dactylogram, and the orientation angle of the ridge at the level of the minutiae relative to the horizontal axis of the abscissas.

[0041] As an example, from the referencing format described in the standard ISO / IEC 19794-2:2005, Information Technology—Biometrics Data Interchange Formats—Part 2: Finger Minutiae Data, 2005, with reference to [Fig. 3], a list L1, resp. L2, of 'n', resp. 'm', minutiae can be represented in the form of a source matrix MSI, resp. MS2, of dimension (n, 3), resp. (m, 3), by concatenation of their vectors of dimension (1, 3), the columns representing the abscissa 'x', the ordinate 'y' and the orientation angle 'a' of the minutiae. In [Fig.3], for 'n' minutiae, the abscissa, ordinate, and angle values ​​of each minutiae are concatenated vertically to form the n rows of the MSI source matrix.

[0042] Equivalently, the arrangement of values ​​can be transposed: the values ​​of the abscissa, the ordinate and the angle of each minutia are concatenated horizontally to form the n columns of the source matrix. For brevity, in the following, reference is made only to the arrangement of the abscissa, ordinate, and angle values ​​of each minutiae into columns to form the n rows of the source matrix. A simple transposition operation allows one to move from one arrangement to the other.

[0043] In step (a), each of the two source matrices MSI, MS2 is the subject of a projection Proj towards a P-dimensional space G, the number of dimensions P of the space G being greater than the number of dimensions O of the space E of the coordinates of each minutia. This projection is carried out using a projection model Proj previously trained to form the projected matrices MPI, MP2 of dimension (n, p) and (m, p) respectively. It makes it possible to enrich the information relating to the coordinates of the minutiae through new dimensions which will then serve as a support for information inferred during steps (b) and (d) of inference by the graph neural networks. The nature of the inferred information is determined during the training of the projection model and that of the graph neural networks. For example, this additional information may, after training, be certain topological relationships or correlation structures between minutiae..

[0044] According to embodiments, the projection model Proj is a projection matrix MP to a space G whose number P of dimensions is arbitrary, preferably to a space G of arbitrary dimension P of at least 32 times the dimensions O of the space E of the coordinates of each minutia. From the previous example of the two source matrices MSI, MS2 of respective dimensions (n, 3) and (m, 3), the projection model Proj can be a projection matrix of dimension (3, 128) making it possible to project said source matrices to a space G of dimension P of at least 32 times the dimension O = 3 of the space E of the coordinates of the minutiae 1002. The projected matrix MP, obtained by applying the projection matrix to the source matrix via a simple matrix calculation, has a dimension (n, 128).Both for this example and more generally, it should be emphasized that the dimension of the projection matrix does not depend on the number of minutiae of the source matrix.

[0045] In step (b), the two projected matrices MPI, MP2 are provided, as input data, to a first graph neural network previously trained in order to infer inference matrices MF1 and MF2 respectively. The graph neural network and its training method are of any suitable type. The training method may in particular be unsupervised, supervised, self-supervised learning or their combination. In particular, it may be supervised learning of the “identity” type in which the graph neural network is trained to classify each list of minutiae of a training set into its own identity. or class. In other words, each list of minutiae in the training set is considered as a single identity or class during training. Inference step (b) can be performed successively on each of the MPI, MP2 projected matrices or simultaneously.

[0046] In step (c), each of the two inference matrices MF1 and MF2 is concatenated with a vector VI, V2 of coordinates of a dummy minutia MF of dimension (1, p). From the previous example, the concatenation of the inference matrix MF1 with vector VI of coordinates of a dummy minutia of dimension (1, 128) makes it possible to obtain an enriched inference matrix MFE1 of dimension (n+1, 128), and the concatenation of the inference matrix MF2 with vector V2 of coordinates of a dummy minutia of dimension (1, 128) makes it possible to obtain an enriched inference matrix MFE2 of dimension (m+1, 128)

[0047] The vectors VI, V2 of coordinates of a dummy minutia have the function of classification tokens as is commonly used in graph neural networks, particularly in Transformer type graph neural networks. In this respect, the articles by VASWANI et al. Attention is ail you need. Advances in neural information processing Systems, vol. 30, 2017 and by DOSOVITSKIY et al. An image is worth 16x16 words: Transformers for image recognition at scale. arXiv preprint arXiv:2010.11929, 2020, can be consulted.

[0048] In step (d), the two enriched inference matrices MFE1, MFE2 are concatenated into a single intermediate matrix MI of dimension (n+m+2,p). From the previous example, for two enriched inference matrices of respective dimension (n+1, 128) and (m+1, 128), the concatenation is carried out vertically to obtain an intermediate matrix of dimension (n+m+2,128).

[0049] In step (e), the intermediate matrix MI is encoded. It is provided, as input data, to a second graph neural network previously trained to calculate an encoding matrix ME. The second graph neural network and its training method are of any suitable type. The training method may in particular be unsupervised, supervised, self-supervised learning or a combination thereof. In particular, it may be supervised learning in which the graph neural network is trained by minimizing a binary cross-entropy function in which the minutiae lists of two dactylograms that correspond to each other form a first class denoted '1' and the minutiae lists of different dactylograms form a second class denoted '0'.

[0050] In step (f), In step (e) the values ​​of the intermediate matrix MI are aggregated into an encoding vector VE of fixed size using a previously trained aggregation model. As an illustration, using the example of the matrix intermediate of dimension (n+1,128) described previously, this aggregation consists of reducing said matrix to a single row to form a fixed size vector of dimension (1,128).

[0051] According to certain embodiments, the aggregation model is an arithmetic mean, for each dimension P of the space G, of the values ​​of the intermediate matrix MI. By way of illustration, with reference to [Fig.4] and from the previous example of the intermediate matrix MI of dimension (n+m+2, 128), each column corresponds to one of the P dimensions of the space G. The arithmetic mean of the values ​​of the column is then carried out for each of the 128 columns.

[0052] In step (g), the fixed-size encoding vector VE of dimension (l,p) is converted into a scalar number (of dimension (1,1)) using a conversion model. The conversion model is of any suitable type. An example of a conversion model may be a projection matrix from a dimension (p,l) to a dimension (1,1), the result of the projection being a scalar.

[0053] According to certain preferred embodiments, the conversion model comprises a sigmoid-type probability function for converting the scalar into a second scalar between 0 and 1. The second scalar represents the correspondence score, expressed as a probability level, between the two lists L1, L2 of minutiae. A score close to 1 corresponds to a high degree of similarity between the two lists L1, L2; a score close to 0 corresponds to a high degree of disparity between the two lists L1, L2.

[0054] According to certain preferred embodiments, the first and second graph neural networks are Transformer type neural networks. It is known in the prior art to implement this type of neuron on fingerprint images. In the context of the present invention, it has been found, surprisingly, that this type of network, when implemented, not on an image of the minutiae, but on their coordinates, similar or even superior performances in terms of contextual sequencing and encoding are obtained. It follows that, contrary to what was expected, the coordinates of the minutiae, which constitute information that is a priori less rich than fingerprint images with regard to their topological relationships, are sufficient to benefit from the performances of a Transformer type network while reducing its complexity, the quantity of data to be processed and the computational load.

[0055] According to advantageous embodiments, the first and second Transformer-type neural networks comprise a succession of at least 9 layers of the attention mechanism type (“Multi-Head Self-Attention”) alternating with a multi-layer perceptron-type neural network (“Multi-Layer Perceptron”), and are devoid of positional encoding. The absence of positional encoding makes it possible to make the method insensitive to the permutation of minutiae in the minutiae list. That is, the order in which the tuples of each minutiae are arranged in a minutiae list does not affect the results of encoding the list. Multi-Head Self-Attention layers are described in VASWANI, Ashish et al. Attention is ail you need. Advances in neural information processing Systems, vol. 30, 2017. Preferably, the first and second graph neural networks have Transformer neural networks of identical layer structure.

[0056] According to certain embodiments, the method further comprises, before step (a), a preliminary step of normalizing the coordinates of each minutia in which the orientation angles are replaced by the values ​​of their sine and their cosine. In other words, the value of the orientation angle of each minutia of the minutia list is replaced by two values ​​corresponding respectively to the sine and the cosine of said angle, or to the cosine and the sine of said angle. Such a normalization step is particularly advantageous in that it makes it possible to reduce the sensitivity of the graph neural network when passing, between two or more minutiae, from an orientation angle of 359° to 0°. In the specific context of encoding a minutia list, the precision and reliability during the inference of the inference matrix are significantly improved.

[0057] In the case where the coordinates of a minutia are represented in the form of a tuple or a vector, this prior normalization step results in a change in the dimension of said tuple or vector, and therefore in the dimension O of the space E. As an illustrative example, for a list of the coordinates of a minutia represented in the form of a tuple or a vector of dimension (1, 3) comprising the abscissa and the ordinate of the minutia in a Cartesian coordinate system X, Y of the dactylogram and the angle of orientation of the crest at the level of the minutia with respect to the horizontal axis of the abscissas, at the end of this normalization step, this tuple or this vector becomes a tuple or a vector of dimension (1, 4). The dimension O of the space E is then equal to four. Among the four column dimensions, the first two correspond to the abscissa and the ordinate of the minutia in the Cartesian X, Y coordinate system of the dactylogram, and the third and fourth correspond to the sine, resp.cosine, and to the cosine, resp. sine, of the orientation angle. .

[0058] The method according to the first aspect of the invention is implemented by computer. With reference to [Fig.4], in a second aspect of the invention, there is provided a data processing device 4000 comprising means for implementing a method 2000 according to any one of the embodiments of the first aspect of the invention.

[0059] An example of a device may be a device responsible for automatically executing sequences of arithmetic or logical operations to perform tasks or actions. This device, also called a computer, may comprise one or more central processing units (CPUs) and / or one or more graphics processors (GPUs) 4001 as well as at least one control device adapted to the execution of these operations. It may also comprise other electronic components such as input / output interfaces 4002, non-volatile or volatile storage devices 4003, and communication buses for transferring data between internal components of the device or with external components. One of the input / output devices 4002 may be a user interface for human-machine interaction, for example a graphical user interface for displaying human-understandable information.

[0060] According to a third aspect of the invention, there is provided a computer program 14003 comprising instructions which, when the program is executed by a computer, cause the computer to implement a method 2000 according to any one of the embodiments of the first aspect of the invention.

[0061] Any type of programming language, compiled or interpreted, can be used to implement the steps of the method of the invention. The computer program can be part of a software solution, i.e. a collection of executable instructions, codes, scripts or others and / or databases.

[0062] According to a fourth aspect of the invention, there is provided a computer-readable recording medium 4003 comprising instructions which, when executed by a computer, cause the computer to implement a method 2000 according to any one of the embodiments of the first aspect of the invention.

[0063] The computer-readable storage medium 4003 is preferably a non-volatile memory, for example a hard disk or a solid-state drive. It may be a removable storage medium or a non-removable storage medium forming part of a computer.

[0064] The computer-readable recording medium 4003 may also be volatile memory within a removable medium. This may facilitate deployment of the invention in many production sites.

[0065] The computer-readable recording medium 4003 may be part of a computer used as a server from which executable instructions may be downloaded and, when executed by a computer, cause the computer to execute a method according to one of the embodiments described herein.

[0066] The computer program 14003 and the medium 4003 on which it is recorded can be implemented in a distributed computing environment, for example cloud computing. The instructions may be executed on a server to which one or more client computers may connect and provide encoded data as input to a method according to any embodiment of the first aspect of the invention. Once the data has been processed, the result may be downloaded and decoded on the client computer or sent directly, for example, in the form of instructions.

[0067] According to a fifth aspect of the invention, there is provided a system for comparing two fingerprints from the lists of their minutiae, said system comprising: - a storage medium on which is recorded a database containing the coordinates associated with each minutiae of a list of minutiae of each of the fingerprints of a set comprising at least one candidate fingerprint; - a data processing device, for example a computer, according to any one of the embodiments of the second aspect of the invention, and configured to communicate with the storage medium.

[0068] According to certain embodiments, the system further comprises a device for acquiring an image of a fingerprint, the device configured to extract the coordinates of a list of minutiae from the image of a fingerprint obtainable by said device.

[0069] The acquisition device is of any suitable type. Non-limiting examples of acquisition devices are described in US 2012 014569 Al, IB KOREA LTD [KR], 19.01.2012 and US 2017 046554 Al, NEC CORP [JP], 16.02.2017.

[0070] Extracting the coordinates of a list of minutiae from an image of a fingerprint is a common practice. Non-limiting examples of extraction methods are described in the articles B ANS AL et al., Punam. Minutiae extraction from fingerprint images-a review. arXiv preprint arXiv: 1201.1422, 2011, and MOHSEN et al., Automatic Fingerprint Recognition Using Minutiae Matching Technique for the Large Fingerprint Database. arXiv preprint arXiv: 1304.2109, 2013. State-of-the-art acquisition devices can be easily adapted for the implementation of these methods, in particular via their own data processing unit or the addition of a dedicated data processing unit. Example

[0071] In an exemplary embodiment, the method for comparing two dactylograms from the lists of their minutiae takes a first source matrix MSI of the coordinates of each minutiae of a first list L1 of 'n' minutiae of a first dactylogram in a 4-dimensional space E and a second source matrix MS2 of the coordinates of each minutiae of a second list L2 of 'm' minutiae of a second dactylogram 1001 in a 4-dimensional space E. It comprises the following steps: (a) projecting each of the two source matrices MSI of dimension (n,4) and MS2 of dimension (m,4) using a previously optimized (trained) projection matrix of dimension (4,128) to form the projected matrices MPI, MP2 of dimension (n, 128) and (m,128) respectively; (b) infer two inference matrices MF1, MF2 respectively of dimensions (n, 128) and (m, 128), by application, on the projected matrices MPI, MP2, of a previously trained Transformer type graph neural network; (c) concatenating each of the inference matrices MF1 and MF2 with a vector VI, V2 of coordinates of a dummy minutia of dimension (1,128) to form enriched inference matrices MFE1, MFE2 of dimension (n+1, 128) and (m+1, 128) respectively; (e) encoding the intermediate matrix MI into an encoding matrix ME of dimension (n+m+2, 128) by applying a second previously trained Transformer-type graph neural network; (f) aggregating the values ​​of the intermediate matrix by an arithmetic mean, for each of the 128 dimensions to form a fixed-size vector VE (1, 128); (g) converting the fixed-size vector VE into a scalar number S using a one-dimensional projection matrix (128,1) followed by applying a sigmoid-type probability function, the scalar number having a value between 0 and 1.

[0072] The first and second Transformer-type graph neural networks comprise a succession of 9 layers of the attention mechanism type (“Multi-Head Self-Attention”) alternating with a multi-layer perceptron type neural network (“Multi-Layer Perceptron”), and is devoid of positional encoding. This type of structure is described in section 3.1 and illustrated in [Fig.l] of the article VASWANI, Ashish et al. Attention is ail you need. Advances in neural information Processing Systems, vol. 30, 2017.

[0073] The first graph neural network is trained by an identity-type supervised learning method. The second neural network is trained by a pairwise comparison supervised learning method. The projection matrix is ​​trained using a gradient descent learning method. The training set is a set comprising the minutiae lists of approximately 1 million 8 hundred thousand fingerprint images in which there are at least 6 different images of the same fingerprint. In other words, the training set comprises the minutiae lists of six images of three hundred thousand different fingerprints.

[0074] The performance of the method was evaluated by performing comparisons of several fingerprints from a database of minutiae lists of a plurality of fingerprints. The results of the evaluation are shown in FIG. 6 representing the evolution of the false negative rate (FRR) as a function of the false positive rate (FAR). For a threshold corresponding to 0.01% (10-2) of false positives (FAR), the occurrence rate of false negatives (FRR) is only 2.5%. Such a rate value makes the method particularly advantageous for use as a second step of precise comparison of a fingerprint among a set of candidate fingerprints having previously been the subject of a first screening step in an automatic identification process. References Patent literature

[0075] US 2012 014569 Al, IB KOREA LTD [KR], 01.19.2012.

[0076] US 2017 046554 Al, NEC CORP [JP], 02 / 16 / 2017. Non-patent literature

[0077] F. Galton, Fingerprint Directories. London, MacMillan & Co, 1895.

[0078] Henry Faulds, Guide to fingerprint Identification, Tokyo, Hanley, 1905.

[0079] E. Henry, Classification and uses of finger prints, published by his majesty’s stationery office, London, 1913.

[0080] ISO / IEC 19794-2:2005, Information Technology—Biométrie Data Interchange Formats—Part 2: Finger Minutiae Data, 2005.

[0081] B ANS AL, Roli, SEHGAL, Priti, et BEDI, Punam. Minutiae extraction from fingerprint images-a review. arXiv preprint arXiv: 1201.1422, 2011.

[0082] MOHSEN, S. M„ FARHAN, S. M„ et HASHEM, M. M. A. Automatic Fingerprint Récognition Using Minutiae Matching Technique for the Large Fingerprint Database. arXiv preprint arXiv: 1304.2109, 2013.

[0083] VASWANI, Ashish, SHAZEER, Noam, PARMAR, Niki, et al. Attention is ail you need. Advances in neural information processing Systems, vol. 30, 2017.

[0084] DOSOVITSKIY, Alexey, BEYER, Lucas, KOLESNIKOV, Alexander, et al. An image is worth 16x16 words: Transformers for image récognition at scale. arXiv preprint arXiv:2010.11929, 2020.

[0085] GROSZ, Steven A., ENGELSMA, Joshua J., RANJAN, Rajeev, et al. Minutiae-guided fingerprint embeddings via vision transformers. arXiv preprint arXiv:2210.13994, 2022.

[0086] TANDON, Saraansh et NAMBOODIRI, Anoop. Transformer based fingerprint feature extraction. In : 2022 26th International Conférence on Pattern Récognition (ICPR). IEEE, p. 870-876, 2022.

[0087] SU, Yapeng, ZHAO, Tong, et ZHANG, Zicheng. MRA-GNN: Minutiae Relation-Aware Model over Graph Neural Network for Fingerprint Embedding. arXiv preprint arXiv:2307.16416, 2023.

Claims

1. Claims A computer-implemented method (2000) for comparing two fingerprints from lists of their minutiae, said method taking, as input data, a first source matrix MSI of the coordinates of each minutiae of a first list L1 of 'n' minutiae of a first fingerprint in an 0-dimensional E space and a second source matrix MS2 of the coordinates of each minutiae of a second list L2 of 'm' minutiae of a second fingerprint in an 0-dimensional E space, and providing, as output data, a correspondence score between the two lists L1, L2 of minutiae, the method 2000 comprises the following steps: (a) projecting (2001) each of the two source matrices MSI, MS2 into a P-dimensional space G, the number of dimensions P of the space G being greater than the number of dimensions O of the space E of the coordinates of each minutia, said projection being carried out using a projection model Proj, the projection model Proj being previously trained to form, from the source matrices MSI, MS2, the projected matrices MPI, MP2 of dimension (n, p) and (m, p) respectively; (b) infer (2002) two inference matrices MF1, MF2 respectively of dimensions (n, p) and (m, p), by application, on the projected matrices MPI, MP2, of a previously trained graph neural network; (c) concatenate (2003) each of the inference matrices MF1 and MF2 with a vector VI, V2 of coordinates of a dummy minutia to form enriched inference matrices MFE1, MFE2 of dimension (n+1, p) and (m+l, p) respectively; (d) concatenate (2004) the two enriched inference matrices MFE1, MFE2 into an intermediate matrix MI of dimension (n+m+2, p); (e) encoding (2005) the intermediate matrix MI into an encoding matrix ME of dimension (n+m+2,p) by applying a second previously trained graph neural network; (f) aggregating (2006) the values ​​of the intermediate matrix into a vector VE of fixed size (1, p) using a previously trained aggregation model; (g) converting (2007) the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the matching score between the two lists L1, L2 of minutiae.

2. The method (2000) of claim 1, wherein the first and second graph neural networks are Transformer-type neural networks.

3. Method (2000) according to claim 2, such that the first and second Transformer-type neural networks comprise a succession of at least 9 layers of attention mechanism type alternating with a multi-layer perceptron-type neural network, and is devoid of positional encoding.

4. Method according to any one of claims 1 to 3, such that the aggregation model is an arithmetic mean, for each dimension P of the space G, of the values ​​of the intermediate matrix MI.

5. Method (2000) according to any one of claims 1 to 4, such that the space E is of dimension 3 and the coordinates of the minutiae correspond respectively to the values ​​of its abscissa, its ordinate and its orientation angle in the reference frame (X, Y) of the dactylogram.

6. Method (2000) according to any one of claims 1 to 5, such that it further comprises, before step (a), a preliminary step of normalizing the coordinates of each minutia in which the orientation angles are replaced by the values ​​of their sine and their cosine.

7. Method (2000) according to any one of claims 1 to 6, such that the projection model Proj is a projection matrix MP to a space G whose number P of dimensions is arbitrary, preferably to a space G of arbitrary dimension P of at least 32 times the dimensions O of the space E of the coordinates of each minutia.

8. A method (2000) according to any one of claims 1 to 7, such that the conversion model comprises a sigmoid-type probability function.

9. A data processing device (4000) comprising means for implementing the method according to any one of claims 1 to 8.

10. A computer program (14003) comprising instructions which, when the program is executed by a computer, cause the computer to implement the method of any one of claims 1 to 8.

11. A computer-readable recording medium (4003) comprising instructions which, when executed by a computer, cause the computer to carry out the method of any one of claims 1 to 8.

12. System for comparing two fingerprints from lists of their minutiae, said system comprises: - a storage medium on which is recorded a database containing the coordinates associated with each minutiae of a list of minutiae of each of the fingerprints of a set comprising at least one candidate fingerprint; - a data processing device according to claim 9 and configured to communicate with the storage medium.

13. The system of claim 12 further comprising a device for acquiring an image of a fingerprint and wherein the device is further configured to extract the coordinates of a list of minutiae from the image of a fingerprint obtainable using said acquisition device.

Citation Information

Patent Citations

  • Method and apparatus for slim type fingerprint recognition device

    US20120014569A1

  • Biometric collection device

    US20170046554A1

  • Partial planar point cloud matching using machine learning with applications in biometric systems

    US20230104839A1