DIVERSE ARCHITECTURES COMPLICATE DESIGN CHOICES image-processing board

Dec. 1, 1998
Systems integrators now confront a myriad of product choices when developing machine-vision systems. At the low end, digital cameras are now available that use Firewire interfaces to directly capture images into PC-based hosts without using frame grabbers. For most camera interfacing, however, designers must choose from a range of 200 dumb

DIVERSE ARCHITECTURES COMPLICATE DESIGN CHOICES image-processing board

By Andrew Wilson, Editor at Large

Systems integrators now confront a myriad of product choices when developing machine-vision systems. At the low end, digital cameras are now available that use Firewire interfaces to directly capture images into PC-based hosts without using frame grabbers. For most camera interfacing, however, designers must choose from a range of 200 dumb

frame grabbers available from more than 50 vendors (see Vision Systems Design, Aug. 1998, p. 46). Where complex image-processing tasks are needed, several vendors offer hardwired, reprogrammable, pipelined, digital signal processors (DSPs) or custom hardware to accelerate imaging functions.

Unfortunately, the design choices do not end there. As well as being available on a number of different buses, including PCI and VME, many image-processing boards use standard and nonstandard bus architectures that allow developers to add extra functionality and transfer data between different boards at high speeds. Unfortunately, the lack of a common image-processing software standard means that once developers have decided on an appropriate architecture, they may be forced to use a specific set of development tools that cannot be ported to boards from other manufacturers.

Most image-processing-board vendors offer a standard image-processing baseboard with which to build an image-processing system. Some of these baseboards can be used to capture, process, and display images, allowing developers to add greater processing power through high-speed bus interfaces. In addition, developers can also choose from a range of add-in acquisition, processing, and display boards. Whereas most of these high-speed interfaces and add-in modules use proprietary buses, they do offer systems integrators flexible methods to customize an image-processing system.

In its Genesis board, for example, Matrox (Dorval, Quebec, Canada) uses the Texas Instruments (TI; Dallas, TX) C80 DSP as the basis for a modular PCI-based image-processing board. Fully configured, the board consists of optional digitizer and display sections and a C80-based processing section (see Fig. 1). With four analog-to-digital (A/D) converters on-board, the acquisition module can be configured in a four-channel, 8-bit mode at up to 35 MHz; in a two-channel, 8-bit mode at up to 70 MHz; or in a one-channel, 8-bit mode at up to 140 MHz. An optional companion board allows digitization from RS-422/low-voltage differential signaling sources.

For high-speed image processing, Matrox has integrated both the C80 DSP and a custom ASIC onto a board. Whereas the C80 DSP is used to accelerate point-to-point, statistical, and pattern-matching operations, the ASIC accelerates neighborhood operations. To further accelerate image-processing functions, developers can add up to six additional processing boards using the Matrox VMChannel, a 132-Mbyte/s interface bus that accommodates as many as 13 C80 processors.

To add more board support, developers can choose from a native library of C-callable routines, a C80-based developer`s toolkit, or the Matrox Imaging Library (MIL). When used with the Genesis board, the MIL functions make calls to the native library that execute operations on the processing nodes. In developing with MIL functions, moving the application to a different platform only requires changing the board-dependent part of the code.

Coreco (St-Laurent, Quebec, Canada) has also taken a modular approach in the development of its Viper frame grabbers, Cobra image processors, and Python application accelerators. The recently introduced Viper-Quad, -RGB, and -Digital PCI-based frame grabbers allow data acquisition from monochrome, red-green-blue (RGB), and multitap digital cameras, respectively (see Fig. 2).

For designing imaging systems with these frame grabbers, developers can import imaging data to the PCI-based Cobra/C6 processor board over the company`s 200-Mbyte/s Coreco Auxiliary Bus (CAB). Based around the 200-MHz, 32-bit, fixed-point C6201 DSP from Texas Instruments, this board allows the addition of an optional pixel-processing module that accelerates point-to-point and neighborhood-processing functions.

