How rafribeiro/forensicface works
forensicface is a Python face-analysis library for forensic examination. The main workflow configures task-specific ONNX models, processes an image through detection, alignment, optional pose/gender/age/quality estimation and embedding extraction, then returns structured face results. It also supports similarity comparison, quality-weighted aggregation, batch processing, video face extraction, and mosaic output. The graph combines README-documented capabilities with sampled implementation evidence; several subsystem links use the documented API because their source was not sampled.
Main entry points: app.py ForensicFace · component_catalog.py Component Catalog · batch.py Batch Processing · comparison.py Face Comparison
Components 19
Application API
- ForensicFace
src/forensicface/app.py - Batch Processing
src/forensicface/batch.py - Face Comparison
src/forensicface/comparison.py
Face Analysis
- Face Detection
src/forensicface/insightface/scrfd.py - Face Alignment
src/forensicface/aligned_processing.py - Face Attributes
src/forensicface/insightface/landmark.py - Quality Estimation
src/forensicface/quality.py - Embedding Inference
src/forensicface/recognition.py - Face Geometry
src/forensicface/geometry.py
Models And Runtime
- Component Catalog
src/forensicface/component_catalog.py - Component Contracts
src/forensicface/components.py - ONNX Adapters
src/forensicface/onnx_components.py - Model Store
src/forensicface/model_store.py - ONNX Runtime
src/forensicface/ort_runtime_setup.py
Results And Media
- Result Formatting
src/forensicface/results.py - Video Processing
src/forensicface/video.py - Face Mosaic
src/forensicface/mosaic.py
Other components
- Caller
- Analysis Results
Connections 20
- Caller → ForensicFace: configures and calls
- ForensicFace → Component Catalog: resolves components
- ForensicFace → Model Store: locates models
- ForensicFace → ONNX Runtime: sets providers
- Component Catalog → Component Contracts: builds contracts
- Component Catalog → ONNX Adapters: selects adapters
- ForensicFace → Face Detection: detects faces
- ForensicFace → Face Alignment: aligns faces
- ForensicFace → Face Attributes: estimates attributes
- ForensicFace → Quality Estimation: estimates quality
- ForensicFace → Embedding Inference: extracts embeddings
- ForensicFace → Face Geometry: computes geometry
- ForensicFace → Result Formatting: formats results
- Result Formatting → Analysis Results: returns results
- Caller → Batch Processing: requests batches
- Batch Processing → ForensicFace: processes images
- Caller → Face Comparison: requests comparison
- Face Comparison → ForensicFace: processes image pair
- Caller → Video Processing: requests video extraction
- Caller → Face Mosaic: requests mosaic