Go to the first, previous, next, last section, table of contents, index.



Cognachrome Vision System User's Guide


Manual Edition 2.0
Documents software version 26.0
June 3, 1996


Anne Wright, Randy Sargent, and Carl Witty
Jeremy Brown


Newton Research Labs

Copyright 1995, 1996 Newton Research Labs. All rights reserved.


Introduction

The Cognachrome 2000 color vision system is a small (2.5"x6.25"x1.25") video-processing computer system with special hardware to track multiple objects in the visual field (discriminated by color) at a full 60 Hz frame rate, with a resolution of 200x250 pixels. The board is also capable of low-resolution 24-bit RGB frame grabs at 64x48 pixel resolution. Its input is standard NTSC, allowing much flexibility in video input source, as well as making it very simple to see the real-time video image (just hook up a standard NTSC monitor). The board also outputs a 60 Hz NTSC image of the objects it is tracking, to help in debugging.

The Cognachrome system can output tracking data to another computer, or can be used stand-alone, using spare I/O and CPU resources to directly control a robot base or similar hardware.

Modes of Use

The Cognachrome 2000 system allows for several modes of use:

At this time, this manual only documents the use of the system with the preprogrammed algorithms. If you want to write custom software for the vision sysem, you may want to purchase the ARC C environment, also available from Newton Labs. This environment allows compilation and interactive debugging of programs on the board.

Programs are compiled using the GNU C cross-compiler (freely available for FTP from `prep.ai.mit.edu'), well-known for its stability and excellent optimization. The ARC environment provides a multi-tasking kernel and libraries for the 68332 board, plus the ARC interaction program which runs on a host machine and allows you to easily download and debug programs running on the 68332 board by communicating over a serial port. See `http://www.newtonlabs.com/arc' for more information about the ARC Development System.

Once you have purchased ARC, you can write your own programs and interface them to vision libraries which provide the functionality described in this manual.

Components of the System

This system is built of two small, stacking printed circuit boards, measuring a total of only 2.5"x6.25"x1.25" when stacked. The top board is the color processing board, which digitizes incoming NTSC into 24 bits of RGB, and then sends this RGB through a lookup table. The board can be trained to recognize up to three different colors at once. Objects are tracked or recognized using the color lookup table. Multiple objects of a given color may be tracked at once. Tracking runs at full frame rate (60 Hz) for sufficiently simple processing. More complex operations, such as orientation calculations, may reduce the update rate somewhat. We use a folding scheme to reduce the 16 million table entries required for 24-bit RGB, while still keeping the full 24 bits of color resolution.

The bottom board is the processor board. It is a standard Motorola 68332-based computer, with 256K of RAM (expandable to 1MB on board). The 68332 is unique in its inclusion of a microcodable timer coprocessor, which is heavily used in processing thresholded images. The board has I/O ports left over after the interface to the vision processing board. This includes digital I/O lines, a bus with software-definable chip selects, and two asynchronous and one synchronous serial ports. It is therefore possible for a user to directly control a robot or other actuators from the board, or to interface to a network of other computers.


Go to the first, previous, next, last section, table of contents, index.