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:GDR中使用HMVP

VCIP2021:GDR中使用HMVP

VCIP2021:基于神经网络的双向预测blending过程

VCIP2021:基于神经网络的双向预测blending过程

VCIP2020:SCC编码工具的优化实现

VCIP2020:面向机器视觉的HEVC码率控制