To increase the processing power of a vision system further, developers can add another PCI-based board, the Python C6, to the system via the CAB. Featuring up to four C6201s, the 6400-MIPS board suits multiproces sing applications and provides 4 Mbytes of shared RAM for data storage by each DSP. For connections to external devices, the board`s PCI mezzanine card (PMC) and PMC and Industry Pack (IP) modules allow developers to choose from a range of more than 100 additional input/output (I/O) boards.

Based on the C40 DSP, the XPG-1000 Power Grabber from Dipix (Ottawa, Ontario, Canada) provides developers with a range of modules for extended data acquisition, processing, and display and supports up to 256 Mbytes of image memory. Using the company`s XPG Powerbus, based on up to three C40 communications ports, developers can add multiple analog and digital camera modules that interface to cameras at data rates to 48 Mbytes/s.

In addition to the 275-MOPS processing power of the C40, developers can add a power-processing module (PPM) via the Powerbus to perform frame-rate, image-processing functions. At the heart of the PPM is a crosspoint switch that allows the software configuration of the on-board arithmetic logic unit (ALU), histogram, memory, and convolution processors. To implement an image-processing system, analog or digital data-acquisition modules are configured on the PPM board. After frame-rate image processing, data can then be transferred to the Power Grabber for further processing and display.

Pipelined processing

In many image-processing applications, the time in which data must be processed is fixed, and the success of the implementation depends on the system`s ability to deliver results within given time limits. With general-purpose processors and DSPs, this deterministic level is not known precisely until after system development has taken place. Because of this, companies such as Datacube (Danvers, MA) pioneered the concept of pipelined processing, where imaging data are streamed through a series of computational elements connected by fast, high-bandwidth crosspoint switches. In such systems, the time taken by the system to complete operations is known in advance before system development begins.

Implementing this concept in hardware, Datacube`s single-slot MaxPCI board, in a minimum configuration, consists of four image memories, dual arithmetic units, dual 16 ¥ 16 look-up tables (LUTs), and a histogram and statistics processor. To configure an image-processing system using the MaxPCI board, developers can add one memory module, one acquisition module, and two processing storage modules (PSMODs; see Fig. 3). While the front-end image-acquisition modules allow a range of analog, digital, and multitap cameras to be interfaced to the board, the available PSMODs include a convolver for neighborhood processing operations, a warper for image rotation, translation, and zoom, and a display card that supports RS-170, CCIR, and 1280 ¥ 1024- and 1600 ¥ 1280-pixel resolution displays.

Like Datacube, Imaging Technology Inc. (ITI; Bedford, MA) also offers a PCI-based pipelined processor, the IM-PCI. This single-slot image-manager motherboard includes primary image memory and system timing controls. Like Datacube`s MaxPCI, the IM-PCI accepts a number of plug-on mezzanine modules for camera interfacing, accelerating image-processing functions, and display capabilities. With a 24-bit pipeline bus operating at a 40-MHz pixel clock rate, the board`s data paths can be dynamically configured to optimize the time it takes to perform specific algorithms.

To interface to a range of standard and nonstandard cameras, ITI offers the AM-Comp module for interfacing to NTSC, PAL, RS-170, and CCIR sources; the AM-RGB module for red-green-blue color or variable-scan cameras; the AM-V module that provides variable-scan acquisition up to 20 MHz; and the AM-Dig module that provides a direct interface between RS422- or TTL-based video sources. Optional processing modules are available for image arithmetic, convolution, binary correlation, feature extraction, morphological operation, and input/output functions.

Although specialized vision modules provide the highest levels of performance for certain algorithms, not all vision functions can be programmed cost-effectively into dedicated hardware. Because of this, the ITI CMC-80 PCI- and C80-based boards can be configured as part of the IM-PCI pipeline (see Fig. 4). Using the IM-PCI and the CMC-80 boards, developers could, for example, configure a system to perform noise reduction (using the CM-CLU pipeline module), feature extraction (using the CM-HF feature-extraction module), and then image data transfer to the CMC-80 for further analysis.

