A vision system on the production line, with no cloud behind it.
We automated a manual visual validation step for a leading Indian manufacturer. It runs fully offline, on the edge hardware the plant already had, inside the line's cycle time.
400ms → 100ms, inside a 240ms cycle time.Automating visual operations within the constraints of the production line.
What we built and what changed.Replace a manual visual check on the production line with a system that runs on existing edge hardware, offline, within the line's cycle time.
An open-set system instead of a fixed-label classifier, so the SKU catalog can change without retraining and the system can answer “I don’t know” when nothing in the frame matches.
92% top-1 accuracy at 100ms inference, 70% of manual data-entry events eliminated, and every frame of production data kept on the device.
Throughput bounded by human attention.
Manufacturing throughput often depends on manual visual checks. Operators must recognize parts and record or act on what they see using process-specific knowledge. The task varies by operation, but the constraint remains the same: accuracy depends on human attention and experience.
This expertise often sits with a small group of senior operators and takes months, if not years, to build. Manual checks limit throughput, fatigue increases errors, and staff turnover removes hard-won operational knowledge. A process bounded by human recall and sustained attention is difficult to scale.
The plant set the envelope.
The manufacturer added a camera module to its existing edge hardware on the line. We built the vision system to run inside that setup — not around it.
From camera capture to result, on limited on-device compute. Anything slower stalls the line.
Fully offline operation. Production data never leaves the device, and no inference depends on a network.
The SKU catalog also had to absorb frequent additions and removals — without a retraining cycle standing in the way.
Why a conventional classifier was ruled out.
A closed-set image classifier is the obvious choice here. It brings two structural problems that a production line exposes immediately.
The catalog problem
A closed-set classifier couples its supported SKUs to the model's training cycle. Every catalog change can require new labeled data and another model release — making model maintenance an operational bottleneck for a manufacturer that regularly adds and retires SKUs.
Open-set recognition instead of fixed labels. A small local reference set represents each SKU, bringing enrollment under five minutes without retraining.
The open-set problem
A production camera does not see only cataloged SKUs. Operators’ hands and tools routinely enter the frame. A closed-set classifier assigns those out-of-catalog inputs to a known class anyway, often with unwarranted confidence.
An explicit “I don’t know” path. The system geometrically rejects irrelevant objects, and when the visual evidence does not support a reliable match it abstains rather than returning a confident error.
The system had to support catalog changes without retraining and reject inputs that were not known SKUs.
The camera feed decides what the training set must contain.
Model choice matters to an extent. But the deployment performance depended more on matching the training distribution to the actual feed.
Lighting varied by site. Reflective parts introduced glare and hard shadows. Once a model met the edge compute budget, these input shifts mattered more than marginal differences between modern vision backbones.
We combined broad open-source pretraining data with site-specific SKU captures taken on the production cameras under operating conditions. The open-source corpus also exposed the model to background and non-SKU inputs. Augmentation reproduced low-light sensor behavior and motion blur — but the proportion of synthetic data had to be controlled: too much and the model fits augmentation artifacts, too little and the deployment distribution has gaps.
Own the data loop. That is how model performance compounds.
How it earns its place in the cycle time.
Initial inference alone took about 400ms against a 240ms budget. Profiling closed the gap, not switching to a smaller model backbone.
Enroll
A few reference images per SKU are added to the local catalog. No labeled dataset, no model release.
Under 5 minutesProfile and shrink
Profiling pointed at input resolution. Reducing it took inference from ~400ms to ~100ms with no measurable accuracy loss, leaving headroom for the rest of the pipeline.
400ms → 100msAdapt to the site
A per-SKU observation count acts as a prior for later inference, so the system reflects local SKU frequency — with no weight updates and no cloud sync.
No retrainingA new deployment starts with a sparse reference database. The device adapts to the conditions of the site it is actually standing in, rather than waiting for a central team to notice.
Measured on held-out production inputs.
The evaluation set covered both known SKUs and non-SKU inputs. Correct abstentions counted toward the score — recognizing an operator's hand as "not a SKU" is a right answer, not an evasion.
Recognition accuracy, known SKUs and non-SKU inputs
Held-out evaluation, including correct abstentions on out-of-catalog inputs. Bars are drawn to a true 0–100% scale.
Inference against the line's cycle time 4× faster
The line allows roughly 240ms from capture to result. Initial inference alone overran it. Reducing input resolution brought it to about 100ms with no measurable accuracy loss.
Where the operator's day went.
The system eliminated 70% of manual data-entry events. At observed volume, and two to three seconds removed per event, that is an estimated 127 minutes back per operator each day.
The manufacturer increased throughput without adding headcount. Removing repetitive data entry also reduced the opportunity for input errors and operator fatigue.
The operator stays; the repetition goes.
The system is not there to replace judgement. It takes the recognition and recording that consumed the day, and hands back everything it cannot stand behind.
Human judgement
- Frames the system abstains on
- Process exceptions and calls that need context
All production data remained on-device. The deployment reused the manufacturer's existing edge compute and required only a camera module — preserving data locality without adding cloud infrastructure or a recurring inference bill.
Which part of your line is bounded by human attention?
Talk to us about the steps in your process where recognition and recording set the pace — and what it would take to run them on the hardware you already have.