11 September 2012 Parallel design of JPEG-LS encoder on graphics processing units
Author Affiliations +
J. of Applied Remote Sensing, 6(1), 061508 (2012). doi:10.1117/1.JRS.6.061508
With recent technical advances in graphic processing units (GPUs), GPUs have outperformed CPUs in terms of compute capability and memory bandwidth. Many successful GPU applications to high performance computing have been reported. JPEG-LS is an ISO/IEC standard for lossless image compression which utilizes adaptive context modeling and run-length coding to improve compression ratio. However, adaptive context modeling causes data dependency among adjacent pixels and the run-length coding has to be performed in a sequential way. Hence, using JPEG-LS to compress large-volume hyperspectral image data is quite time-consuming. We implement an efficient parallel JPEG-LS encoder for lossless hyperspectral compression on a NVIDIA GPU using the computer unified device architecture (CUDA) programming technology. We use the block parallel strategy, as well as such CUDA techniques as coalesced global memory access, parallel prefix sum, and asynchronous data transfer. We also show the relation between GPU speedup and AVIRIS block size, as well as the relation between compression ratio and AVIRIS block size. When AVIRIS images are divided into blocks, each with 64×64 pixels, we gain the best GPU performance with 26.3x speedup over its original CPU code.
© 2012 Society of Photo-Optical Instrumentation Engineers (SPIE)
Hao Duan, Yong Fang, Bormin Huang, "Parallel design of JPEG-LS encoder on graphics processing units," Journal of Applied Remote Sensing 6(1), 061508 (11 September 2012). https://doi.org/10.1117/1.JRS.6.061508


Accelerating arithmetic coding on a graphic processing unit
Proceedings of SPIE (November 02 2011)
Compressed-domain reverse play of MPEG video streams
Proceedings of SPIE (January 22 1999)
GPU implementation of JPEG XR
Proceedings of SPIE (January 18 2010)

Back to Top