Biometric verification using biometric feature transformation
In one embodiment, a method includes accessing query biometric data associated with a verification request for a user. The method further includes applying a transformation to the query biometric data to generate a transformed query template representing the query biometric data and accessing a transformed enrollment template comprising transformed enrollment biometric data of the user. The method further includes determining, based on a scoring function comparing the transformed query template and the transformed enrollment template, a plurality of similarity scores, each similarity score associated with a different value of a scoring parameter; and determining, based on the plurality of determined similarity scores, whether to grant or deny the verification request.
1 . A computer-implemented method comprising:
accessing query biometric data associated with a verification request for a user;
applying a transformation to the query biometric data to generate a transformed query template representing the query biometric data;
accessing a transformed enrollment template comprising transformed enrollment biometric data of the user;
determining, based on a scoring function comparing the transformed query template and the transformed enrollment template a plurality of times, a plurality of similarity scores, wherein:
the scoring function comprises (1) one or more explicit parameters and (2) one or more latent parameters, each latent parameter having a value that is not directly measured;
each similarity score of the plurality of similarity scores is based on the one or more explicit parameters and the one or more latent parameters; and
each similarity score is associated with a different value of at least one of the one or more latent parameters; and
determining, based on the plurality of determined similarity scores, whether to grant or deny the verification request.
2 . The method of claim 1 , wherein the transformation is based on calculating a k-tuple characteristic for each of a plurality of k-tuples of distinctive biometric features in the query biometric data.
3 . The method of claim 2 , wherein each transformed template comprises a set of entries, each entry comprising: (1) a function of coordinates of multiple distinctive biometric features in k-tuples, (2) a function of angular orientations of multiple distinctive biometric features in k-tuples, and (3) a function of categorical attributes of distinctive biometric features in k-tuples.
4 . The method of claim 2 , wherein the k-tuples are pairs.
5 . The method of claim 4 wherein each transformed template comprises a set of entries, each entry comprising: (1) a function of coordinates of a pair of distinctive biometric features, (2) a function of angular orientations of a pair of distinctive biometric features, and (3) a function of categorical attributes of distinctive biometric features.
6 . The method of claim 2 , wherein the similarity score is based on a number of elements in the transformed query biometric data that match any element in the transformed enrollment biometric data.
7 . The method of claim 6 , wherein a match between an element in the transformed query biometric data and an element in the transformed enrollment biometric data is determined based on a measure of similarity or difference between the one or more k-tuple characteristics determined for the transformed query data and the transformed enrollment biometric data.
8 . The method of claim 6 , wherein a match between an element in the transformed query biometric data and an element in the transformed enrollment biometric data is determined based on one or more of:
a difference between a relative distance in the transformed query biometric data and a relative distance in the transformed enrollment biometric data that is less than a threshold distance value; or
a difference between a relative rotation angle in the transformed query biometric data and a relative rotation angle in the transformed enrollment biometric data that is less than a threshold angle value.
9 . The method of claim 1 , wherein at least one of the one or more latent parameters comprises an estimated amount of perturbation of the query biometric data.
10 . The method of claim 1 , wherein the determining whether to grant or deny the verification request comprises determining, based upon prior information, a probability that an observed statistical distribution of the plurality of similarity scores arises from matching query and enrolled biometric data.
11 . The method of claim 1 , wherein the one or more explicit parameters comprises one or more of:
a number of entries selected from each of the transformed query template and the transformed enrollment template;
an imaging resolution of a sensor used to capture the query biometric data or the enrollment biometric data;
a measure of distortion of at least one of the query biometric data or the enrollment biometric data based on at least one of prior information or sensor input; or
a context associated with at least one of the query biometric data or the enrollment biometric data.
12 . The method of claim 1 , wherein the one or more latent parameters comprises one or more of:
a variance in each of one or more spatial coordinates of distinct biometric features measured in the query biometric data;
a variance in each of one or more angular coordinates of the distinct biometric features measured in the query biometric data;
an amount of noise in an output of a sensor used to measure the query biometric data; or
an imaging resolution of a sensor used to capture the query biometric data or the enrollment biometric data.
13 . The method of claim 1 , wherein determining, based on the plurality of determined similarity scores, whether to grant or deny the verification request comprises:
determining, for each of the plurality of determined similarity scores, a match result between the transformed query template and the transformed enrollment template; and
determining, based on each of the match results, whether to grant or deny the verification request.
14 . The method of claim 13 , wherein, for each match result, determining the match result comprises comparing the respective similarity score with a scoring threshold that is based on the particular values of at least some of the parameters of the scoring function.
15 . The method of claim 14 , wherein the scoring threshold is based on a score distribution corresponding to a plurality of matching biometrics and a score distribution corresponding to a plurality of non-matching biometrics.
16 . The method of claim 15 , wherein the scoring threshold is a manifold that separates the score distribution corresponding to the plurality of matching biometrics and the score distribution corresponding to the plurality of non-matching biometrics.
17 . The method of claim 13 , wherein each match result comprises a probability of a match or a probability of a non-match between the transformed query template and the transformed enrollment template.
18 . The method of claim 17 , wherein determining, based on each of the match results, whether to grant or deny the verification request comprises determining whether to grant or deny the verification request based on a weighted combination of each of the match results, wherein each match result is weighted by a probability associated with the particular value of at least one of the latent parameters.
19 . The method of claim 18 , wherein the weighted combination of each match result comprises a weighted sum of each match result.
20 . The method of claim 13 , further comprising:
determining, based on each of the match results, a match probability and a non-match probability;
determining whether an absolute value of a difference between the match probability and the non-match probability is greater than a threshold; and
in response to a determination that absolute value of the difference between the match probability and the non-match probability is greater than the threshold, then determining whether to grant or deny the verification request based on the most probable of the match probability and the non-match probability.
21 . The method of claim 20 , further comprising:
accessing, in response to a determination that the absolute value of the difference between the match probability and the non-match probability is not greater than the threshold, additional query biometric data associated with the verification request for a user; and
determining whether to grant or deny the verification request based on the plurality of determined similarity scores and on the additional query biometric data.
22 . The method of claim 1 , further comprising at least one of:
automatically determining the transformation by optimizing the transformation according to an irreversibility metric; or
automatically determining the scoring function by optimizing the scoring function according to a discriminative metric.
23 . The method of claim 1 , wherein the query biometric data comprises at least one of:
a set of measured fingerprint minutiae;
a mathematical representation of an ocular iris image;
a mathematical representation of a retinal blood vessel image;
a mathematical representation of an image of at least a portion of a person's face;
a mathematical representation of a motion of at least a portion of a person's body; or
a mathematical representation of one or more acoustic signatures of human speech.
24 . One or more non-transitory computer readable storage media storing instructions and coupled to one or more processors that are operable to execute the instructions to:
access query biometric data associated with a verification request for a user;
apply a transformation to the query biometric data to generate a transformed query template representing the query biometric data;
access a transformed enrollment template comprising transformed enrollment biometric data of the user;
determine, based on a scoring function comparing the transformed query template and the transformed enrollment template a plurality of times, a plurality of similarity scores, wherein:
the scoring function comprises (1) one or more explicit parameters and (2) one or more latent parameters, each latent parameter having a value that is not directly measured;
each similarity score of the plurality of similarity scores is based on the one or more explicit parameters and the one or more latent parameters; and
each similarity score is associated with a different value of at least one of the one or more latent parameters; and
determine, based on the plurality of determined similarity scores, whether to grant or deny the verification request.
25 . An apparatus comprising one or more non-transitory computer readable storage media storing instructions; and one or more processors coupled to the non-transitory computer readable storage media, the one or more processors operable to execute the instructions to:
access query biometric data associated with a verification request for a user;
apply a transformation to the query biometric data to generate a transformed query template representing the query biometric data;
access a transformed enrollment template comprising transformed enrollment biometric data of the user;
determine, based on a scoring function comparing the transformed query template and the transformed enrollment template a plurality of times, a plurality of similarity scores, wherein:
the scoring function comprises (1) one or more explicit parameters and (2) one or more latent parameters, each latent parameter having a value that is not directly measured;
each similarity score of the plurality of similarity scores is based on the one or more explicit parameters and the one or more latent parameters; and
each similarity score is associated with a different value of at least one of the one or more latent parameters; and
determine, based on the plurality of determined similarity scores, whether to grant or deny the verification request.
26 . The apparatus of claim 25 , wherein the transformation is based on calculating a k-tuple characteristic for each of a plurality of k-tuples of distinctive biometric features in the query biometric data, and wherein the k-tuples are pairs.