Enroll vs verify vs identify
Three operations, three problem shapes:
| Operation | Method | Input | Returns | When to use |
|---|---|---|---|---|
| Enroll | enrollFace / enrollFingerprint | enrolleeId + capture | enrollee row id | First time you see this subject |
| Verify | matchFace / matchFingerprint | enrolleeId + capture | { matched, distance, threshold } | Subject claims an identity; confirm it |
| Identify | searchFace | capture + topK | ranked candidates | Subject is anonymous; find them in a corpus |
Typical latency:
- Enrollment ~600 ms.
- 1:1 verification ~400 ms.
- 1:N search depends on corpus size. Plan for hundreds of milliseconds at small corpus sizes; benchmark for your corpus.
Consent and law
1:N identification has consent implications that 1:1 verification does not. With verification the user asserts an identity and the system confirms or denies it; the user knows they are being checked against a single record. With identification the user does not assert an identity, and the system searches across the population.
Some jurisdictions require explicit opt-in for biometric search across a population, and some require additional disclosures. Confirm your compliance posture before enabling 1:N flows.