本篇来自JVET-Z0064:
1. 介绍
本提案提出了一种基于卷积交叉分量模型 (convolutional cross-component model,CCCM) 的帧内色度预测技术。 与 CCLM 类似,当使用色度子采样时,对重建的亮度样本进行下采样以匹配较低分辨率的色度样本。
此外,与 CCLM 类似,可以选择使用 CCCM 的单模型或多模型变体。 多模型变体使用两个模型,一个模型用于高于平均亮度参考值的样本,另一个模型用于其余样本(和 MMLM 类似)。多模型 CCCM 模式应用于至少有 128 个参考样本可用的 PU。
2. 卷积滤波器
提出的应用 7 抽头卷积滤波器计算色度预测像素,色度预测像素的计算公式如下所示:
predChromaVal = c0C + c1N + c2S + c3E + c4W + c5P + c6B
其中,C表示当前色度样本对应位置处的亮度样本,N、S、E、W分别为当前亮度样本的相邻样本,如下图所示:
非线性项 P :
P = ( C*C + midVal ) >> bitDepth
偏置项 B:
B = midVal
偏置项 B 表示输入和输出之间的标量偏移(类似于 CCLM 中的偏移项),并设置为中间色度值(对于10 bit视频,B=512)。
3. 滤波器系数的计算
通过最小化参考区域中预测和重构色度样本之间的 MSE 来计算滤波器系数 ci。 参考区域如下图所示,由 PU 上方和左侧的 6 行/列色度样本组成。 参考区域向右延伸 1 个 PU 宽度,在 PU 边界下方延伸 1 个 PU 高度。 参考区域调整为仅包含可用样本。 蓝色区域的扩展需要支持正形空间滤波器的“side samples”,并且在不可用区域时被填充。
通过计算亮度输入的自相关矩阵和亮度输入和色度输出之间的互相关向量来执行 MSE 最小化。 将自相关矩阵进行 LDL 分解,并使用反代换法计算最终的滤波器系数。 该过程大致遵循 ECM 中 ALF 滤波器系数的计算,但是选择 LDL 分解而不是 Cholesky 分解以避免使用平方根运算。 所提出的方法仅使用整数算术。
4. 更多细节
使用PU级 flag 标识是否使用该模式,并使用 CABAC 编码。
在信令方面,CCCM 被认为是 CCLM 的子模式。 也就是说,仅当帧内预测模式为 LM_CHROMA_IDX(以启用单模式 CCCM)或 MMLM_CHROMA_IDX(以启用多模式 CCCM)时,才编码 CCCM flag。
编码器在色度预测模式循环中执行两项新的 RD 检查,一项用于检查单模型 CCCM 模式,另一项用于检查多模型 CCCM 模式。
5. 实验结果
All Intra Main10 | |||||
Over ECM-4.0 | |||||
Y | U | V | EncT | DecT | |
Class A1 | -1.28 % | -3.67 % | -5.88 % | 101 % | 104 % |
Class A2 | -5.64 % | -5.02 % | -7.59 % | 102 % | 104 % |
Class B | -0.65 % | -4.15 % | -2.54 % | 101 % | 104 % |
Class C | -0.16 % | -1.25 % | -1.12 % | 102 % | 102 % |
Class E | -0.37 % | -3.75 % | -1.77 % | 102 % | 102 % |
Overall | -1.43 % | -3.51 % | -3.50 % | 102 % | 103 % |
Class D | -0.09 % | -0.77 % | -0.70 % | 102 % | 102 % |
Class F | -0.83 % | -3.11 % | -3.00 % | 101 % | 102 % |
Class TGM | -2.66 % | -5.12 % | -4.93 % | 101 % | 103 % |
Random Access Main 10 | |||||
Over ECM-4.0 | |||||
Y | U | V | EncT | DecT | |
Class A1 | -1.13 % | -2.55 % | -4.32 % | 100 % | 101 % |
Class A2 | -2.10 % | -2.55 % | -4.26 % | 100 % | 100 % |
Class B | -0.37 % | -3.57 % | -2.68 % | 101 % | 100 % |
Class C | -0.07 % | -0.83 % | -0.61 % | 102 % | 100 % |
Class E | |||||
Overall | -0.79 % | -2.43 % | -2.77 % | 101 % | 100 % |
Class D | -0.02 % | -0.83 % | -0.71 % | 102 % | 99 % |
Class F | -1.11 % | -2.93 % | -3.08 % | 101 % | 100 % |
Class TGM | -1.54 % | -2.48 % | -2.35 % | 100 % | 101 % |
下表总结了所提出方法的不同变体的性能,以展示在 All Intra 配置中不同参数选择所提供的权衡。 结果包括每个类别的亮度 BD 率影响以及亮度 BD 率影响 (Y) 和色度 BD 率影响 (UV) 的单独平均值。
- 测试 1:建议的方法
- 测试 2:禁用非线性项
- 测试 3:使用 3 行参考样本而不是 6 行
- 测试 4:在 CTU 上方使用 2 行参考样本来减少“CTU 外部”行缓冲区
- 测试 5:仅当色度 PU 至少有 64 个样本时才启用 CCCM 模式
- 测试 6:仅启用单模型 CCCM 模式(禁用多模型 CCCM 模式)
- 测试 7:PU 级别信号的 3 个额外标志分别标识:
- 激活非线性项
- 在 3 和 6 条参考线之间切换
- 在 5 抽头“加号形状”空间滤波器(如建议的方法)和 3 抽头“减号”之间切换