On-board CPU

Whereas some manufacturers such as Dipix and Matrox are using DSPs to speed image-processing functions and reserve the host PC for control-system functions, RVSI Acuity (Nashua, NH) and Cognex (Natick, MA) are using on-board CPUs to increase the deterministic level of their PCI-based boards. Rather than take a pipelined approach, both companies use on-board CPUs in which image-processing functions are off-loaded to the CPU, and other image-processing hardware is placed on their PCI boards (see Vision Systems Design, Oct. 1998, p. 56).

RSVI Acuity`s Visionscape PCI-based image-processing system, for example, is a complete image-capture processing and display module that uses an on-board RISC processor and a custom ASIC to accelerate imaging functions such as edge detection (see Vision Systems Design, Oct. 1998, p. 7). When configured with the CAMI/O 300 front-end daughtercard, Visionscape can interface to as many as four multiplexed analog cameras. Moreover, a digital CAMI/O 400 interface card allows high-resolution digital, linescan, and TDI cameras to be used with the board. RSVI Acuity also provides on-board I/O controls for Visionscape that includes integrated sensor and strobe control, 16 user-defined digital I/O points, and eight analog outputs.

The Cognex PCI-based Model 8200/PCI vision system also uses an on-board processor, an Intel MMX CPU. Like Visionscape, the MVS-8200/PCI uses video modules that allow the board to be configured for multichannel RS-170 and CCIR analog image-capture, color acquisition, progressive-scan, and large-format cameras. To program the MVS-8200/PCI, developers can create application programs in C++, Visual Basic, or Visual C using Cognex`s Object Manager Interface. Applications written in C++ can run on the MVS-8200/PCI, while Visual Basic and Visual C applications run on the host and make remote procedure calls to the MVS-8200/PCI board.

PMC add-ins

To expand their product lines, several companies have added image-capture and processing capabilities in the form of PCI mezzanine card (PMC) modules. Based around the PMC or IEEE P1396 standard, these modules allow developers to add imaging capabilities to both PCI- and VME-based host CPUs and mezzanine cards.

To address the imaging market, Alpha Data Parallel Systems (Edinburgh, Scotland) has introduced the ADM-DIG16, a PMC-based color frame grabber for the company`s AD-66PCI DEC Alpha PCI processor. Its ADM-FG also provides the Alpha processor with four C40 ports for interprocessor communications between Alpha nodes in a parallel network or connections to existing C40 networks. Based on the TI TMS320C44, the C44 controls the digitizer to handle either a monochrome or an RGB camera. When the module is configured to accept monochrome images, the framestore consists of a 1024 ¥ 1024 ¥ 8-bit pixel array. For RGB color images, the framestore is configured as a 512 ¥ 512 ¥ 24-bit memory.

Choosing the VME bus to host its PMC frame-grabber module, the PMC Grabber from American Eltec (Princeton, NJ) allows connection of CCIR-625, EIA-525, and nonstandard cameras to the company`s PowerPC-based VME board. An on-board multiplexer permits the connection of two cameras to the module (see Fig. 5).

In operation, video data are digitized by an 8-bit A/D converter and transferred to the main memory of the host computer. Although the frame grabber does not feature on-board image memory, a look-up table with 256 8-bit entries permits conversion of the pixel data in real time. An on-board sequencer also allows the generation of control sequences for camera restart and shutter control, and an opto-decoupled trigger input permits synchronization of the image with external events.

