From traffic intersections to robotic assembly lines, military platforms to medical devices, casino floors to police cruisers, cameras seem to be popping up everywhere. Turning a simple camera into a computer-based vision system, however, requires a critical linking element: the frame grabber. Understanding this key system element, which is more than simple data storage, is essential to selecting the right match for the application.
Whether the application is the inspection of products traveling down an assembly line, aerial survey and mapping, military situational awareness or Lasik eye surgery, cameras are increasingly being used as a means to automatically inspect, identify, quantify and validate images in real time. The job of the camera is fairly straightforward: to collect light reflected off of an object and convert it to data, an image represented in binary form, to be processed by a host computer.
Machine vision cameras differ from consumer-type cameras in two ways. One is that they do not provide an integrated LCD type display or require an operator; they are under the direct control of the vision system for capturing images. The other is that machine vision cameras connect directly to a host computer, which retrieves and processes the images that the camera has captured.
In all machine vision systems, there has to be a means of capturing, and then transferring the data from the camera to the host computer. That is where a frame grabber comes in. Frame grabbers are electrical circuit boards that connect via a cable to a camera and plug into the host computer system. In the case of PC hosts, the frame grabber typically plugs into the motherboard. For laptop computers the PCMCIA slot is the connection point, and rack mount systems have the frame grabber plug into the backplane. The exceptions are cameras with USB, FireWire (IEEE 1394) or Ethernet interfaces, which interface directly to the host computer and do not require a frame grabber.
Frame Grabber Types
As with cameras, there are generally two types of frame grabbers: analog and digital. Analog frame grabbers accept either composite or S-Video type analog signals that conform to the National Television Standards Committee (NTSC) standard generally used in North America and Japan for television programming or the Phase Alternating Standard (PAL) generally used in Western Europe and Australia. More recently, support for both the standard definition-serial digital interface (SD-SDI) and high definition-serial digital interface (HD-SDI) standards commonly used in the motion picture industry have become more prevalent among frame grabber offerings.Digital frame grabbers have historically supported proprietary RS422 or low-voltage differential signaling (LVDS) type interfaces. A lack of standardization prevented interoperability between frame grabbers and cameras from different vendors and made cable production difficult and costly. In 1999, a consortium of frame grabber and camera companies developed the Camera Link specification. Camera Link defined a parallel interface using a set of serially multiplexed LVDS signals providing high bandwidth video transport. It also included a bi-directional communications channel allowing the host computer to configure the camera’s operating parameters via the frame grabber.
Choosing the Right Frame Grabber
Choosing the right frame grabber for a given application depends on many variables:• Bandwidth. Bandwidth refers to the amount of data that the frame grabber has to be able to acquire from the camera and transfer to the host computer. For example, if a 12-bit high-definition camera operating at 30 frames per second with a resolution of 1,920 by 1,080 pixels is being used, then a data rate of 1,920*1,080*30*12 = 746.48 megabits per second needs to be sustained.
• Interface. The interface is the physical and electrical connection scheme of the frame grabber that links the camera to the host computer. There are several factors to be evaluated in selecting the interface. On the camera side, the type and number of connectors as well as the electrical characteristics have to be considered. For example, Camera Link’s base mode requires a single 26-pin connector and supports up to 2.04 gigabits per second of bandwidth. Its medium and full modes, on the other hand, require two 26-pin connectors and support 4.08 and 5.44 gigabits per second of bandwidth, respectively. On the host computer side, the bus type and bandwidth have to be considered as well. For example, a 32-bit peripheral component interconnect (PCI) bus interface operating at 33 megahertz provides only 1 gigabit per second of bandwidth whereas a PCI Express x4 interface provides 10 gigabits per second of bandwidth.
• Performance. This refers to the ability of the system to process images and is affected by the method that the frame grabber uses to transfer images from the camera to the host computer’s memory. There are generally two methods used: Programmed I/O and direct memory access (DMA). The programmed I/O method requires that the host computer “read” each and every pixel from the frame grabber and “write” it to host memory. This procedure consumes much CPU time and limits the number of frames per second that the CPU can process. In the DMA method, on the other hand, the frame grabber is responsible for “writing” the pixels directly into the host memory. This method frees the CPU to concentrate on processing images and results in much higher frame rates.
• Functionality. Frame grabbers can be more than simple data transfer units, so functionality refers to the feature set that the frame grabber provides. Basic frame grabber functionality includes the ability to receive image data from a camera and transfer it to host memory using either the programmed I/O or DMA methods.
More enhanced frame grabbers provide additional features such as on-board memory for local storage of image data. This storage allows the system to collect a number of frames at much higher speeds than the host interface bandwidth can support by having the physical movement of the frames into host memory performed off-line. Frame grabbers with high-speed and high-capacity solid-state memories or hard drives allow large quantities of high frame rate images to be collected. These digital video recorder (DVR) type systems are useful in capturing very high-speed imagery typically found in ballistic or destructive testing applications.
Some “smart” frame grabbers include on-board intelligence in the form of RISC processors or DSP engines that can offload some image processing tasks from the host CPU. Other value-added features found on some frame grabbers include support for multiple concurrent cameras, lookup tables, Bayer-to-RGB color interpolation and external triggering.
• Form factor. This refers to the physical and mechanical properties of the frame grabber. The nature of the host computer dictates the properties the frame grabber must possess. For example, PCI, PCI x64 or PCI Express form factors can be used in the case of a desktop PC. The use of VME or CompactPCI form factors, in the case of a rack-mount chassis, will depend on the type of motherboard or backplane slots in which the frame grabber can be installed.
• Cost. As with any product there is a cost to performance tradeoff to be made. Paying for expensive features that will never be used is a waste of money. Similarly, depending on the cost of the frame grabber required, it may be more cost effective to use a slightly more expensive camera that provides a native host computer interface such as Gigabit Ethernet than to use a lower-cost camera and an expensive frame grabber.
When to Use a Frame Grabber
Given the availability of cameras with native interfaces, the question that arises is whether the use of a frame grabber can be justified. Most, if not all, personal computers offer some type of USB or FireWire (1394a or 1394b) interface that can be connected to a suitable camera. Furthermore, with the recent release of the GigE Vision standard, more and more camera companies are beginning to offer cameras with Gigabit Ethernet interfaces that can connect directly into a PC’s Ethernet port and do not require the use of a frame grabber.One answer is that these native interfaces may not offer enough bandwidth. Gigabit Ethernet, for example, only provides 1 gigabit per second of bandwidth. For systems using high-speed, high-resolution cameras, this is simply not enough.
Another reason to choose a frame grabber is that GigE uses Ethernet framing (MAC layer) and a protocol stack (TCP/IP or UDP/IP), all of which add overhead and latency. Further, Ethernet network interface cards cannot off-load the host CPU by performing the image processing tasks commonly found on frame grabber cards. Thus, while the sustained bandwidth of the interface may be high enough, the achieved system performance in terms of frames processed per second may not.
The creation of a machine vision system involves many elements, such as the host computer, camera and frame grabber. Application requirements such as resolution, frame rate and latency often limit the camera choice and set host performance levels, but these elements must be properly linked for the system to perform as needed. Making the right frame grabber choice involves knowing its impact on the system as a whole.
John Egri is director of engineering for Imperx (Boca Raton, FL). For more information, call (561) 989-0006, e-mail [email protected] or visit www.imperx.com.