长方形块的广角度帧内预测(JVET-K0500)

JVET会议在帧内预测部分采纳了此提案。
不得不说,很佩服这些写提案的人,他们思考的真的十分细致到位。
言归正传。写在这里是便于自己参考,想看原提案的请找JVET-K0500会议文档。

提案对长方形块的帧内预测部分,用广角度帧内预测模式代替了几种传统角度帧内预测模式。总的角度模式与原始VTM保持一致。对于有广角度的块而言,需进行参考样本的平滑操作。

发现问题

对于VTM而言,目前包括Planar以及DC,共有33/65种角度预测模式。预测的角度从顺时针的45度到-135度。对于WxH的块而言,上方参考样本数组及左侧参考样本数组的大小均为(W+H+1),目的是为了覆盖上述所有目标像素的角度范围。VTM的角度定义是为了与HEVC的具体方向兼容而得到的,却没有考虑新加入的QTBT结构的影响。
例如,当块较扁平(W>H),更靠近上方参考数组的位置,但并不是对称的。同样地,当块较高时(W 长方形块的广角度帧内预测(JVET-K0500)_第1张图片
长方形块的广角度帧内预测(JVET-K0500)_第2张图片

这样的不对称导致对于一些预测模式而言,目标像素将会被一个更远的参考数组预测求得,而更靠近的参考像素将会被角度自身的定义所排除。在VTM的实现过程中,水平类模式的refMain为refLeft,而垂直类模式的refMain为refAbove。如下图。第一个图中角度是水平类模式,参考为refLeft,即图中的L点,但很明显,预测A的过程中,T是更靠近A的参考样本。第二个图中同理。从而可知,此时使用与当前角度相对应的“翻转角度”更为合适。
长方形块的广角度帧内预测(JVET-K0500)_第3张图片
长方形块的广角度帧内预测(JVET-K0500)_第4张图片

在JEVT-J0012中提出了广角帧内预测模式,应用条件:

  • 如果块宽度大于块高度,则对右上角超过45度的角度
  • 如果块高度大于块宽度,则对左下方向超过45度的角度
    每个广角度帧内预测模式方向与一个传统帧内预测方向关联,用同一个预测方向,但是相反的参考样本。如,广角度模式35和36与传统帧内预测的模式3和4关联。
    对广角度“翻转模式”可用的方向,广角度需要传输一个1bin的标志符。

长方形块的广角度帧内预测

对于长方形块,用一些广角度帧内预测模式来代替传统帧内预测模式。被替换的模式通过原始方法进行传输,并在句法分析后通过重映射到广角度模式索引获取。总的帧内预测模式没有改变,且帧内模式编码也没改变。
为了支持这些预测方向,将上方参考样本长度定义为(2W+1),左侧参考样本长度为(2H+1),如图所示。
长方形块的广角度帧内预测(JVET-K0500)_第5张图片
长方形块的广角度帧内预测(JVET-K0500)_第6张图片
替代的预测模式如下:

状态 35种模式下替换的帧内预测模式 67种模式下替换的帧内预测模式
W / H == 2 模式 2, 3, 4 模式 2, 3, 4, 5, 6, 7
W / H > 2 模式 2, 3, 4, 5, 6 模式 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
W / H == 1
W / H == 1/2 模式 32, 33, 34 模式 61, 62, 63, 64, 65, 66
W / H < 1/2 模式 30, 31, 32, 33, 34 模式 57, 58, 59, 60, 61, 62, 63, 64, 65, 66

下图表示了长方形块的角度帧内模式被广角度模式替换的一个例子。模式2和3倍扩展的角度模式35及36替代,35指向反向的模式3,模式36指向反向的方向4。
长方形块的广角度帧内预测(JVET-K0500)_第7张图片

这个模式的新定义需要采用基于MPM的预测模式编码方法。既然当前块的相邻块可能与当前块形状不同,他们的预测模式需要被映射到当前块的预测模式。简单的解决方案就是使用各个方向的原始模式索引。在这个情况下,对应于目标块的去除方向的模式索引被映射到新包括的最接近的相反方向。如果某一模式的预测方向对当前块而言仍是有效的,则不需要映射操作。
长方形块的广角度帧内预测(JVET-K0500)_第8张图片

最后,如上图所示,对角度小于45的模式可能存在不连续的问题。在广角帧内预测的情况下,两个垂直相邻的预测样本可以使用两个非相邻参考样本。所以,低通参考样本滤波以及边界平滑被应用于广角度帧内预测来减少差距 Δ \Delta Δ P P P α \alpha α增大所带来的负面影响。

你可能感兴趣的:(VVC,Intra,VTM)