By incorporating built-in processors, interfaces, and software, cameras are improving overall system performance at less cost.
By Andrew Wilson,Editor at Large
Conventional system-design approaches to image processing use video linescan or area-array cameras that feed high-bandwidth data to frame grabbers, which in turn digitize images into a host computer. Whereas many systems apply frame grabbers with little or no processing power, other systems exploit digital-signal processors (DSPs), central processing units (CPUs), or programmable logic devices (PLDs) to preprocess image data before transfer to the host computer.
FIGURE 1. Wintriss Engineering's Opsis 5150ALC smart linescan camera uses an embedded Motorola PowerPC processor to acquire and process a 5150 x 1-pixel line in real time. An on-board FPGA performs thresholding and encoding of image data that can be networked via an Ethernet connection.
In many industrial applications, such as web-inspection systems, multiple linear-array-based cameras digitize images at high speeds, thereby increasing the requirements for processing power, bandwidth, and cost. However, most of these systems process large amounts of data at the host CPU rather than locally as the data are gathered.
By eliminating the need for frame grabbers, host-based CPUs, and host-based image-processing software, today's smart cameras offer systems integrators ways to add intelligence to machine-vision systems while reducing cost. Integrating chips that handle resolution, interfacing, host PC operation, real-time-operating-system (RTOS), and system software functions into the camera results in smarter input devices that can off-load processing power from the host CPU and, therefore, the bandwidth required between camera and host.
Web scanning
An important system design factor in choosing an input device is deciding whether to use an area- or linescan-based camera. While linescan devices are more commonly used in high-speed web-inspection applications, area-array-based cameras are used in diverse industrial, scientific, and medical applications. Currently, high-performance cameras are available from several vendors including Dalsa Inc. (Waterloo, Ontario, Canada), Integrated Photomatrix (Hilliard, OH), i2S (Niskayuna, NY), and others. Unfortunately, the number of intelligent linescan cameras currently available is limited to a few vendors, including NanoSystems (Bochum, Germany) and Wintriss Engineering (San Diego, CA).
The NanoSystems NanoView smart linescan camera uses an integrated 133-MHz, 586-type CPU to perform on-board detection of defects in roll goods such as foil, nonwovens, paper, and steel. In operation, a 2588 x 1-pixel CCD sensor scans surfaces at rates to 5000 scans/s, and the camera records material defects with 256 gray-scale values. Using a built-in encoder, the camera realizes and measures defects, locates their positions, and presents this information as compressed data over a Fieldbus interface. Two-dimensional (2-D) images of defects are also transferred to the host for further analysis.
FIGURE 2. DS GmbH 586-based PC-based NeuroCheck Compact camera embeds a 640 x 480-pixel sensor with the company's Neuro Check software. VGA monitor, keyboard, and mouse connections are available through a compact PC-peripherals socket.
The Wintriss Engineering Opsis 5150ALC linescan camera also uses an embedded processor to acquire and process a 5150 x 1-pixel line in real time before the data leave the camera. Using a Motorola Inc. (Austin, TX) PowerPC as a host, the camera uses a field-programmable gate array (FPGA) to perform thresholding and encoding of image data (see Fig. 1). Processed data from multiple cameras can be networked via a 100Base-T Ethernet connection to a host computer without the need for a frame grabber. "With a built-in programmable FPGA and DSP, the camera can stand alone or share processing tasks with a host computer to increase system performance," says Vic Wintriss, president of Wintriss Engineering.
Area-array cameras
While relatively few manufacturers are targeting smart line-scan cameras, many more are looking to embed intelligence into area-array-based devices (see table on p. 47). Smart-camera vendors have added intelligence in the form of embedded PCs, DSPs, RTOSs, and application-specific software. Because of the embedded nature of sensors, processors, and operating systems used, the task of choosing such cameras often revolves more around the software support supplied by the vendors than sensor specifics or processor performance.
FIGURE 3. American ELTEC HiPerCam1 intelligent camera ties a CCD imager with a PowerPC CPU and frame-grabber capability. In use, video data in CCIR-625 and EIA-525 formats can be stored in RAM at video rates.
Recognizing the market acceptance of its NeuroCheck software, DS GmbH (Remseck, Germany) has developed a 586-PC-based camera called NeuroCheck-Compact that can be used with a monitor and keyboard to change the on-board NeuroCheck software (see Fig. 2). According to the company, the only difference between NeuroCheck-Compact and the NeuroCheck software running on a traditional PC is the 640 x 480-pixel resolution of the camera?s sensor. Operating in progressive-scan mode, the sensor supports shutter speeds to 1/10,000 s and asynchronous reset by software or hardware trigger.
To ease systems integration, this camera offers a parallel interface as well as a digital I/O interface with eight opto-coupled inputs and outputs for PLC-based control. A VGA monitor, keyboard, and mouse can be connected through an adapter to the camera's compact PC-peripherals socket. A built-in RJ45 socket can connect the camera to a network so that developers can remotely write inspection routines.
The American ELTEC (Princeton, NJ) HiPerCam1 intelligent camera integrates a CCD-based matrix imager with a PowerPC CPU, peripherals for embedded control applications, image and program memory, flash EPROM, nonvolatile memory, video output, and frame grabber-capability (see Fig. 3). In operation, video data in CCIR-625 and EIA-525 formats can be stored in RAM at video rates. The on-board camera logic controls reset/restart, and an on-board I/O interface communicates with an external PC through a serial connection.
Frame-grabber control is accomplished using the ELTEC imaging application programming interface (API) that offers developers a means for machine-vision application development. To transfer images for remote display, either an Ethernet interface or two RS-232 serial links can be used. For software development, the ELTEC HiPerCam1 supports VxWorks from Wind River Systems (Alameda, CA). This RTOS supports multitasking, interrupt support, and networking facilities, including NFS, TCP/IP, FTP, and remote boot operations.
Also targeting the developer of intelligent machine-vision systems, the VE-262 Smart Camera from VETech (St. John's, NF, Canada) is a machine-vision system that incorporates a monochrome camera with a 486-based, hard disk, RAM, video card, and Analog Devices' (Norwood, MA) AD2105 DSP-based frame grabber. The camera includes interfaces for VGA monitor, keyboard, serial mouse, parallel device, power, TTL, RS-232, and RS-170, which can all be accessed from the rear panel of the camera.
Supplied with VE-Tools, a Windows-based visual programming environment and image-processing library, supported compilers include Microsoft's Visual C/C++ and Borland's C/C++. As Windows-based software, VE-Tools lets developers create custom image-analysis applications with 80 image-processing functions, which are available as icons that can be assembled in a visual flowchart and compiled directly as executable code. With these tools, systems developers can create applications and prototype graphical user interfaces.
Adding intelligence
Most smart-camera vendors, including DS GmbH, NanoSystems, Wintriss, and Siemens, are targeting the traditional machine-vision market with devices based on traditional third-party linear or array sensors. Others, such as Comptek Amherst Systems (CAS; Amherst, NY) and Integrated Vision Products (IVP; Linköping, Sweden), are adding intelligence into both the sensor and the camera.
At Comptek, for example, a smart camera design method, called hierarchical foveal machine vision (HFMV), aims to achieve the throughput benefits of foveal vision while retaining the commercial feasibility of uniform acuity machine vision. According to the company, for many applications, HFMV systems can outperform uniform acuity systems with the same communications and computational throughput.
In collaboration with the Jet Propulsion Laboratory (Pasadena, CA), Comptek is developing a reconfigurable multiresolution HFMV camera that uses an active-pixel array imager. Featuring on-chip circuitry for fixed-pattern and sampling noise removal, the chip uses an inexpensive interface that allows a PC to capture the video and configure the camera on-line in under 100 µs. At present, the camera is being integrated in a closed-loop HFMV system that drives and controls the camera configuration.
Rather than use standard off-the-shelf sensors, IVP uses CMOS technology in the development of smart cameras. The company's MAPP smart camera is a vision system powered by a combination of image sensor, A/D-converter, and general-purpose image processor on the same CMOS chip. Containing the smart vision sensor, an Intel 386 host processor, memory, and communication capability, the smart camera uses the host to control the smart vision sensor and perform scalar computation. Image processing is performed on the sensor itself.
To develop vision systems around this camera, developers can opt for two packages: General Imaging and Ranger. Whereas General Imaging is a toolbox offering low-level routines for image arithmetic, pattern recognition, edge detection, convolution, and median filters, Ranger consists of routines for 3-D profiling. An application programmer's interface (API) running under Windows NT is provided for developing different algorithms and parameter settings.
Theoretically, the development of smart cameras should reduce the bandwidth (and therefore cost) of multiple camera-based systems, thereby lowering the overall cost of machine-vision systems. However, because vendors have embedded many elements of vision systems design into their cameras, systems integrators must carefully analyze the resolution, speed, operating system, and programmable functions of such devices to assess whether such cameras fit particular needs.