Library

3.3.3 Predictive Coding

As discussed in Section 3.3.2, entropy coding alone cannot eliminate redundancy arising from correlations between successive samples. Predictive coding reduces this redundancy by exploiting the statistical relationship between adjacent samples of a signal.

In predictive coding, the encoder uses one or more previously reconstructed samples to estimate the value of the current sample. This prediction is subtracted from the actual sample to form a prediction error (or difference signal), which is then quantized and transmitted. At the decoder, the same prediction process is repeated using reconstructed past samples, and the received difference is added to the prediction to recover the current sample value. A simplified block diagram of this process is shown in Figure 3.13.

Figure 3.13. A simplified illustration of the predictive coding approach.

If successive samples are strongly correlated, the variance—and hence the entropy—of the prediction error will be significantly smaller than that of the original signal. Consequently, fewer bits are required to encode the difference values, resulting in more efficient transmission. In practical systems, the prediction error is almost always entropy-coded to achieve further compression.

In image coding, prediction is performed in the spatial domain, where each pixel is estimated from neighboring pixels. In video coding, both spatial and temporal prediction are employed, with temporal prediction using previously decoded frames. Modern standards such as JPEG-LS, H.264/AVC, and HEVC (H.265) combine predictive coding with transform coding, quantization, and entropy coding to achieve high compression efficiency.