A gate that reads the lorry and opens itself
Number-plate recognition tuned for Indian plates and night rain, wired into the barrier controller and the yard's booking sheet.
- Movements read each day
- 700+
- From trigger to barrier decision
- 2 s
- To correct a low-confidence read
- 1 tap
The client
A third-party logistics operator
Named clients are withheld under the confidentiality agreements we work to. Sector, scale and system detail are published with permission.
- Sector
- Warehousing and yard operations
- Scale
- Two yards, six lanes, roughly 700 vehicle movements a day
- Duration
- 11 weeks, including three weeks of on-site data collection
- Team
- Computer vision engineer, Embedded engineer, Backend engineer, Site electrician, client side, Project manager
What was wrong.
Every vehicle stopped twice. Once for the guard to read the plate off the windscreen and write it in a register, once for someone inside to confirm the booking existed. At shift change the queue reached the main road.
Plates here are not uniform. Hand-painted characters, regional fonts, mud, glare from sodium lamps, and rear plates mounted at angles no camera maker plans for. Recognition trained on European plates read them badly, and a wrong read is worse than no read when it lifts a barrier.
The approach, step by step.
- 01
Collect the hard cases first
Three weeks of plate crops from both yards, labelled by hand and weighted towards night, rain and damaged plates. Anything the stock model already read perfectly was sampled down, so training time went to the failures.
- 02
Two stages, not one
A detector finds the plate region and a separate model reads the characters. Splitting them let us retrain the reader for Indian character sets and regional fonts without disturbing detection.
- 03
Confidence decides who opens the barrier
Above the threshold, with a booking that matches, the barrier lifts. Below it, the crop and the best guess go to the guard's tablet, and the guard's correction is stored as a new training example.
- 04
Wire it to the gate carefully
The controller integration is a dry-contact relay behind a hardware interlock. If the software stops, the barrier falls back to manual and the guard carries on exactly as before.
- 05
Close the loop with the yard system
Recognised plates are matched against the day's bookings. An unbooked vehicle is never refused automatically; it is routed to the supervisor with the read and the image attached.
The architecture we shipped.
Every layer below exists in the running system. Nothing here is a reference diagram.
- Capture
- Two IP cameras per lane, one at windscreen height and one for the rear plate, with infrared illumination on the night lanes.
- Trigger
- An inductive loop in the road wakes the pipeline, so models run on arrival rather than burning power continuously.
- Detection and reading
- A plate detector followed by a character recognition model, both running on an edge GPU inside the gatehouse.
- Decision service
- Confidence threshold, plate format check and booking lookup. Anything below the threshold is escalated, never guessed.
- Gate control
- A relay board driving the barrier controller, with a hardware bypass and a physical key switch for the guard.
- Yard integration
- Movements posted to the yard management system with entry time, lane, plate and the image that justified the decision.
- Review console
- Guards correct misreads on a tablet, and every correction joins the next retraining batch.
What it does now.
Read from the system itself. No revenue claims, no multiples.
Movements read each day
Six lanes across two yards, through the night as well as the day shift.
From trigger to barrier decision
Measured at the gate, including the booking lookup.
To correct a low-confidence read
Doubtful reads reach the guard's tablet instead of the barrier.
Decisions stored with their image
Every lift stays auditable months later, plate crop included.
What it runs on.
- Python
- PyTorch
- TensorRT
- NVIDIA Jetson
- OpenCV
- MQTT
- Modbus relay I/O
- FastAPI
- PostgreSQL
- React tablet console
We stopped arguing about which lorry came in when. The read and the photograph are both there, so the conversation is about the exception.
Attributed by role and sector only, at the client's request.
What happens next.
Container number recognition on the same cameras, so the yard sheet is filled from the image rather than typed at the desk.
Services behind this build
Sector
LogisticsTwo yards, six lanes, roughly 700 vehicle movements a day. The pattern transfers; the domain detail is rebuilt for every client.
Have a system that should work like this one?
We will walk your process, tell you what is worth automating, and scope the first version that can be measured.