Pallet and SKU recognition
Case and pallet identification from label, shape and placement context across aisle cameras.
From box counting to continuous reconciliation.
A vision system that watches warehouse activity and continuously compares what is physically on the shelf against what the WMS believes, so discrepancies surface within hours instead of at the next stock count.
01 — The problem
Physical inventory counts happened quarterly, shut down half the floor for two days, and produced a number that was already stale when it was published. Between counts, the WMS was assumed correct because nothing contradicted it.
The discrepancies were not random. Misplacement, mis-picks and unrecorded movements accumulated in predictable places, but by the time a count found them the trail was three months cold and no cause could be established.
02 — What we did
We stopped treating counting as an event. Cameras already covering the aisles observe pallet and case movement continuously, and every observation is reconciled against the WMS transaction stream as it happens.
The output is deliberately narrow: a discrepancy queue. Rather than claiming a perfect real-time count, the system reports specific locations where physical observation and system state disagree, with the clip and the transaction that should have matched.
A quarterly count tells you that you were wrong. It never tells you when you became wrong.
Two of the screens that carry the most weight in daily use, rebuilt here from the production design system.
A narrow, honest outputRather than claiming a perfect live count, the system reports specific locations where physical observation and system state disagree.
Accuracy as a live measureInventory accuracy is tracked continuously instead of appearing as a quarterly snapshot that is stale on publication.
Grouped by the job each set of capabilities exists to do, rather than by which team built it.
Case and pallet identification from label, shape and placement context across aisle cameras.
Movement followed across camera boundaries so a pallet leaving one view is the same pallet entering the next.
Physical position resolved to the bin and level of the racking model rather than to a camera frame.
Confidence lowered rather than fabricated when a view is blocked, with the gap reported.
Live transaction stream consumed and matched against observed movement within a tolerance window.
Continuous comparison producing a discrepancy queue rather than a claimed absolute count.
Stock present in a location the system does not expect, flagged with both records.
Movement with no corresponding transaction raised while the clip is still available.
A worklist ordered by value and age, each item opening onto its clip and expected transaction.
Cycle counts directed at locations the system flags instead of scheduled blindly by zone.
Discrepancy clustering by shift, zone and equipment to separate process problems from one-offs.
Inventory accuracy tracked continuously as a live measure rather than a quarterly snapshot.
Layer by layer, with the reason each one exists — because the reason is usually the interesting part.
Aisle cameras with on-site inference producing movement events; footage is retained briefly and only around flagged events.
Racking model mapping camera coordinates to bin and level so observations land in warehouse terms.
Temporal matching of observed movements against WMS transactions with configurable tolerance and confidence.
Queue of unmatched observations and unobserved transactions with evidence attached to each.
Triage workspace with clip playback, expected transaction and directed count generation.
Technology
Measured against how the operation ran before, not against a benchmark chosen after the fact.
Discrepancies surface in hours. The trail is still warm, so causes can actually be established.
Counts became targeted. Cycle counting goes where the system flags rather than sweeping zones on a schedule.
The floor stopped shutting down. Continuous reconciliation replaced the two-day quarterly count.
The system states its uncertainty. Occluded views lower confidence and report a gap rather than inventing a number.
How it ran
Assessed existing camera coverage and built the racking model that observations map into.
Pallet and case recognition with cross-camera tracking through occlusion.
Transaction stream integration and the tolerance-window matching engine.
Discrepancy queue, clip playback, directed counts and accuracy trending.
From defect detection to defect causality.
A multimodal system that correlates line video, machine telemetry, batch records and operator actions to explain why a defect happened, not merely that it did..
Not alarm detection. Failure hypothesis reduction.
A correlation engine that turns an alarm storm into a short ranked list of probable root causes by reasoning over network topology and fault propagation rather than alarm counts..
From a single inspection to longitudinal asset integrity.
A vision system that detects and localises pipeline deterioration, then tracks each defect across inspection cycles so maintenance is prioritised by progression rather than by appearance..
Tell us what you run. We will reply within two business days with what we would build for your situation — and, just as usefully, what we would leave out.