Fast Computation of DWT and JPEG2000 using GPU

GPU를 이용한 DWT 및 JPEG2000의 고속 연산

  • 이만희 (인하대학교 정보통신공학부) ;
  • 박인규 (인하대학교 정보통신공학부) ;
  • 원석진 ((주)삼성전자 정보통신총괄 정보통신연구소) ;
  • 조성대 ((주)삼성전자 정보통신총괄 정보통신연구소)
  • Published : 2007.11.25

Abstract

In this paper, we propose an efficient method for Processing DWT (Discrete Wavelet Transform) on GPU (Graphics Processing Unit). Since the DWT and EBCOT (embedded block coding with optimized truncation) are the most complicated submodules in JPEG2000, we design a high-performance processing framework for performing DWT using the fragment shader of GPU based on the render-to-texture (RTT) architecture. Experimental results show that the performance increases significantly, in which DWT running on modern GPU is more than 10 times faster than on modern CPU. Furthermore, by replacing the DWT part of Jasper which is the JPEG2000 reference software, the overall processing is 2$\sim$16 times faster than the original JasPer. The GPU-driven render-to-texture architecture proposed in this paper can be used in the general image and computer vision processing for high-speed processing.

본 논문에서는 GPU (Graphics Processing Unit)를 이용하여 JPEG2000 정지영상 압축 알고리즘의 DWT (Discrete Wavelet Transform) 연산을 고속으로 수행하기 위한 효율적인 구조와 방법을 제안한다. DWT 연산은 JPEG2000에서 EBCOT (embedded block coding with optimized truncation)과 더불어 많은 계산 량을 소모하는 부분이기 때문에, 본 논문에서는 DWT 알고리즘을 GPU의 화소 쉐이더에서 고속으로 수행하기 위하여 Render-To-Texture (RTT)를 활용한 구조를 설계하였다. 실제 구현을 통해 비슷한 등급의 CPU에서의 처리에 비해 DWT 자체는 10배 이상의 수행 속도의 향상을, 기존의 JPEG2000 참조 소프트웨어인 JasPer의 DWT를 대치하였을 때 2$\sim$16배의 수행 속도의 향상을 보였으며 해상도가 증가할수록 향상 폭이 크다. 본 논문에서 제시된 프레임 버퍼 객체(Frame Buffer Object)를 이용한 render-to-texture 수행 구조는 GPU 기반 영상처리의 기본 틀을 제공하며, 이를 응용하여 일반적인 영상처리와 컴퓨터 비전 처리를 GPU 상에서 고속 수행할 수 있다.

Keywords

References

  1. http://developer.nvidia.com/page/documentation.html
  2. http://ati.amd.com/developer/index.html
  3. R. Fernando (editor), GPU Gems: Programming Techniques, Tips, and Tricks for Real-Time Graphics, Addison-Wesley, 2004
  4. M. Pharr (editor), GPU Gems 2: Programming Techniques for High-Performance Graphics and General-Purpose Computation, Addison-Wesley, 2005
  5. http://www.opengl.org
  6. R. Rost, OpenGL Shading Language Second Edition, Addison-Wesley, 2006
  7. Information Technology – JPEG2000 Image Coding System, ISO/IEC International Standard 15444-1, ITU Recommendation T.800, 2000
  8. M. D. Adams and F. Kossentini, 'JasPer: A software-based JPEG-2000 codec implementation,' Proc. IEEE International Conference on Image Processing, September 2000
  9. M. Rabbani and R. Joshi, 'An overview of the JPEG 2000 still image compression standard,' Signal Processing: Image Communication, vol. 17, no. 1, pp. 3-48, January 2002 https://doi.org/10.1016/S0923-5965(01)00024-8
  10. T. Acharya and P. Tsai, JPEG2000 Standard for Image Compression, Wiley-Interscience, 2005
  11. W. Sweldens, 'The Lifting scheme: a new philosophy in biorthogonal wavelet constructions,' Proc. SPIE, vol. 2569: Wavelet Applications in Signal and Image Processing III, pp. 68-79, September 1995
  12. http://www.nvidia.com/dev_content/nvopenglspecs/GL_ARB_texture_float.txt
  13. http://www.nvidia.com/dev_content/nvopenglspecs/GL_EXT_framebuffer_object.txt
  14. J. Wang, T. T. Wang, P. A. Heng and J. Wang, 'Discrete Wavelet Transform on GPU,' Proc. ACM Workshop on General Purpose Computing on Graphics Processors, pp. C-41, August 2004
  15. 이만희, 박인규, 원석진, 조성대, 'JPEG2000에서 GPU를 이용한 DWT의 가속,' 제19회 영상처리 및 이해에 관한 워크샵, pp. 415-418, 2007년 2월