基于GOP的时域滤波
Posted Dillon2015
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于GOP的时域滤波相关的知识,希望对你有一定的参考价值。
本文来自JVET-U0056提案《GOP-based temporal filter improvements》。该提案针对VTM中基于GOP的时域滤波提出了一些改进,该滤波仅用于RA配置,不用于AI和LD配置。在RA配置CTC下测试,Y/U/V BD-rates平均为−1.3%/−1.0%/−1.1%。
简介
在VTM中,对每个块进行RDO计算rate*lambda + distortion。
如果当前帧后面跟一个和它完全相同的帧,则当前帧中的编码块会被后面的帧完全复用。在这种情况下,RDO优化目标为rate * lambda+2 * distortion。VTM中在RA配置下通过对不同时域层设置不同QP来近似这个过程。
如果后续帧和当前帧仅有轻微差别,编码块仍可能选择跳过模式。在这种情况下,RDO的优化目标为rate*lambda + distortion1 + distortion2。这种情况下,编码块编码为两种平均值时RD cost最小。通过公式推导,
当recA=½(origA+origB)时上式取最小值。
当原始帧差别过大时,滤波强度一个迅速降低,因为此时前一帧解码块被后一帧复用的概率降低。目前的滤波是通过像素级加权完成,权值由时域相邻像素的差别决定,
其中bw=0.4,sw=2。
提案方法
块误差权重
计算每个8x8块的误差E,其中SSD用原始块和对应运动补偿后参考块计算,V是原始块的方差,E的计算如下:
如果E小于50,bw乘以1.2。如果E大于100,bw乘以0.6。如果E大于50,sw乘以0.8。
块频率权重
计算每个8x8块的频率F,首先计算原始块和对应运动补偿后参考块的残差块D。计算D的水平方向的SSD记为HSD,和垂直方向的VSD,以及D的正常的SSD。F的计算如下:
如果F大于等于25,bw乘以0.6,sw乘以0.8。
参考帧权重
VTM的时域滤波中,权重s0取决于原始帧和参考帧的时域距离。当参考帧仅在一个方向时,对于距离1和2,s0分别为1.2和1.0。当参考帧在两个方向时,权重分别为0.85和0.6。
提案对此进行了改进,在每个方向使用4个帧,当参考帧在一个方向时,对距离1,2,3,4的权重分别为1.13,0.97,0.81和0.57。在两个方向时权重分别为0.85,0.57,0.41和0.33。
此外,权重还针对E进行了调整。对当前块计算每个时域相邻块的最小E。然后每个块的权重要乘以,
运动估计改进
在使用滤波时,对ME进行了三处改进。第一,对8x8块计算最终MV时不再进行整像素运动搜索。第二,零运动矢量通常是在较高时域层中附近位置搜索的最佳MV。第三,分像素运动估计后,考虑从上面和左边的块转换到最终的运动向量。
实验结果
实验平台为VTM11.0,仅在RA配置下编码。
和VTM11.0原始时域滤波比较结果如下,
和VTM11.0不开启时域滤波比较结果如下,
感兴趣的请关注微信公众号Video Coding
以上是关于基于GOP的时域滤波的主要内容,如果未能解决你的问题,请参考以下文章