The Challenge

Sites relying on CCTV for vehicle monitoring lack a reliable way to turn raw camera feeds into actionable plate data. Manual review doesn't scale, and naive frame-by-frame OCR produces duplicate alerts, low-confidence misreads, and false detections that erode trust in automated systems. Teams need a pipeline that can track vehicles across frames, resolve plate text with high confidence, avoid re-alerting on the same vehicle, and push clean results downstream — all in real time, under constrained GPU resources, and across unreliable RTSP camera links.

The Solution

ANPR is a GPU-accelerated streaming pipeline that ingests live RTSP/CCTV or pushed frames and turns them into verified plate reads. Vehicle detection and a SORT tracker maintain consistent car IDs across frames, while plate detection, OCR, and color classification run per-track. A voting mechanism requires multiple corroborating OCR samples before a plate is resolved, filtering out single lucky-or-unlucky high-confidence misreads, and a suffix-aware cooldown catches duplicate or truncated plate reads before they trigger repeat webhooks. Resolved plates are pushed to downstream systems via webhook, with per-module timing instrumentation (timerx) tracking vehicle detection, plate detection, OCR, and color classification performance across the pipeline.

Key Platform Capabilities

  • Robust Multi-Frame Plate Resolution: Combines a SORT-based vehicle tracker with an OCR voting mechanism that requires 2+ corroborating samples per track, preventing a single high-confidence-but-wrong read from resolving a plate incorrectly.
  • Duplicate & Truncation-Aware Deduplication: Applies a cooldown window with suffix/truncation matching (e.g. catching 'BW7527' against a previously resolved 'UP16BW7527'), closing gaps where partial OCR reads would otherwise slip past exact-match dedup and fire redundant webhooks.
  • Flexible Ingest for Live & Pushed Streams: Accepts direct RTSP/CCTV camera streams or frames pushed over HTTP from a remote client with auto-reconnect on decoder stalls, letting the same GPU pipeline serve on-prem cameras and remote sources through an SSH-tunneled ingest endpoint.
  • Built-In Performance Observability: Tracks cumulative per-module timing (count/avg/min/max/last) for vehicle detection, plate detection, OCR, and color classification via CSV logs, giving operators visibility into where GPU time is spent without instrumenting external tooling.

Executive Value & Future Vision

ANPR establishes a dependable foundation for turning live camera feeds into trustworthy, deduplicated plate events — reducing false and repeat alerts that would otherwise erode confidence in automated monitoring. Its modular pipeline (detection, tracking, OCR voting, dedup, webhook delivery) allows individual stages to be tuned or swapped without reworking the whole system. The next phase can focus on expanding to multi-camera deployments, tightening OCR accuracy on lookalike characters, and deeper integration with downstream security and access-control systems.