Skip to main content

Concepts

Applicant​

The Applicant represents an enrolled person. It holds the person's biometric data — images, extracted templates, and quality — across the face, iris, and fingerprint modalities. Once enrollment is complete, the Applicant's ModalitiesTemplate can be stored and reloaded for later matching.

Template extraction and storage​

An extractor turns a captured or segmented modality sample into a template; the templates for all of an Applicant's modalities are held in a ModalitiesTemplate. A serialized template has two parts:

  • a header part — metadata describing the template, and
  • a binary part — the biometric data itself.

Splitting the two lets an application store or index the header separately from the binary payload. See the API Reference for the exact serialization API.

Similarity score and threshold​

Matching returns a similarity score; comparing it against a similarity threshold decides whether two samples come from the same source. The SDK uses this both for verification and for enrollment-time checks — for example, validating a captured fingerprint against the rest of a slap: a print is consistent when its score is at or above the threshold for the same finger position, and at or below the threshold for a different position.

Thresholds trade False Accept Rate against False Reject Rate — choose the operating point for your security needs and validate it on your own data. For exact score ranges and recommended thresholds per modality, see the API Reference.

Quality​

The SDK reports quality scores that indicate whether a sample is suitable for further processing. Gate enrollment on quality so that only usable samples produce templates. Face quality is computed with OFIQ; iris and fingerprint expose their own scores.

Fingerprint quality metrics​

For a captured fingerprint, the SDK can report the scores below. The image-based scores follow the guidelines in Section 7.2.5 of ANSI/INCITS 381 (Section 8.3.7.3 of ISO/IEC 19794-4).

MetricRangeMeaning
Template quality0–100Suitability of the extracted template for matching, computed from the template (0 = blank image, 100 = maximum). Enrollment is recommended only for templates with quality > 30.
Placement0–100Fitness of the finger placement, evaluated against the detected fingerprint classification (arch, loop, whorl).
NFIQ 11–5NIST Fingerprint Image Quality. 1 = highest quality, 5 = lowest.
NFIQ 20–100NIST Fingerprint Image Quality 2 (reference implementation of ISO/IEC 29794-4). Higher is better.
Image quality0–100Overall fingerprint image quality. Higher is better.

What the NFIQ scores consider. Both predict how well a fingerprint will match, not just how sharp it looks. NFIQ 1 grades the image from 1 to 5 using features such as the usable fingerprint area and the number and quality of detected minutiae. NFIQ 2 derives its 0–100 score from local image features – ridge and valley clarity, ridge-flow and orientation consistency, contrast, and usable fingerprint area.

A separate presence score (0–100) reports the area where a fingerprint is detected; it measures coverage, not the quality of the ridge pattern. For the exact calls, see the API Reference.

Server execution​

The image, print, face, and iris operations can run in-process or be delegated to a provided server (enrollment_server, for example enrollment_server 127.0.0.1:50051). To use it, pass a server executor to the relevant class or set a global executor; the rest of the API is unchanged. This lets heavy model execution run on a separate host from the integrating application.