Using Graphical Processing Units to Accelerate Orthorectification, Atmospheric Correction, and Transformations for Big Data
Graphics processing units (GPUs) are high-performance multiple-core processors capable of very high computational speeds and large data throughput. These general-purpose parallel processors support a variety of programming interfaces, including industry standard languages like C. Modern GPUs are inexpensive and widely available commercially.
GPU implementations of algorithms that are well suited for parallel processing can often achieve speedups of several orders of magnitude over optimized CPU codes. Significant improvements in speeds for imagery orthorectification, atmospheric correction, target detection, and image transformations like Independent Components Analysis (ICA) have been achieved using GPU-based implementations. Additional optimizations, when factored in with GPU processing capabilities, can provide 50x – 100x reduction in the time required to process large imagery.
Exelis has implemented a CUDA based GPU processing framework for accelerating ENVI and IDL processes that can best take advantage of parallelization. Testing performed by Exelis has shown that orthorectification with traditional CPU processing can take as long as two hours on a WorldView1 35,000x 35,000 pixel image. With GPU orthorecification, the same orthorectification process takes three minutes.
By speeding up image processing, first responders can employ imagery for response and recovery efforts, scientists can make rapid discoveries with near real time data, and data centers have an operational component needed to quickly process and disseminate data.
Download a PDF
