We thought we were clever when we swapped out three human inspectors for a single camera and a neural network. The plan was simple: mount a high-resolution camera above the conveyor, train a model on 10,000 images of good and bad circuit boards, and let it flag defects in real time. It worked flawlessly in the lab. On the factory floor, it failed by lunchtime on day one.
The first problem was lighting. Our training images were shot under consistent LED panels with no shadows. The actual line sat next to a roll-up bay door that opened every twenty minutes for forklifts. Sunlight would blast across the boards at a low angle, making every trace look like a crack. We solved that with a light hood and some angry emails about keeping the door closed. But that was just the start.
Vibration was the next surprise. The conveyor had a subtle hum that we never noticed — until the camera started sending blurry images at specific motor speeds. The model, trained on razor-sharp stills, saw those motion-blurred edges as deformation and started rejecting perfectly good units. We tried damping mounts, then finally synced the camera's shutter to the conveyor's encoder. That fixed it, but it took two weeks of data from the reject bin to figure out why our false positive rate had spiked.
Here's the thing that nobody puts in the glossy vendor brochures: the operators will find ways to game the system without even meaning to. One afternoon, an inspector noticed the lens was dusty and carefully wiped it with a rag that left a faint film. The next shift, the camera was flagging every board because the film diffracted the light just enough to create phantom artifacts. Another time, someone hung a plastic parts bag on the mounting bracket to keep it handy, and it drifted into the frame edge, creating a permanent false positive region until I traced the logs.
I learned to stop blaming the operators and start designing for the reality of a messy, chaotic factory. We added a simple calibration check: a pristine reference board runs through every morning, and if the system flags more than zero defects on it, an alert fires. That single change saved more downtime than any algorithm tweak. I also started spending actual shifts on the floor — not just during deployment, but randomly, unannounced — just watching how people interact with the equipment. You catch things from a desk that you'd never imagine.
The funny part is, after six months, our camera was catching defects that even the best human inspectors missed. But it wasn't because the model was brilliant. It was because we'd finally tamed all the real-world variables that had nothing to do with computer vision. The algorithm was the easy part. The hard part was everything around it.