Implementation of detection algorithm for real-time processing of IR video

Authors:

  • Karlholm Jörgen

Publish date: 2005-01-01

Report number: FOI-R--1716--SE

Pages: 21

Written in: Swedish

Abstract

The report describes a C++ implementation in dedicated signal processing hardware of an algorithm for real-time detection of military ground vehicles in IR video from airborne platforms, e.g., UAVs or guided weapons. The algorithm is based on Viola and Jones´ sequential boosting approach with image features computed from a summed area table representation. The study shows that qualified realtime detection in IR video is realizable in a small, cheap, and power-efficient signal processing system. A processing speed of 7 frames per second is achieved for 16-bit QVGA (320x240 pixel) image sequences, using two MPC7457 PowerPC G4 microprocessors, each with a 2MB L3 cache. The structure of the algorithm makes it difficult to use block-based processing (L1 strip mining), a common technique for minimising I/O in local neighbourhood operations. In the PowerPC G4, the processing consequently becomes I/O bound, but a significant speed-up can be achieved by allocating critical data in the processor´s L3 cache (private memory), instead of in the main primary memory. For cost reasons it is desirable to implement the algorithm on 16-bit integer signal processors. Several data buffers must, however, be stored as 32-bit integers; in one case 64-bit precision is required. Arithmetic operations on these data require more processing steps, which causes a significant performance degradation compared to 16-bit data.