AV1技术学习: Compound Prediction

一、双向 Compound Prediction

AV1支持两个参考帧的预测通过多种复合模式线性组合。复合预测公式为

其中,权重m(x, y) is scaled by 64 以进行整数计算,R1(x, y)和R2(x, y)表示两个参考块中位于(x, y)的像素。P(x, y)将按比例缩小 1/64 以形成最终的预测。

1. Distance weighted prediction

让 d1 和 d2 分别表示当前帧与其两个参考帧之间的时间距离。权值 m(x, y) 由 d1 和 d2 的相对值决定。假设 d1≤d2,则权重定义为

当d1≥d2时,分布是对称的。

2. Average predictor

距离加权预测的一种特殊情况,两个参考的权重相等,即 m(x, y) = 32。

3. Difference weighted predictor

加权系数是基于两个参考像素之间的差异逐像素计算。当像素差超过一定阈值时,每个编码块发送一个二进制符号来决定哪个参考块占上风

注意,m(x, y)的上限为0,64

4. Wedge mode

为每个符合条件的块大小预设了一组16个系数数组。将编码块分成两个子区域,并以不同的斜角。M (x, y)在大分区设置为64,在另一个分区设置为0,除了在过渡边缘附近,从64逐渐变为0,在实际边缘处为32。

我们使用下图来演示复合选项及其效果。为了实现其潜在的编码增益,众多的复合模式增加了大量的编码复杂性。尤其对于运动估计过程,因为每个参考块都与自己的运动向量相关联。同时对给定复合模式的两个运动向量进行优化,使得搜索空间呈指数级增长。先前的研究提出了一种联合搜索方法,迭代地固定一个运动向量,搜索另一个运动向量,直到结果收敛,可以显著减少复合模式的运动向量搜索点的数量。

二、单向 Compound Prediction

AV1 支持的单个参考帧的 Compound Prediction 模式,包括包括重叠块运动补偿和 inter-intra 组合 prediction 模式。

1. Overlapped block motion compensation

重叠块运动补偿(Overlapped block motion compensation)利用直接空间邻居的运动信息来提高其顶部和左侧边界附近像素的预测质量,其中真实的运动轨迹与两侧的运动向量相关

首先扫描上侧相邻块,并找到最多四个与当前块具有相同参考帧的相邻块作为参考块,如下图 (a) 所示,并且相邻块根据扫描顺序所标记。使用每个选定的参考块的运动矢量来生成从上边界向当前块的中心延伸的运动补偿块。其宽度与参考块宽度相同,高度为当前块高度的一半,如下图 (a) 所示。

中间区域融合结果为

其中 R1(x, y) 是使用当前块的运动向量 mv0 在位置(x, y)处的原始运动补偿像素,Rabove(x, y)是来自重叠参考块的像素。权值m(x, y)遵循一个升余弦函数,如下图所示,其中y = 0,1,...,H/2−1为行索引,H为当前块高度。

H = 16 时的权重分布如下图所示。

接下来,该方案对左侧相邻块进行处理,提取可用的运动向量,并构建从左边界向中心延伸的重叠参考块,如图 (b) 所示。

最终预测计算为:

其中Rleft(x, y)是左侧重叠参考块的像素。权值m(x, y)是列索引x的升余弦函数

式中x = 0,1 ...,W/2−1,W为当前块宽度

2. Compound inter--intra-predictor

该模式结合了帧内预测和 translational interprediction块。其中帧内预测在 DC、垂直、水平和 Smooth 模式中选择。这种组合可以通过类似于上述复合夹层的楔形掩模或一个预设系数集来实现,该系数集沿其预测方向逐渐减小预测内权重。每个模式预设权重系数的示例如下图所示:

相关推荐
DogDaoDao2 天前
AV1 解码器核心:decodeframe.c文件深度剖析
音视频·实时音视频·视频编解码·av1·解码器·decode·vp9
音视频牛哥10 天前
不只是等待 IDR:SmartMediaKit 播放器对 H.264 GDR 码流的完整适配实践
音视频开发·视频编码·直播
小鹿软件办公12 天前
AOMedia 推出 AV2 1.0.0 规范,解码复杂度比 AV1 激增五倍
av1·视频编码器·开源视频编码·av2编码器
DogDaoDao18 天前
AV1 帧内预测核心文件 reconintra.c 源码深度解析
音视频·实时音视频·视频编解码·av1·libaom·帧内预测·reconintra.c
DogDaoDao18 天前
深入解析 libaom:AV1 开源编解码库技术分析
google·开源·音视频·视频编解码·hevc·av1·libaom
DogDaoDao1 个月前
libaom源码search_intra_modes_in_interframe函数深度分析
音视频·视频编解码·av1·libaom·帧内预测·预测编码·预测模式
DogDaoDao1 个月前
AV1 环路滤波器深度解析:av1_loopfilter.c 源码原理详解
音视频·实时音视频·视频编解码·av1·vp9·libaom·环路滤波
码流怪侠2 个月前
FFmpeg 开发实战全解析:从入门到精通(附完整代码示例)
ffmpeg·音视频开发·视频编码
冬奇Lab2 个月前
硬件加速与 OMX/Codec2:解密编解码器的底层世界
android·音视频开发·视频编码
fantasy_arch2 个月前
SVT-AV1 整体架构
架构·av1