1. Introduction
The High Efficiency Video Coding (HEVC) [1] and the Versatile Video Coding (VVC) [2] standards define prediction strategies to improve the performance of video codecs by reducing the amount of data needed to represent each frame. Among these strategies, the so-called intra-prediction strategy first divides each frame into non-overlapping blocks and then predicts these block sequentially following a specific order. Such a sequential prediction relies on several prediction modes that use the pixels surrounding each block as reference. Specifically, all prediction modes are tested on each block and the one that provides the best prediction is selected. Once a block is predicted, a residual block is computed as the difference between the original block and its prediction. If predicted accurately, the residual block should contain values very close to zero, which can be compressed into a small bit-stream very efficiently by applying a linear transformation, e.g., the Discrete Cosine Transform, quantization, and entropy coding. Each compressed residual block is decompressed before continuing with the prediction of the next block because the decompressed blocks are used as reference to predict subsequent blocks (see Fig. 1). To reconstruct a frame after compression, a similar block-wise process is followed: The first compressed block is first decompressed. The recovered residual block is added the corresponding predicted block, which can be computed because the initial reference pixels are readily available and the prediction mode used is signaled into the bitstream. This first reconstructed block is then employed to reconstruct the next one, repeating the process until the last block is reconstructed.