Engineering MVP / Prototype

BibVision

Offline race bib recognition and searchable video events.

Detection → OCR → Temporal Stabilization → Video Indexing → Clip Planning

Multi-person bib recognition in motion.

01 / Problem & constraints

From uncertain observations to searchable events.

Race footage introduces several practical challenges:

  • small and blurred bib numbers
  • multiple athletes in the same frame
  • unstable OCR across adjacent frames
  • repeated observations of the same bib
  • fragmented source video files

The useful output is not simply a bounding box. The goal is to turn uncertain visual observations into stable, searchable bib events associated with video time.

02 / System design

A layered offline pipeline.

BibVision system architecture from video or image input through detection, OCR, validation, temporal voting, bib events, indexing, and clip planning

03 / Key engineering decisions

Small decisions that make the output auditable.

01

Temporal reasoning over single-frame OCR

Nearby frames provide redundant evidence, so a decision is not forced from one noisy observation.

02

Domain-specific bib validation

Event-specific formats filter candidates without overwriting raw OCR evidence.

03

Logical timeline for fragmented video

Source fragments retain local timestamps while events are mapped to one global timeline.

04

Reproducible evaluation and provenance

Frozen data, fixed protocols, model versions, and artifact records keep comparisons traceable.

04 / Evaluation

A frozen detection benchmark, not a marketing number.

Frozen benchmark50 images · 66 GT boxes

V2 baseline

mAP50 0.54406

mAP50-95 0.30052

Fixed Recall 0.40909

Fixed F1 0.52427

V3 prototype baseline

mAP50 0.92273

mAP50-95 0.57318

Fixed Recall 0.89394

Fixed F1 0.88060

Detection-only; not an end-to-end OCR or race-level accuracy claim.

Comparison of V2 and V3 results on a frozen detection benchmark

05 / Temporal OCR stabilization

Evidence beats a single noisy frame.

Single-frame OCR can be noisy. Nearby frames provide redundant evidence, and voting happens at the whole-string level. Raw OCR evidence is preserved; the system does not vote character-by-character to construct an unseen bib number.

Temporal OCR stabilization showing noisy frame observations combined into a whole-string bib decision
Single-runner sequence for OCR stabilization.
Logical timeline mapping fragmented source video timestamps into bib presence intervals and clip decisions

06 / Video indexing & clip planning

Plan the edit before rendering the video.

Source fragments retain local timestamps, which are mapped into a logical global timeline. Bib events are aggregated into presence intervals, while ClipPlan stores edit decisions before video rendering. Source files do not need to be physically merged first.

ClipPlan is an edit decision list, not the rendered video itself.

07 / Results, limitations & lessons learned

What is implemented—and where the boundary remains.

Implemented

  • offline recognition pipeline
  • temporal bib stabilization
  • SQLite video indexing
  • continuous logical timeline
  • bib presence aggregation
  • ClipPlan and replay workflow
  • frozen detection benchmark

Known limitations

  • no Person ReID
  • no live-stream ingestion
  • no production realtime guarantee
  • OCR degrades on tiny, blurred, or occluded bibs
  • short-term association is not long-term identity tracking

Lessons

  • More data is not automatically better data.
  • Detection metrics do not represent end-to-end OCR quality.
  • Video should be treated as temporal evidence, not unrelated images.
  • Evaluation sets should remain frozen once used as a benchmark.