购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.3 编码块的预测约束条件

硬件解码器的核心计算单元通常是围绕超级块设计的。如果将超级块的大小从64×64增加到128×128,核心计算单元所需的硅面积将增加约3倍。为了降低解码器的硬件设计复杂度,只有尺寸小于或等于64×64的像素区域才被允许使用帧内预测模式。另外,帧内预测模式虽然是以编码块为基本单元进行编码的,但是真正的帧内预测却不是以编码块为基本单元来进行的。正如即将在3.4节介绍的那样,为了捕捉预测残差的空域和频域特性,AV1允许把编码块分割成多个变换块。当编码块被分割成多个变换块时,以编码块为基本单元进行帧内预测时,待预测像素与参考像素之间的距离有时会跨越多个变换块,从而导致帧内预测的准确性下降。为了提高帧内预测的准确性,AV1的帧内预测是以变换块为基本单元进行的。所以,当编码块的尺寸是128×128时,该编码块会被强制划分为4个尺寸为64×64的变换块。

图3-8为8×8的编码块被分割成4个4×4的变换块在水平帧内预测模式下的参考像素示意图。如果帧内预测以编码块为单位进行,则待预测像素与参考像素之间跨越了一个变换块,如图3-8a所示。而在以变换块为单位的帧内预测中,预测像素使用的是与其直接相邻的左侧/上方变换块的重构像素值作为参考像素,所以预测像素与参考像素之间的距离更近,如图3-8b所示。因此基于变换块的帧内预测的准确性更高。在图3-8b中,预测像素将其左侧相邻变换块的重构像素作为参考像素。从中可见,相比于图3-8a中预测像素与参考像素之间的距离,图3-8b中预测像素与参考像素的距离更近。

图3-8 包含4个变换块的8×8编码块在水平帧内预测模式下的参考像素示意图

在另一个的极端情况下,如文献[1]所述,使用4×4编码块会增加YUV420格式视频的最差编码延迟,这种情况发生在所有编码块都是4×4亮度像素并且使用帧内预测模式进行编码时。这是因为在4×4编码块的帧内预测中,每个2×2色度块都需要经过帧内预测和变换编码。由于帧内预测需要使用相邻块的重构像素作为参考像素,所以,对每个2×2色度块执行帧内预测会极大地增加色度分量的解码复杂度。为了降低色度分量的解码复杂度,AV1采用一种基于编码块尺寸限制的色度块编码模式。

对于色度采样格式为4:2:0的视频,当编码块的尺寸是4 ×H 或者 4时,它所对应的色度块尺寸是 或者 。在基于编码块尺寸限制的色度块编码模式下,尺寸为 或者 的色度块可以做帧间预测,但是不允许做帧内预测。为此,在编码过程中,AV1把多个 或者 色度块合并成一个尺寸为4 ×N 或者 4的色度块 [1] ,并且把这个尺寸为4 ×N 或者 4的色度块与其中一个亮度编码块绑定在一起进行编码。在这种情况下,只有与色度块绑定的编码块存在色度分量并且其色度分量块大小是4 ×N 或者 4,而其余编码块是没有色度分量的。

在预测过程中,如果每一个 或者 色度块所对应的亮度块是采用帧间预测模式,则这个4 ×N 或者 4色度块将以 或者 色度块为基本单位进行帧间预测,每个 或者 色度块使用其对应亮度块的运动信息。否则,即有一个 或者 色度块所对应的亮度块采用帧内预测模式,这个4 ×N 或者 4色度块将使用与其绑定的亮度块的预测模式进行预测。在这种情况下,当与其绑定的亮度块是帧间预测时,这个4 ×N 或者 4色度块将使用该亮度块的运动信息,以4 ×N 或者 4为单位执行帧间预测。当与其绑定的亮度块是帧内预测时,这个4 ×N 或者 4色度块也将使用帧内预测模式,以4 ×N 或者 4为单位执行帧内预测。下面以一个被分割成4×4编码块的8×8块为例,来说明这种基于编码块尺寸限制的色度块编码模式的编码方法,如图3-9所示,其中黑色圆点表示亮度像素,灰色圆点表示色度像素。

图3-9 基于编码块尺寸限制的色度块编码模式示意图

在这个示例中,AV1将把4个4×4编码块所对应的4个2×2色度块合并成一个4×4的色度块(图3-9b黑色边框标记),并把该4×4色度块与图3-9a右下角的4×4编码块绑定在一起进行编码。所以,图3-9a中只有右下角的4×4编码块存在色度分量并且其色度分量块大小是4×4,而其余3个4×4编码块是没有色度分量的。这个4×4的色度块预测方案可以描述如下:

❍如果4个4×4编码块包含一个或多个帧内预测编码块,那么,该4×4色度块使用图3-9a右下角的4×4编码块的预测模式进行预测。

●当图3-9a右下角的4×4亮度编码块使用帧间预测模式时,这个4×4的色度块将使用图3-9a右下角的4×4亮度编码块的运动信息执行4×4块大小的帧间预测。

●当图3-9a右下角的4×4亮度编码块使用帧内预测模式时,这个4×4的色度块将执行4×4块大小的帧内预测。

❍如果4个4×4编码块都是帧间预测块,则这个4×4色度块以2×2色度块(图3-9b黑色边框中的划分方式)为基本单位进行帧间预测,每个2×2色度块使用其对应的4×4块大小亮度块的运动信息。 0NLlehEfRRKTqszuarZ/ey6Pb3kWeTlEdR8j3m2gvZxK427XgXZa8pLJ7YIg1TvM

点击中间区域
呼出菜单
上一章
目录
下一章
×