public class FingerprintMatcher extends Object
FingerprintMatchermaintains data structures that improve matching speed at the cost of some RAM. It can efficiently match one probe fingerprint to many candidate fingerprints.
New matcher is created by passing probe fingerprint template to
index(FingerprintTemplate) on an empty fingerprint matcher instantiated with
FingerprintMatcher() constructor. Candidate fingerprint templates are then passed one by one to
|Constructor and Description|
Instantiates an empty fingerprint matcher.
|Modifier and Type||Method and Description|
Builds search data structures over probe fingerprint template.
Matches candidate fingerprint to probe fingerprint and calculates similarity score.
match(FingerprintTemplate). You can call
index(FingerprintTemplate)to index probe fingerprint and
match(FingerprintTemplate)to match it to some candidate fingerprint.
@Deprecated public FingerprintMatcher transparency(FingerprintTransparency transparency)
FingerprintTransparencyis activated automatically via thread-local variable in recent versions of SourceAFIS, this method does nothing in current version of SourceAFIS. It will be removed in some later version.
public FingerprintMatcher index(FingerprintTemplate probe)
match(FingerprintTemplate)to compare fingerprints.
This method is heavy in terms of RAM footprint and CPU usage. Initialized
FingerprintMatcher should be reused for multiple
match(FingerprintTemplate) calls in 1:N matching.
public double match(FingerprintTemplate candidate)
candidateparameter is matched to probe fingerprint previously passed to
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, see Biometric Performance and Confusion matrix) 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
Copyright © 2009–2020 Robert Važan. All rights reserved.