帧间预测编码概述
基本原理
利用时间相关性,使用邻近已编码图像像素值预测当前图像的像素值,能够有效去除时域冗余。目前的视频编码标准中,帧间预测都采用了基于块的运动补偿技术。
运动估计(ME):当前图像的每个像素块在之前已编码图像中寻找一个最佳匹配块的过程。
参考图像或者参考帧:用于预测的图像
运动矢量(MV):最佳匹配块到当前块的位移
预测残差:当前块与参考块的像素差值
运动补偿:根据MV得到的参考块作为当前当前块预测值的过程
I图像:只能使用帧内预测编码技术
P图像:可以使用帧间预测编码技术
B图像:可以选择使用前向预测、后向预测或双向预测。一个宏块拥有2个MV。
MV差分:去除相邻块运动矢量之间的相关性。
半像素精度:MV不一定是像素的整数倍
MV预测(MVP)
H.264:有7种尺寸的运动补偿块、1/4像素精度MV、多参考图像预测、加权预测及空域/时域MVP技术
H.265:非对称划分、更先进的MVP技术(merge和AMVP)、多参考图像和加权预测
H.266:更加灵活的二叉树、三叉树、四叉树混合编码单元划分和非矩形几何划分、还在运动矢量预测、获取、运动补偿中引入了新的技术。
帧间预测编码关键技术
运动估计、运动矢量表示、运动补偿
运动估计
再当前已编码图像中寻找一个最佳参考块,得到最优编码性能。编码器根据率失真代码最小的参考块作为当前块的最佳匹配块。
- 运动估计的准则:MSE\MAD\MPC\SAD\SATD(使用比较广泛的是SAD\SATD)
- 运动搜索算法:根据匹配准则寻找最优匹配块获得最优MV的过程。(全局搜索、对数搜索、三步搜索、UMHexagonS\TZSearch)
- 亚像素精度运动估计:因为物体运动不一定以整像素为基本单位,因此将运动估计的精度提升到亚像素级别,可以提高运动补偿的精确度,进而提高编码效率。意味着需要对参考图像进行插值。
运动矢量表示
运动矢量信息:参考图像索引、MV水平分量、MV垂直分量
- MV空域预测:利用空域相邻块的运动信息。
- MV时域预测:利用时域临近帧的运动矢量预测当前帧的运动矢量。
记录时空域相关块的预测信息,建立候选MV列表,选取性能最优的一个运动信息作为MVP
运动补偿
目标:利用参考重建块构建当前块的预测值,使其率失真代价最小。
- 普通运动补偿
- 多参考图像运动补偿
- 加权运动补偿
VVC帧间预测编码概述
MV的预测和获取
MV预测技术继承和发展了H.265的merge和AMVP技术,拓展了MV预测选择范围,提高MV的表示精度。
(1)Merge模式
在MVP候选列表的构造上,保留了空域和时域候选,去除了组合MVP候选,增加了基于历史的MV预测(HMVP)和成对平均MVP候选&#