YAML Metadata Warning:empty or missing yaml metadata in repo card

Check out the documentation for more information.

ID Card Detection, Tracking & Re-Identification β€” R&D Report & Prototype

Overview

This repository contains a comprehensive R&D investigation into the best modern approaches for real-time ID card detection, tracking, re-identification, and reference matching from mobile/video input, plus a working prototype implementation.

Contents

  • RD_REPORT.md β€” Full R&D report (50+ pages) covering:

    • Current system critique and limitations
    • Latest research findings (30+ papers, 2022-2026)
    • Dataset evaluation table
    • 3 architecture options (Edge / Production / Research-grade)
    • Final architecture recommendation
    • Experiment design and metrics
    • Synthetic data generation pipeline
    • Training and fine-tuning recipes
    • Implementation roadmap
  • enhanced/ β€” Prototype implementation:

    • config.py β€” Full configuration system with Edge/Production/Research presets
    • detector.py β€” YOLOv11 / D-FINE / RT-DETR detector with mock fallback
    • tracker.py β€” OC-SORT multi-object tracker (replaces ByteTrack)
    • feature_extractor.py β€” DINOv2 embedding extractor
    • reid_manager.py β€” EMA gallery for card re-entry detection
    • reference_matcher.py β€” SuperPoint + LightGlue reference matching
    • quality_scorer.py β€” Card quality assessment
    • pipeline.py β€” End-to-end pipeline orchestration
  • scripts/ β€” Evaluation and data generation:

    • evaluate_detection.py β€” mAP, precision/recall evaluation
    • evaluate_tracking.py β€” MOTA, IDF1, ID-switch metrics
    • evaluate_reid.py β€” ROC/AUC, CMC, EER evaluation
    • generate_synthetic_cards.py β€” Privacy-safe synthetic ID card generator
  • tests/ β€” Integration tests:

    • test_system.py β€” 68 tests covering all components

Recommended Architecture (Option B: Balanced Production)

Component Model HF Model Latency
Detector D-FINE-S Fine-tune from D-FINE GitHub 3.5ms (T4)
Tracker BoT-SORT-ReID Custom + DINOv2 ~5ms
Re-ID DINOv2-base facebook/dinov2-base ~15ms
Reference Match SuperPoint + LightGlue ETH-CVG/lightglue_superpoint sub-10ms
Total ~25ms

Quick Start

from enhanced.config import PipelineConfig
from enhanced.pipeline import IDCardPipeline

config = PipelineConfig.production_config()
pipeline = IDCardPipeline(config)

# Process a frame
result = pipeline.process_frame(frame)
for card in result.cards:
    print(f"Card {card.track_id}: {card.quality_label} (conf={card.confidence:.2f})")

Tests

pip install opencv-python-headless numpy faker
python tests/test_system.py
# Expected: 68/68 passed

Key Research References

  1. D-FINE (arxiv:2410.13842) β€” Detection
  2. OC-SORT (arxiv:2203.14360) β€” Tracking
  3. BoT-SORT (arxiv:2206.14651) β€” ReID Tracking
  4. DINOv2 (arxiv:2304.07193) β€” Instance Embeddings
  5. LightGlue (arxiv:2306.13643) β€” Feature Matching
  6. SAM2MOT (arxiv:2504.04519) β€” Research-grade Tracking
  7. DocXPand (arxiv:2407.20662) β€” Synthetic Data

License

Research prototype β€” see individual model licenses.

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Space using BesirVelioglu/id-card-detection-rd-report 1

Papers for BesirVelioglu/id-card-detection-rd-report