With many companies offering board-level products for image processing, systems developers face a bewildering array of design choices. Depending on the application, simple add-on frame grabbers might accomplish the task. However, for more-sophisticated tasks where high-speed image processing is required, developers need to consider both DSP and pipelined approaches. Unfortunately, once such applications have been specified, developers may find themselves tied to a specific manufacturer`s hardware and software.

Click here to enlarge image

FIGURE 1. The Matrox Genesis board uses the Texas Instruments C80 DSP as the basis for a PCI-based image-processing function that combines optional digitizer and display sections and a C80-based processing section. The C80 accelerates point-to-point, statistical, and pattern-matching operations, and the custom ASIC accelerates neighborhood operations. Developers can add up to six additional processing boards using a 132-Mbyte/s interface bus to accommodate as many as 13 C80 processors.

Click here to enlarge image
Click here to enlarge image

FIGURE 2. The Coreco Viper-RGB, -Digital, and -Quad PCI-based frame grabbers allow data acquisition from monochrome, RGB, and multi-tap digital cameras, respectively. To build an imaging system, developers can import image data to the Cobra/C6 vision engine over the company`s 200-Mbyte/s Coreco Auxiliary Bus (CAB). Based around the Texas Instruments` 200-MHz, 32-bit, fixed-point C6201 DSP, the board accepts an optional pixel-processing module that accelerates point-to-point and neighborhood processing functions.

Click here to enlarge image

FIGURE 4. Imaging Technology`s latest addition to its computation module product line is the CMC-80 PCI- and C80-based board that can be configured as part of the IM-PCI pipelined processor. Developers can configure the IM-PCI to perform noise-reduction and feature-extraction functions and then transfer imaging data to the CMC-80 for further analysis.

Click here to enlarge image

FIGURE 3. The Datacube single-slot MaxPCI board consists of four image memories, dual arithmetic units, dual 16 ¥ 16 look-up tables, and a histogram and statistics processor. Developers can add one memory module, one acquisition module, and two processing storage modules to the board. The image-acquisition modules support analog, digital, and multitap cameras. Available processing storage modules handle convolver, warper, and display functions.

Click here to enlarge image

