Method for comparing two dactylograms
The invention relates to a method for comparing two dactylograms based on lists of their minutiae, said method taking, as input data, a first source matrix MS 1 of the coordinates of each minutia in a first list L 1 of minutiae of a first dactylogram and a second source matrix MS 2 of the coordinates of each minutia in a second list L 2 of minutiae of a second dactylogram, and supplying, as output datum, a score regarding a match between the two lists L 1 , L 2 of minutiae.
1 . A computer-implemented method for comparing two dactylograms based on lists of their minutiae, said method taking, as input data, a first source matrix MS 1 of the coordinates of each minutia in a first list L 1 of ‘n’ minutiae of a first dactylogram in an O-dimensional space E and a second source matrix MS 2 of the coordinates of each minutia in a second list L 2 of ‘m’ minutiae of a second dactylogram in an O-dimensional space E, and supplying, as output datum, a score regarding a match between the two lists L 1 , L 2 of minutiae, the method comprising the following steps:
(a) projecting each of the two source matrices MS 1 , MS 2 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 trained beforehand to form, from the source matrices MS 1 , MS 2 , the projected matrices MP 1 , MP 2 of dimension (n, p) and (m, p), respectively;
(b) inferring two inference matrices MF 1 , MF 2 respectively of dimensions (n, p) and (m, p), by applying a previously trained graph neural network to the projected matrices MP 1 , MP 2 ;
(c) concatenating each of the inference matrices MF 1 and MF 2 with a vector V 1 , V 2 of coordinates of a dummy minutia so as to form, respectively, enriched inference matrices MFE 1 , MFE 2 of dimension (n+1, p) and (m+1, p), respectively;
(d) concatenating the two enriched inference matrices MFE 1 , MFE 2 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) aggregating the values of the intermediate matrix into a vector VE of fixed size (1, p) using a previously trained aggregation model; and
(g) converting the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the score regarding a match between the two lists L 1 , L 2 of minutiae,
wherein n, m, p, O, and P are integer values greater than 0, and S has a value between 0 and 1.
2 . The method as claimed in claim 1 , such that the first and second graph neural networks are transformer neural networks.
3 . The method as claimed in claim 2 , such that the first and second transformer neural networks comprise a succession of at least 9 multi-head self-attention mechanism layers alternating with a multi-layer perceptron neural network.
4 . The method as claimed in claim 1 , 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 . The method as claimed in claim 1 , such that the space E is 3-dimensional and the coordinates of the minutiae correspond respectively to the values of its abscissa, its ordinate and its orientation angle in the reference system (X, Y) of the dactylogram, X and Y being two-dimensional Cartesian coordinate values.
6 . The method as claimed in claim 1 , such that it furthermore 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 . The method as claimed in claim 1 , such that the projection model Proj is a projection matrix MP into a space G whose number P of dimensions is arbitrary, preferably into 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 . The method as claimed in claim 1 , such that the conversion model comprises a sigmoid probability function.
9 . A data processing device for comparing two dactylograms based on lists of their minutiae, said method taking, as input data, a first source matrix MS 1 of the coordinates of each minutia in a first list L 1 of ‘n’ minutiae of a first dactylogram in an O-dimensional space E and a second source matrix MS 2 of the coordinates of each minutia in a second list L 2 of ‘m’ minutiae of a second dactylogram in an O-dimensional space E, and supplying, as output datum, a score regarding a match between the two lists L 1 , L 2 of minutiae, the data processing device comprising one or more processors configured to:
(a) project each of the two source matrices MS 1 , MS 2 into a P-dimensional space G, the number of dimensions P of the space G being greater than the number of dimensions (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 trained beforehand to form, from the source matrices MS 1 , MS 2 , the projected matrices MP 1 , MP 2 of dimension (n, p) and (m, p), respectively;
(b) infer two inference matrices MF 1 , MF 2 respectively of dimensions (n, p) and (m, p), by applying a previously trained graph neural network to the projected matrices MP 1 , MP 2 ;
(c) concatenate each of the inference matrices MF 1 and MF 2 with a vector V 1 , V 2 of coordinates of a dummy minutia so as to form, respectively, enriched inference matrices MFE 1 , MFE 2 of dimension (n+1, p) and (m+1, p), respectively;
(d) concatenate the two enriched inference matrices MFE 1 , MFE 2 into an intermediate matrix MI of dimension (n+m+2, p);
(e) encode 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 vector VE of fixed size (1, p) using a previously trained aggregation model; and
(g) convert the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the score regarding a match between the two lists L 1 , L 2 of minutiae,
wherein n, m, p, O, and P are integer values greater than 0, and S has a value between 0 and 1.
10 . A system for comparing two dactylograms based on lists of their minutiae, said system comprising:
a storage medium on which there is recorded a database containing the coordinates associated with each minutia in a list of minutiae of each of the dactylograms of a set comprising at least one candidate dactylogram;
a data processing device as claimed in claim 9 and configured to communicate with the storage medium.
11 . The system as claimed in claim 10 , furthermore comprising a device for acquiring an image of a dactylogram, and wherein the device is furthermore configured to extract the coordinates of a list of minutiae based on the image of a dactylogram able to be obtained using said acquisition device.
12 . A non-transitory computer-readable recording medium comprising instructions that, when they are executed by a computer, cause the computer to implement the method for comparing two dactylograms based on lists of their minutiae, said method taking, as input data, a first source matrix MS 1 of the coordinates of each minutia in a first list L 1 of ‘n’ minutiae of a first dactylogram in an O-dimensional space E and a second source matrix MS 2 of the coordinates of each minutia in a second list L 2 of ‘m’ minutiae of a second dactylogram in an O-dimensional space E, and supplying, as output datum, a score regarding a match between the two lists L 1 , L 2 of minutiae, the method comprising the following steps:
(a) projecting each of the two source matrices MS 1 , MS 2 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 trained beforehand to form, from the source matrices MS 1 , MS 2 , the projected matrices MP 1 , MP 2 of dimension (n, p) and (m, p), respectively;
(b) inferring two inference matrices MF 1 , MF 2 respectively of dimensions (n, p) and (m, p), by applying a previously trained graph neural network to the projected matrices MP 1 , MP 2 ;
(c) concatenating each of the inference matrices MF 1 and MF 2 with a vector V 1 , V 2 of coordinates of a dummy minutia so as to form, respectively, enriched inference matrices MFE 1 , MFE 2 of dimension (n+1, p) and (m+1, p), respectively;
(d) concatenating the two enriched inference matrices MFE 1 , MFE 2 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) aggregating the values of the intermediate matrix into a vector VE of fixed size (1, p) using a previously trained aggregation model; and
(g) converting the fixed-size vector VE into a scalar number S using a conversion model, said scalar number being the score regarding a match between the two lists L 1 , L 2 of minutiae,
wherein n, m, p, O, and P are integer values greater than 0, and S has a value between 0 and 1.