Proceedings Article | 19 April 2010
KEYWORDS: Field programmable gate arrays, Image processing, Speckle, Video, Super resolution, Video acceleration, Computing systems, Video processing, Image enhancement, Logic
Modern image enhancement techniques have been shown to be effective in improving the quality of imagery. However,
the computational requirements of applying such algorithms to streams of video in real-time often cannot be satisfied by
standard microprocessor-based systems. While a scaled solution involving clusters of microprocessors may provide the
necessary arithmetic capacity, deployment is limited to data-center scenarios. What is needed is a way to perform these
techniques in real time on embedded platforms. A new paradigm of computing utilizing special-purpose commodity
hardware including Field-Programmable Gate Arrays (FPGAs) and Graphics Processing Units (GPU) has recently
emerged as an alternative to parallel computing using clusters of traditional CPUs. Recent research has shown that for
many applications, such as image processing techniques requiring intense computations and large memory spaces, these
hardware platforms significantly outperform microprocessors. Furthermore, while microprocessor technology has begun
to stagnate, GPUs and FPGAs have continued to improve exponentially. FPGAs, flexible and powerful, are best
targeted at embedded, low-power systems and specific applications. GPUs, cheap and readily available, are available to
most users through their standard desktop machines. Additionally, as fabrication scale continues to shrink, heat and
power consumption issues typically limiting GPU deployment to high-end desktop workstations are becoming less of a
factor. The ability to include these devices in embedded environments opens up entire new application domains. In this
paper, we investigate two state-of-the-art image processing techniques, super-resolution and the average-bispectrum
speckle method, and compare FPGA and GPU implementations in terms of performance, development effort, cost,
deployment options, and platform flexibility.