FIGURE 5. Using the VME bus to host its PMC frame-grabber module, the PMC Grabber from American Eltec allows connection of CCIR-625, EIA-525, and non-standard cameras to the company`s PowerPC-based VME board. Although the frame grabber does not feature on-board image memory, a look-up table with 256 8-bit entries can process image data in real time.

IMAGE-PROCESSING-BOARD MANUFACTURERS--a sampling

Access Dynamics l Albuquerque, NM 87109 l (505) 345-7637 l Fax: (505) 345-7831 l Web: www.accdyn.com

Alacron l Nashua, NH 03060 l (603) 891-2750 l Fax: (603) 891-2745 l E-mail: [email protected] l Web: www.alacron.com

Alpha Data Parallel Systems l Edinburgh, EH6 6QH Scotland l (44) 131 555 0303 l Fax: (44) 131 555 0728 l Web: www.alphadata.co.uk

American Eltec l Princeton, NJ 08540 l (609) 452-1555 l Fax: (609) 452-7374 l E-mail: [email protected] l Web: www.eltec.com/

Aspro Technologies l Mississauga, Ontario L4Z 2J1 Canada l (905) 712-2131 l Fax: (905) 712-1887 l E-mail: [email protected] l Web: www.aspro.com/

Azure Ltd. l Dorchester, Dorset DT2 9PU England l (+44) 1305 251771 l Fax: (+44) 1305 251779 l Web: www.azure.com

Bar Gold Electronics l Haifa, 31250 Israel l (972) 4-8414214 l Fax: (972) 4-8721079

E-mail: [email protected] l Web: www.bargold.com

BittWare Research Systems l Concord, NH 03301 l (603) 226-0404 l Fax: (603) 226-6667 l Web: www.bittware.com

Blue Wave Systems l Carrollton, TX 75006 l (972) 277-4600 l Fax: (972) 277-4666 l E-mail: [email protected] l Web: www.bluews.com

Cognex Corp. l Natick, MA 01760 l (508) 650-3000 l Fax: (508) 650-3333 l Web: www.cognex.com/

Coreco l St-Laurent, Quebec H4T 1V8 Canada l E-mail: [email protected] l Web: www.coreco.com

Current Technology l Durham, NH 03824 l (603) 868-2270 l Fax: (603) 868-1352 l Web: www.curtech.com

Data Cell l Yateley, Hampshire GU46 6GB England l (+44) 1252 864420 l Fax: (+44) 1252 864425 l E-mail: [email protected] l Web: www.datacell.co.uk

Data Translation l Marlboro, MA 01752 l (508) 481-3700 l Fax: (508) 481-8620 l Web: www.datx.com/

Datacube l Danvers, MA 01923 l (978) 777-4200 l Fax: (978) 777-3117 l Web: www.datacube.com/

Dipix Technologies l Ottawa, Ontario K2C 3P1 Canada l (613) 596-4942 l Fax: (613) 596-4914 l E-mail: [email protected] l Web: www.dipix.com/

DY 4 Systems l Kanata, Ontario K2V 1A6 Canada l (613) 599-9191 l Fax: (613) 599-7777 l Web: www.dy4.com/

i2S l Niskayuna, NY 12309 l (888) 842-7872 l Fax (518) 346-4134 l E-mail: [email protected] l Web: www.i2s-linescan.com

Imaging Technology l Bedford, MA 01730 l (781) 275-2700 l Fax: (781) 275-9590 l E-mail: [email protected] l Web: www.imaging.com

Imagraph l Chelmsford, MA 01824 l (978) 256-4624 l Fax: (978) 250-9155 l E-mail: [email protected] l Web: www.imagraph.com

Integral Technologies l Indianapolis, IN 46256 l (317) 845-9242 l Fax: (317) 845-9275 l Web: www.integraltech.com

Leutron Vision AG l CH-8152 Glattbrugg, Switzerland l (41) 1 810 06 76 l Fax: (41) 1 810 94 40 l Web: www.leutron.com

Matrox Electronic Systems l Dorval, Quebec H9P 2T4 Canada l (514) 822-6020 l Fax: (514) 822-6273 l Web: www.matrox.com/imaging

Pentek l Upper Saddle River, NJ 07458 l (201) 818-5900 l Fax: (201) 818-5904 l E-mail: [email protected] l Web: www.pentek.com

Precision Digital Images l Redmond, WA 98052 l (425) 882-0218 l Fax: (425) l Web: www.precisionimages.com

Primagraphics l Nr. Royston, Herts SG8 0SS England l (+44) 1763 852222 l Fax: (+44) 1763 853324 l E-mail: [email protected] l Web: www.primag.co.uk

Radstone Technology l Towcester, Northants NN12 6JN England l (+44) 1327 359444 l Fax: (+44) 1327 359662 l E-mail: [email protected] l Web: www.radstone.com

RVSI Acuity l Nashua, NH 03063 l (603) 598-8400 l Fax: (603) 598-4684 l Web: www.acuityimaging.com

Sundance Multiprocessor Technology l Waterside, Chesham HP5 1PS England l (+44) 1494 79316 l Fax: (+44) 1494 793168 l Web: www.sundance.com

Synoptics l Cambridge, CB4 1TF England l (+44) 1223 727100 l Fax: (+44) 1223 727101 l Web: www.synoptics.co.uk

Transtech DSP l Ithaca, NY 14850 l (607) 257-8678 l Fax: (607) 257-8679 l Web: www.transtech-dsp.com

Traquair Data Systems l Ithaca, NY 14850 l (607) 266-6000 l Fax:(607) 266-8221 l E-mail: [email protected] l Web: www.traquair.com

VisiCom l San Diego, CA 92121 l (619) 457-2111 l Fax: (619) 457-0888 l Web: www.visicom.com

Voice Your Opinion

To join the conversation, and become an exclusive member of Vision Systems Design, create an account today!