By Topic

GPU accelerated real time polarimetric image processing through the use of CUDA

Sign In

Cookies must be enabled to login.After enabling cookies , please use refresh or reload or ctrl+f5 on the browser for the login options.

Formats Non-Member Member
$33 $13
Learn how you can qualify for the best price for this item!
Become an IEEE Member or Subscribe to
IEEE Xplore for exclusive pricing!
close button

puzzle piece

IEEE membership options for an individual and IEEE Xplore subscriptions for an organization offer the most affordable access to essential journal articles, conference papers, standards, eBooks, and eLearning courses.

Learn more about:

IEEE membership

IEEE Xplore subscriptions

1 Author(s)
Hiren Patel ; US Air Force Research Laboratory, 2241 Avionics Circle, Wright Patterson AFB, OH, 45433, USA

Recent advancements in semi-conductor fabrication has led to a dramatic increase in the size of data sets of advanced imaging sensors. While increased pixel counts leads to greater area coverage and higher resolution, it also results in higher image processing time. If real-time image processing is required, power and size requirements go up as large data processing computers are required to keep pace with the data. In this paper, we propose using desktop Graphics Processing Units (GPUs) to shrink the Size, Weight and Power (SWaP) pyramid. We have developed a novel approach to computing polarimetric data using GPUs. The GPU is inherently designed to perform parallel floating point operations quickly. Image processing is very well suited to the GPU architecture, where every pixel can be represented as a thread and all threads executed concurrently on the GPU. The processing of polarized imagery requires calculating the Stokes parameters and Degree of Linear Polarization (DoLP) of each pixel in the Focal Plane Array (FPA) of a sensor. In addition, dead pixel replacement is also desired in order to achieve better image contrast and create a higher quality image. Processing this data for large FPAs in Matlab takes as much as 30 seconds per frame, even after optimizing through vectorization. The Matlab code to process the polarized imagery was re-coded in NVidia's C API named CUDA and functions were run on an NVidia 9400 GS GPU with 64 cores. Massive speedup was attained, reducing the time to process a frame from 30 seconds in Matlab to 50 ms in CUDA, a speedup of 600x. In this paper we show that through use of the GPU we are able to accomplish real-time image processing using advanced algorithms, while at the same time reducing system SWaP requirements.

Published in:

Proceedings of the IEEE 2010 National Aerospace & Electronics Conference

Date of Conference:

14-16 July 2010