What image-processing and machine-vision developers need is a way to integrate products that can be easily upgraded in software.
For many vision/imaging companies, the need to introduce new products is driven mainly by design and marketing trade-offs. While design trade-offs may compromise such factors as choice of components, marketing trade-offs such as the need to remain compatible with existing products may make the design more difficult and, perhaps, less marketable.
In addition, the rush to develop the latest and greatest products could result in a product nightmare later on. Consider, for example, the image-processing company that develops "smart" frame-grabber boards. Adhering to a product philosophy that demands on-board processing be a key element of the image-processing board, designers must eventually decide on which processor their product line will be based.
After a certain processor is selected, products are built to meet definite performance expectations. These products are then introduced to the market and shipped. But what if a short time later that processor is declared obsolete by the semiconductor vendor. On the upside, more than likely several different processors would be available to take its place. On the downside, all the man-years of code development that went into developing the original product have to be recompiled or reassembled for the next-generation processor.
Getting tired of this scenario, many board vendors have decided that their expertise is centered on interfacing their products to high-speed line or area-array cameras. They are now offering products with no on-board processing capability, leaving the host processor (most often a Pentium) to perform the image-processing functions. Their argument is that PCI buses coupled with gigahertz Pentiums are more than enough to build most image-processing systems.
Sorry to say, this is often not the case. Weighing bandwidth, input/output, and processing speeds with applications that are poorly defined to begin with can result in a nightmare for systems integrators. Worse yet, Intel's processor philosophy is not exactly dedicated to machine-vision or image-processing systems. Rather, the company builds high-speed CPUs that are compatible with every previous generation (a marketing trade-off). So, even companies who adopt the "let the processor perform the image processing" philosophy are enveloped in the marketing trade-offs of other vendors.
Add to this mix the new processor-to-processor and computer-to-computer interfacing standards such as RapidIO and InfiniBand. Already endorsed by many VME vendors, these standards have yet to find favor with PC-board vendors. The reason, as usual, is higher cost. Of the more than 50 PC-based frame-grabber vendors competing for the image-capture marketplace, few have gleaned the bigger picture of integrated computing. Instead, they prefer to offer point products rather than a product roadmap to integrated image processing.
But, as one PC-based vendor recently confided, previously high-end multiprocessor CPU vendors such as Mercury Computer Systems are, with the introduction of PCI-based products, becoming a major force in the PC-based imaging marketplace. To ignore the standards that Mercury and other VME-based vendors are promoting, and will possibly adhere to, might be an oversight for PC signal- and image-processing board-level vendors.
What image-processing and machine-vision developers need is a product roadmap—a way that they can integrate products that can be easily upgraded in software as hardware advances increase. To obtain this roadmap, systems integrators should not just look to point products or bus structures, but also to high-level distributed computing that is likely to emerge in this decade. Until then, they can pay for a vision/imaging system now and probably pay much more for another one later.