public class FingerprintMatcher extends ObjectFingerprint template representation optimized for fast 1:N matching.
FingerprintMatchermaintains data structures that improve matching speed at the cost of some RAM. It can efficiently match one probe fingerprint to many candidate fingerprints. Probe fingerprint template is passed to
FingerprintMatcher(FingerprintTemplate). Candidate fingerprint templates are then passed one by one to
Constructors Constructor and Description
FingerprintMatcherfrom probe fingerprint template.
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description
match(FingerprintTemplate candidate)Match candidate fingerprint template to this probe fingerprint and calculate similarity score.
public FingerprintMatcher(FingerprintTemplate probe)Create
FingerprintMatcherfrom probe fingerprint template. Constructed
FingerprintMatcheris heavy in terms of RAM footprint and CPU consumed to create it. It should be reused for multiple
match(FingerprintTemplate)calls in 1:N matching.
probe- fingerprint template to be matched to candidate fingerprints
- See Also:
public double match(FingerprintTemplate candidate)Match candidate fingerprint template to this probe fingerprint and calculate similarity score. Candidate fingerprint is matched to probe fingerprint previously passed to
FingerprintMatcher(FingerprintTemplate). Returned similarity score is a non-negative number that increases with similarity between probe and candidate fingerprints. Application should compare the score to a threshold with expression
(score >= threshold)to arrive at boolean match/non-match decision. Threshold 10 corresponds to FMR (false match rate) of 10%, threshold 20 to FMR 1%, threshold 30 to FMR 0.1%, and so on. Recommended threshold is 40, which corresponds to FMR 0.01%. Correspondence between threshold and FMR is approximate and varies with quality of fingerprints being matched. Increasing threshold rapidly reduces FMR, but it also slowly increases FNMR (false non-match rate). Threshold must be tailored to the needs of the application. This method is thread-safe. Multiple threads can match candidates against single
candidate- fingerprint template to be matched with probe fingerprint represented by this
- similarity score between probe and candidate fingerprints