Skip to main content

active_face_liveness 0.2.0 copy "active_face_liveness: ^0.2.0" to clipboard
active_face_liveness: ^0.2.0 copied to clipboard

On-device active face liveness for Flutter using RGBW illumination, eye response, head turns, parallax, and replay evidence.

0.2.0 - 2026-10-02 #

  • Add opt-in built-in mouth opening and detector-backed tongue challenges, including rest/action/return validation, per-gesture timeouts, typed evidence, localized prompts and an example mouth toggle. Both default to disabled; tongue requires an application-supplied model adapter.

Behavior changes #

  • Migration: direct classifyLiveness callers must explicitly pass all required evidence flags. Omitted flags now default to false. Incomplete scans return unknown rather than photo.
  • A sustained squint no longer satisfies the blink challenge; require a full open–closed–open sequence. Optional mouth/tongue challenges default to disabled.

Reliability improvements #

  • Fail closed on omitted liveness evidence; classify incomplete scans as unknown.
  • Require continuously observed head holds and invalidate interrupted sessions.
  • Use monotonic camera receipt times and rendered pulse windows, timer-driven illumination, stale-frame rejection and bounded inference draining.
  • Require an open–closed–open blink on the same signal; remove squint-only pass.
  • Track RGB skin patches with landmarks and camera rotation; correlate per-frame colour responses with equal weighting per pulse.
  • Limit replay-loop evidence to dynamic windows during head movement.
  • Extract pure Dart evidence primitives and add regression scenarios.
  • Document heuristic-score limits and add a labelled-session evaluation tool.

Integration improvements #

  • Added the one-line ActiveFaceLiveness.verify privacy-first API.
  • Added stable failure codes, public scan steps, and step callbacks.
  • Added configurable scanner colours, visibility controls, and header labels.
  • Added a translucent outside-face-guide overlay.
  • Added runtime configuration validation and privacy-safe JSON serialization.
  • Added a complete integration example.

Validation #

  • Static analysis passes and 33 pure-Dart regression scenarios pass.
  • Full Flutter tests remain blocked by the macOS dartcv4/OpenCV native build.
  • Detection thresholds and accuracy still require labelled real-device trials; the combined score is an uncalibrated heuristic, not a probability.

0.1.0 #

  • Initial active face liveness package.
  • Added randomized two-second RGBW illumination challenge.
  • Added blink/squint, multi-region colour correlation and head-turn parallax.
  • Added typed LivenessConfig, LivenessResult and LivenessEvidence APIs.
  • Added configurable capture contrast, maximum output size and image output as PNG bytes, Base64, both, or none.
  • Added Android and iOS example application.
0
likes
150
points
434
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

On-device active face liveness for Flutter using RGBW illumination, eye response, head turns, parallax, and replay evidence.

Repository (GitHub)
View/report issues

Topics

#liveness #face-detection #anti-spoofing #biometrics #on-device

License

MIT (license)

Dependencies

camera, face_detection_tflite, flutter, flutter_litert, object_detection, screen_brightness

More

Packages that depend on active_face_liveness