Optimization of Memory Accesses for CUDA Architecture and Image Warping Algorithms

Conference paper
Part of the Advances in Intelligent Systems and Computing book series (AISC, volume 184)

Summary

The CUDA software platform gives abilities of outstanding performance for parallel computing using GPGPUs (General Purpose Graphics Processing Unit). The external memory interface is the main bottleneck of GPGPU for memory intense operations. There are a lot of reduction ways of this disadvantage for real–time applications. The profiling of the algorithm and execution parameters fitting are presented as a solution for the minimization of execution time. The fisheye to perspective transform is optimized as the example of the nonlinear image warping algorithm. The code optimization using search of the optimal kernel starting parameters is necessary. Such optimization gives better results for all cases due to limited processing area and the execution time is about 12% smaller. The unconventional method for CUDA of block–to–image assignment is emphasized.

Keywords

Memory Access Output Image Texture Memory Image Warping Destination Image 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Altera: A Flexible Architecture for Fisheye Correction in Automotive Rear–View Cameras, Altera White Paper (2008)Google Scholar
  2. 2.
    Bradski, G., Kaehler, A.: Learning OpenCV. In: Computer Vision with the OpenCV Library. O’Reilly (2008)Google Scholar
  3. 3.
    Dersch, H.: Panorama Tools. In: International VR Photography Conference on Open Source Software for Immersive Imaging, Berkeley (2007), http://webuser.fh-furtwangen.de/~dersch/IVRPA.pdf
  4. 4.
    Alvarez, L., Gomez, L., Sendra, J.R.: Algebraic Lens Distortion Model Estimation, Image Processing On Line (2010), http://dx.doi.org/10.5201/ipol.2010.ags-alde
  5. 5.
    Mazurek, P.: Real–Time Correction of Cameras’ Geometric Distortions using GPGPU. In: 14th IEEE/IFAC International Conference on Methods and Models in Automation and Robotics, MMAR 2009, Miedzyzdroje (2009)Google Scholar
  6. 6.
    Mazurek, P.: Mobile system for estimation of the internal parameters of distributed cameras. Measurements Automation and Control 56(11), 1356–1358 (2010)Google Scholar
  7. 7.
    NVIDIA: CUDA – Compute Unified Device Architecture. C Programming Guide (2012), http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_C_Programming_Guide.pdf
  8. 8.
    NVIDIA: CUDA - Compute Unified Device Architecture. Reference Manual v4.0, Nvidia (2012), http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_Toolkit_Reference_Manual.pdf
  9. 9.
    Russ, J.C.: The Image Processing Handbook. CRC (2006)Google Scholar
  10. 10.
    Solomon, D.: Transformations and Projections in Computer Graphics. Springer (2006)Google Scholar
  11. 11.
    Velho, L., Frery, A.C., Gomes, J.: Image Processing for Computer Graphics and Vision. Springer (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2013

Authors and Affiliations

  1. 1.Department of Signal Processing and Multimedia EngineeringWest–Pomeranian University of Technology, SzczecinSzczecinPoland

Personalised recommendations