VCIP2020:VVC中的ACT
Posted Dillon2015
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VCIP2020:VVC中的ACT相关的知识,希望对你有一定的参考价值。
本文来自VCIP2020论文《Adaptive Color Transform in VVC Standard》
ACT(Adaptive Color Transform)用于去除4:4:4采样格式的视频不同颜色分量间的相关性,主要用于SCC场景。ACT自适应的将预测残差信号从原始空间转换到另一个颜色空间。
ACT的编解码流程
图Fig.1是编码器中加入ACT后的工作流程,包含两个模块:Forward ACT和Inverse ACT。编码器首先进行模式决策然后获得残差信号,CU通过RDO决定是否使用ACT,如果使用ACT则将残差信号映射到另一个颜色空间,然后进行变换、量化、熵编码。
图Fig.2是解码器中加入ACT后的工作流程,首先进行熵解码、反量化、反变换,然后对解码后的残差进行inverse ACT变换将残差信号映射到另一个颜色空间。
ACT是在CU级决策的,对一个CU都有一个标志位控制ACT功能,标志位为1表示该CU的预测残差要进行颜色空间转换否则保持原始空间。只有当CU有非零系数时才存在ACT标志位。当CU使用ISP模式或者CU的不同颜色分量块划分方式不同时,该CU禁止使用ACT模式。
颜色空间变换
ACT空间变换选择YCgCo-R有下面几个原因:1)它的变换增益和KLT变换接近。2)它是可逆变换,既可以用于有损编码也可以用于无损编码。3)它的复杂度非常低,只需要通过移位和加法操作就能实现。正变换和逆变换如下表所示。
如上表所示,YCgCo-R变换没有归一化,例如从RGB空间到YCgCo空间Y、Cg、Co的范数分别为0.6、1.2、1.4。和RGB空间相比,Y的能量降低,Cg和Co的能力增加,在这种情况下如果使用相同的QP会导致两个空间的失真不同。为了解决这个问题将Y、Cg、Co的QP分别调整(-5,1,3)。调整的QP仅影响YCgCo空间的量化和反量化,对于其他编码工具(例如去方块滤波)还是使用原始QP。
快速算法
为了降低RD搜索的复杂度当启用ACT模式时需要使用下面的快速算法。
-
启用/禁用ACT的RD计算顺序取决于输入视频的原始颜色空间,对于RGB视频首先计算启用ACT的RD cost,对于YCgCo视频首先计算不启用ACT的RD cost。只有当原始空间有非零系数时才计算变换空间的RD cost。
-
通过不同划分方式得到的同一个CU复用其ACT决策。
-
父CU的RD cost可以用于决定是否检查子CU变换空间的RD cost。例如,子CU原始空间的RD cost小于父CU变换空间的RD cost,则子CU不用计算变换空间。
-
为了减少计算的模式数,两个空间共享已经选择了的模式。尤其对于帧内模式,基于SATD的帧内候选模式由两个空间共享。对于帧间预测的ME和IBC的BV搜索,MV和BV也有两个空间共享。
使用上面的快速算法,AI配置下编码加速50%,RA和LD配置下加速25%,BD-Rate损失分别为0.4%和0.3%。
实验结果
实验平台为VTM9.0,序列为4:4:4采用格式,anchor和test分别对应开启ACT和禁用ACT。anchor和test都开启IBC、PLT、BDPCM和inter HashME。有损压缩使用的QP={22,27,32,37},表2和表3分别是有损和无损压缩的结果。
感兴趣的请关注微信公众号Video Coding
以上是关于VCIP2020:VVC中的ACT的主要内容,如果未能解决你的问题,请参考以下文章
VCIP2021:基于神经网络的双向预测blending过程