Decoding Process

Overview

 
The decoding process is the inverse process of encoding process. Due to some steps of encoding process like quantization, the output image after decoding is not very the same as the original image. But the degree of lossness can be controlled by the quantization matrix so that the error is tolerated. Figure 1 shows the decoder processing steps. 
 
Entropy Decoding
Similar to entropy coding, entropy decoding also can be considered as 2-step process. The first step converts the input bit stream into the intermediate symbols. The second step converts the intermediate symbols into the quantizaed DCT coefficients. In fact, the output of the second step is the DC difference, the output of DPCM, and the AC coefficients after zig-zag scan. Therefore, the DC difference is then decoded into the quantized DC coefficient, and the AC coefficients are ordered into original order.
Dequantization
The following step is to dequantize the output of entropy decoding, returning the result to a representation appropriate for input to the IDCT. The equation is as followed :
 
Inverse Discrete Cosine Transform (IDCT)
The last step of decoder is the IDCT. It takes the 64 quantized DCT coefficients and reconstructs a 64-point output image signal by summing the basis signals. JPEG does not specify a unique IDCT algorithm in its standard either. The mathematical definition of the 8x8 IDCT is as followed :
 

JPEG Introduction