Embedding Biometric Pipeline
Complete pipeline for fingerprint enrollment, embedding extraction, storage, and matching with audit trails.
Overview
This project focuses on making biometric matching robust and reproducible by serializing embeddings and applying configurable thresholds and audit logging.
Key components
- Capture adapter for USB / mobile scanner
- Embedding extraction with a lightweight ONNX model
- Indexer and matcher (cosine similarity with calibrated threshold)
- Enrollment and audit logs; CSV export and webhook alerts
Example snippet (matcher)
def cosine(a, b):
a = a / np.linalg.norm(a)
b = b / np.linalg.norm(b)
return float(np.dot(a, b))
Deployment notes
- Containerize model server with a small Flask API for on-device inference
- Use SQLite for local index on edge devices, Postgres for centralized deployments
- Protect endpoints with API keys and rate limits