Integer reversible transformation to make JPEG lossless

JPEG, as an international image coding standard based on DCT and Huffman entropy coder, is still popular in image compression applications although it is lossy. JPEG-LS, standardized for lossless image compression, however, employs an encoding technique different from JPEG. This paper presents an integer reversible implementation to make JPEG lossless. It uses the framework of JPEG, and just converts DCT and color transform to be integer reversible. Integer DCT is implemented by factoring the float DCT matrix into a series of elementary reversible matrices and each of them is directly integer reversible. Our integer DCT integrates lossy and lossless schemes nicely, and it supports both lossy and lossless compression by the same method. Our JPEG can be used as a replacement for the standard JPEG in either encoding or decoding or both. Experiments show that the performance of JPEG with our integer reversible DCT is very close to that of the original standard JPEG for lossy image coding, and more importantly, with our transform, it can compress images losslessly.