Optimal Huffman coding of DCT blocks

It is a well-observed characteristic that, when a discrete cosine transform block is traversed in the zigzag order, ac coefficients generally decrease in size and the runs of zero coefficients increase in length. This paper presents a minor modification to the Huffman coding of the JPEG baseline compression algorithm to exploit this characteristic. During the run-length coding, instead of pairing a nonzero ac coefficient with the run-length of the preceding zero coefficients, our encoder pairs it with the run-length of subsequent zeros. This small change makes it possible for our codec to code a pair using a separate Huffman code table optimized for the position of the nonzero coefficient denoted by the pair. These position-dependent code tables can be encoded efficiently without incurring a sizable overhead. Experimental results show that our encoder produces a further reduction in the ac coefficient Huffman code size by about 10%-15%.

[1]  William K. Pratt,et al.  Scene Adaptive Coder , 1984, IEEE Trans. Commun..

[2]  Yung Lyul Lee,et al.  Local statistics adaptive entropy coding method for the improvement of H.26L VLC coding , 2000, Visual Communications and Image Processing.

[3]  Mark Nelson,et al.  The Data Compression Book , 2009 .

[4]  Jechang Jeong,et al.  Huffman coding of DCT coefficients using dynamic codeword assignment and adaptive codebook selection , 1998, Signal Process. Image Commun..

[5]  Mark Nelson,et al.  The data compression book (2nd ed.) , 1995 .

[6]  Donald E. Knuth,et al.  Dynamic Huffman Coding , 1985, J. Algorithms.

[7]  Gregory K. Wallace,et al.  The JPEG still picture compression standard , 1991, CACM.

[8]  Nasir D. Memon Adaptive coding of DCT coefficients by Golomb-Rice codes , 1998, Proceedings 1998 International Conference on Image Processing. ICIP98 (Cat. No.98CB36269).

[9]  Ian H. Witten,et al.  Arithmetic coding revisited , 1998, TOIS.