[Index] [Project Info] ([Overview]) [Tracking Algorithm] [Hardware] [Acknowledgements] [Download]

[Overview]


Imagine having the ability to perform true real-time object tracking in a small package for low cost. It would be possible to use object tracking in a host of new applications - security cameras that move themselves to targets or cheap robots that can follow objects of interest (such as a car or animal) just to name two. Currently, there is much work done in the field of object tracking, and in fact entire businesses have been built around products that perform object tracking. However most current solutions rely on two things - a fast microprocessor and a lot of RAM.

These systems work by running so fast that it appears to be running in real-time. They can use many different algorithms to do the object tracking, as they have enough time and memory to spare to perform these. What happens when the system needs to be implemented on a small or low-cost platform, where there is no room for a high-speed microprocessor with a considerable amount of RAM as it is too expensive, physically large, or complex to design with?

Enter the Eagle in a Rack. Although in its current state this system is rather large, it is just large enough to make development easier. The real key behind this system is that there is no microprocessor, and there is no external RAM chip anywhere in the system. The entire system is implemented in hardware - specifically on a XC2S200E Field Programmable Gate Array (FPGA) from Xilinx with a chip from Texas Instrument used to digitize the video signal. Most of the on-chip RAM in the system is used to create a list of colours in the image, and no frame is ever held in RAM. Since only a small amount of RAM is needed, it can be easily implemented on the FPGA.

Suddenly it becomes possible to actually make an Application Specific Integrated Circuit (ASIC) that performs the object tracking - this means the entire object tracking system can be done on one chip! Instead of the microprocessor, the RAM, the support logic, and the FLASH to store the program you can now just have it done on one chip (if a ASIC is made), or three chips (the FPGA, configuration memory for FPGA, and video digitizer) if normal off the shelf parts are used. In this project a small ten centimetre square board was made to prove this small version is physically possible.

The system does not need the high frequencies that typically plague these normal object trackers. In truth, the system is designed to be actually running at the speed that pixels are scanned in from the video signal (around 30 MHz). The system is running in true real-time, responding to information as it receives it.

The following table compares the normal solution (software) to the approach the Eagle in a Rack uses in a number of different conditions:

Condition

Software

Hardware

Price

-Requires considerable support hardware, however this hardware can be cheap (ie: surplus computers)

-If custom hardware will be needed price will be much greater than hardware solution

-Could be cheaper if existing hardware is set-up (ie: there is already a computer)

-Very small amount of hardware needed, but this hardware will be more specialized

-Will still be cheaper than the hardware required for the software support in most situations

Size

-Requires considerable amount of space, unless a pricey specialized board is made for this

-Very small, even in development configuration (Eagle in a Rack is MUCH larger than needed)

-Able to integrate entire solution onto one chip if needed

Speed

-Low cost solution will not be able to achieve real-time performance

-Using fast processors and specialized software able to achieve real-time performance

-System always runs in real-time

Power Consumption

-using normal computer will be very high, at least 100 watts

-using specialized hardware over 10 watts

-very low, under 0.5 watts

Space Readiness

-Commercial computers would not work directly since almost none are radiation hardened

-Radiation hardened microprocessors available, but system would be more complex because every chip would need to be space ready, and there would be many chips needed

-FPGA from Xilinx available as radiation hardened, ready for space

-Configuration memory from Xilinx also available as radiation hardened

-Since ASIC could be created, this could be radiation hardened as needed

Flexibility

-Easy to load new software on computer and debug

-Since software is popular way of doing object tracking considerable amount of existing code could be used

-Harder to load new configuration data (depending on system set-up), and harder to debug

-Fairly specialized, most work would have to be started from scratch


User Interface

-Can use any interface

-Option for complex on-screen displays

-Can use most interfaces

-On-screen displays more limited



[Index] [Project Info] ([Overview]) [Tracking Algorithm] [Hardware] [Acknowledgements] [Download]