Package-level declarations
Types
ArcFace-family embedder (e.g. MobileFaceNet trained with ArcFace loss). Model I/O contract: [1,3,112,112] RGB normalised to (v - 127.5) / 127.5, output a single embedding vector (typically 512-d).
A detected face. Coordinates are in the pixel space of the image passed to the detector.
Result of FaceAnalyzer.analyze.
Selfie pipeline: detect -> quality gate -> optional liveness. Cheap detector runs on every frame; the heavier liveness model only runs on frames that already pass quality checks.
Finds faces in an image. Implementations must return results sorted by descending Face.score.
Turns an aligned face into a FaceEmbedding.
An L2-normalised face descriptor. Compare with FaceMatcher; never persist raw images just to re-embed.
Decides whether two embeddings show the same person.
Cheap, model-free checks that decide whether a face crop is good enough for liveness or matching.
Thresholds for FaceQualityAssessor. Defaults are conservative starting points; calibrate them on your target cameras before relying on them.
Decides whether a detected face is a live person or a presentation attack (printed photo, screen replay).
Passive single-frame liveness using MiniFASNet (Apache-2.0). Model I/O contract: [1,3,80,80] BGR 0..255 in, 3 logits out where class 1 is "real".
Face detector backed by YuNet (face_detection_yunet_2023mar.onnx, MIT). Model I/O contract: input float32 [1,3,640,640] BGR 0..255; outputs cls|obj|bbox|kps for strides 8, 16 and 32.