
Automatic Number Plate Recognition at the Edge
An edge ANPR engine for access control and parking, rolled out from an 8-camera pilot to 74 cameras. Frames come in over RTSP or from Basler industrial cameras; detection, OCR, tracking and best-frame selection run on the device, and results go to MySQL and to the server over REST (HTTPS/TLS).
- Moved the hot path from Python to multithreaded C++: RTSP ingestion, YOLO inference, OCR post-processing, storage and camera reconnection.
- YOLOv4-tiny with TensorRT FP16 at ~25 FPS on Jetson Nano, serving up to 4 cameras per device.
- Motion gating, direction of travel, tracking and best-frame selection per vehicle. On a CPU-only Intel Atom site, a motion-gated ROI buffer raised vehicle capture from under 30% to ~70%.
ResultField test with 1,200 vehicles over 24 h: none missed, 99.4% of plates read exactly right.
- C++17
- Python
- YOLOv4
- TensorRT
- CUDA
- OpenCV
- GStreamer
- Basler Pylon



