How we deployed an automatic number plate recognition system on edge hardware — covering multi-lane detection, character recognition, and the long tail of adversarial real-world conditions including Indian plate formats.
Our client operated tolling infrastructure across three states in India and needed an automated plate-reading system that could handle multi-lane traffic, monsoon rain, night conditions, and the full diversity of Indian regional plate formats — all within a 50ms latency budget that existing cloud-based solutions couldn't meet.
The existing vendor solution ran in the cloud, introduced 300–500ms round-trip latency, struggled with regional plate font variations, and failed entirely when cellular connectivity dropped at remote toll plazas. False reads triggered dispute workflows that cost the client more to resolve than the toll itself was worth.
The ask was unambiguous: move all inference to edge hardware at the gate, get latency under 50ms, and hit 99%+ accuracy across plate types including non-standard, hand-painted, and partially obscured plates — without a cloud dependency anywhere in the critical path.
ANPR is a solved problem in ideal conditions. The engineering work is in the long tail — the rain-soaked plate at 40km/h, angled 25 degrees, at 11pm, next to a truck whose headlights are blowing out the camera. We built the pipeline to treat these as the expected case, not the exception.
One of the hardest parts of this project was data. Indian licence plate formats are genuinely underserved in open-source datasets — the large public datasets are built for Chinese, Brazilian, or European plates, and a model trained on those fails on Indian regional fonts and layouts. We built a custom dataset covering all major Indian state formats, annotated at both the plate and character level, and used it to fine-tune every stage of the pipeline.
Why it matters: Indian plates use significantly different font styles, spacing conventions, and regional format rules compared to Western plates. A model that reads European plates at 98% will often read Indian plates at 60–70%. Domain-specific data isn't optional — it's the whole game.
Water streaking across the plate surface, reflections, and reduced contrast. Pre-processing pipeline handles streak artifacts before the OCR stage sees the crop.
IR camera mode with HDR-aware normalisation. The detector was trained on night captures specifically, not just augmented daytime data.
Deblur pass on the cropped plate region before OCR, tuned for typical gate-speed (5–40 km/h) vehicle motion profiles.
Perspective correction on every crop using the four-point plate annotation — the same approach that made the original Indian plate dataset useful.
Exposure normalisation and glare-masking layer in pre-processing. Tested against oncoming truck headlights at all gate configurations.
Hand-painted, partially obscured, faded, and stickered plates. The OCR module was fine-tuned on real-world degraded plate crops collected on-site.
On-site capture at existing gates across 3 states. Night, rain, and peak-hour sessions. Annotation pipeline for plate + character bounding boxes.
Real-time plate detector fine-tuned on the custom dataset. Benchmarked for multi-lane throughput and angle robustness.
Character-level recogniser with pre-processing for blur, glare, and perspective. Format-validation post-processing for Indian plate rules.
TensorRT export, Jetson integration, local VMS and alert API, monitoring dashboard, failover logging for connectivity drops.
The client's dispute-resolution team handled an average of 340 contested reads per week before deployment. That number dropped to under 90 in the first month — a direct consequence of the confidence-gated output layer that filters uncertain reads before they reach the VMS. The system has been running continuously for 7 months without a model retrain.
We publish the architecture pattern, not the model weights or dataset. The structural logic applies to any edge ANPR deployment.
A compact single-stage detector fine-tuned for plate aspect ratios, running at gate throughput on edge hardware. Four-point output per plate for perspective correction downstream.
A purpose-built recognition model trained on Indian plate fonts — not a generic OCR engine. Handles embossed, printed, and degraded formats with explicit multi-font training data.
Deskew, deblur, contrast normalisation, and glare masking applied to every plate crop before the OCR stage. The pipeline adapts to detected lighting conditions per-frame.
Every read goes through format-rule validation and a confidence threshold before reaching the downstream VMS. Low-confidence reads are queued for human review, not silently passed.
We build and ship edge inference systems for tolling, access control, traffic enforcement, and security — on NVIDIA Jetson and other constrained hardware. Start with a free 30-minute scoping call.
Talk to our team →We respond within 24 hours. First call is free.