As imaging experts, we are asked to provide imaging solutions to our customers. Most of the time, we provide part of the solution: a frame grabber, a camera, some software libraries, in other words, generic imaging components. Sometimes customers are more specific: they want a turnkey solution ready to be deployed. And this is where the fun starts.
Customer requests like these normally turn into development projects. From project management books, we know that a high percentage of projects fail, and for a variety of reasons, including but not limited to:
- requirements that are not well defined
- incorrect evaluation of the scope of work
- bad resource management (which results in missed deadlines and product functionalities that do not meet customer expectations)
Imaging projects are no different.
For turnkey solutions, we must determine exactly what the customer needs, which includes identifying all functional and performance requirements. We are well aware of the imaging components of the project, however, it is often difficult to determine everything that surrounds a system, i.e. lighting, reflection, and variability of the object for analysis. We typically use a bank of images to validate algorithms, but this too has limits. There are also environmental conditions that can affect your solution in surprising ways… which reminds me of a project that did not go as expected…
We were developing a specific imaging application to deploy on a factory floor. The development of the algorithms was challenging but we had real life images to work with and were validating these in the lab. Everything was looking very good until we tried to deploy the system in its “real” environment. The quality of the measurements relied on a system calibration that determined the distance between two cameras (among other things). In this environment, the system was heavily impacted by vibration – vibration that, in effect, de-calibrated the entire system. In the end, the project failed as a result of conditions that were unknown at the outset, were not easily replicated in our lab and could not be mitigated during deployment.
It’s said that some of our greatest lessons are learned from failure, and while imaging algorithms can be challenging, they are just one part of the equation for a turnkey solution. Too many engineers enjoy passing time in the lab validating what they believe are novel solutions. The next time you’re feeling cozy and comfortable in your job, consider venturing out into the wild – at your customer’s site to learn firsthand the experience and environment of others, not from your failures!