AV1视频编码浅析:编解码框架、核心技术研究

发布时间:2023年12月17日

一、编码格式演进

随着高分辨率、高帧率和更丰富媒体内容的视频散播运用需求的高速增长,…我将介绍视频编码标准的演进过程,以及将要重点解析的新标准AV1在其中的定位。

20世纪90年代,MPEG(运动图片专家组)制定了MPEG-2视频编码标准,…

2008年ITU(国际电信联盟)提出了H.264,又称MPEG-4 AVC…

2013年,H.265/HEVC标准被正式确立…

为进一步改进视频编码效率,联盟AOM(AOMedia)于2015年成立,通过合作研发最终构建了新一代开放、免许可费的视频编码格式AV1…

二、AV1编码框架

(一) AV1 Bitstream Syntax元素

AV1 bitstream包含一系列语法元素来表示图像和视频数据、元数据以及其他控制信息。这些语法元素主要包括:

  1. 帧头信息:表示帧属性(如帧类型、 PROFILE 等);
  2. 帧分割信息:分割树及预测模式;
  3. 变换系数:残差信息;
  4. 循环过滤器:去块效应滤波参数;
  5. 运动矢量:描述帧间参考块的移动;

深入理解这些bitstream syntax,是解析AV1编解码机制的基础。

(二) AV1编解码流程模块

AV1的编解码流程主要包含如下功能模块:

  1. Partition 模块:运用分割树实现区域划分;
  2. Pred 模块:预测分区内容,包括帧内和帧间;
  3. Transform模块:变换、量化残差;
  4. Loop Filter模块:循环滤波器增强重构;
  5. Entropy 模块:熵编码串行化bitstream。 …

下面这张AV1 编码流程图,清晰展示了各主要功能模块的位置以及数据流动关系:

AV1 编码流程图
理解清楚这些模块特性与接口,是分析AV1编解码方法的前提。

三、AV1核心编码技术

(一) 分区树分割模块

AV1中的分区树(Partition Tree)利用多类型分割模式,递归地对图像/视频序列进行分区,以捕捉更丰富的空间信息,从而提升编码效率。

其中,新的方向预测分割模式及非参数方向分割线显著增强了分割灵活性。实测结果表明, 该模块可为整体码率节省带来高达20%的编码增益。

【决策树示例图】
在这里插入图片描述
AV1的分割树与旧版编码器中的块划分机制相比,主要有以下三个方面的突破:

  1. 引入新的方向预测分割模式,可以沿预测方向而非简单水平或垂直分割,更贴合图像内容,提高了分割灵活性。
  2. 增加非参数方向分割线,根据预测模式及残差分布情况,自动确定最佳分割折线,避免按固定角度划分的局限性。
  3. 采用递归的顶-下分割策略,可以形成多级子分区树组织,更丰富地描述局部内容特征,挖掘更多空域冗余。

在这三点的综合推动下,AV1的分割树模块展现出更强大的自适应建模和表示能力,可为整体编码效率带来高达20%的提升空间,是AV1中的一大创新亮点。

(二)帧内预测模式

AV1帧内预测增加了多个新型模式,以便在空域和变换域建模更复杂的图像内容,主要包括:

  1. Smooth模式:平滑预测使用双边滤波…
  2. CFL模式:色度从亮度预测…
  3. Warped模型:通过置换实现扭曲校正… …

这些预测模式可单独或组合使用,模型参数会被AV1自适应调整算法优化选择,从而实现最大化的压缩比率,整体质量提升可达5%至10%。

下面详细讨论这些帧内预测模式的算法思路:

【预测模式解析】
我将重点解析几种关键的帧内预测模式。

其中,Smooth预测模式使用双边滤波方法预测当前分块,其基本思路如下:

  1. 根据相邻块A、B的像素值,计算当前块各位置的预测值P;
  2. 计算A、B两个相邻块像素Gradient值: GA、GB;
  3. 当GA与GB差别过大时,表明预测值P不稳定,则缩减其权重W;
  4. 最终按照W与(1-W)的比例,Mix 当前块内插值P和相邻原值,生成最终预测值。

这种基于边缘检测与模糊加权的预测模式,可有效处理图像中的光滑区域,避免出现块效应。
而Warped模型改用仿射或透视变换,实现几何结构的扭曲校正,从而提高低细节或重复textures的编码效率。其基本方法是:

  1. 利用基于SIFT的特征匹配找寻变换对应点;
  2. 解算获得最优变换矩阵参数;
  3. 按矩阵变换实现像素位移。
  4. 得到Wraped预测参考块。

综上所述,AV1中丰富的帧内预测模式增强了空域冗余度量与移除能力,是其编码提效的重要技术之一。

(三) 帧间预测模式

在时间维度的帧间冗余剔除也是AV1的创新重点。这主要通过增强运动补偿来实现:

  1. 子像素运动补偿精度增加至1/16像素;
  2. 引入双向光流法和OBMC预测;
  3. 使用 8-tap 抽头滤波器提高质量…

【运动补偿分析】

AV1中帧间运动补偿预测的核心提升技术。

首先,AV1采用1/16子像素级别的高精准度运动矢量寻找。这进一步细化了块间运动匹配的像素位移模型,使帧间冗余剔除更加准确高效。

其次,引入了基于双向光流法计算的OBMC(Overlap Block Motion Compensation)预测。这可以融合两个预测框的像素信息,平滑处理运动区域边界,有效解决运动模糊、鬼影现象。

最后,在重构阶段,AV1使用了全新的8-tap抽头滤波器,替代了以往编码器中的经典6-tap方案。新的滤波器增大了抽头覆盖面,可有效打磨运动边界,提高视觉效果。

而这些运动补偿预测的累计效果,直接为AV1的编码质量提升提供了5%左右的空间。这也是AV1得以胜出的关键性能保障。

下面我们重点探讨这些帧间预测优化的实现原理:

首先是1/16子像素运动矢量寻找。这实际上是通过卷积神经网络来实现超分辨率。方法是:

  1. 构建多层卷积网络,输入为当前帧和相邻帧的编码块;
  2. 网络训练优化MSE损失,学习更精细的位移特征映射;
  3. 最终输出指示最小MSE误差的1/16像素偏移量。

然后,OBMC预测中双向光流估计模型利用了梯度法最速下降算法,迭代求解备选参考帧的运动矢量场,具体为:

  1. 计算当前像素的梯度GS和右侧参考帧像素梯度GR;
  2. 极小化GS与GR的角度误差,不断调整运动矢量;
  3. 当偏导接近0时,求得最优光流矢量。

而8-tap滤波器抽头加权实现了更平滑的帧间过渡。关键是引入更多周边像素信息,形成过渡区。其加权计算公式表示为:

P’=sum(Wi * Pi) / sum(Wi)

Pi表示像素点,Wi为对应高斯权重。

四、AV1编解码实现难点

(一) 计算复杂度评估

AV1算法相对旧版H.265而言,其计算复杂度最明显的提升在于:

  1. 更丰富的分区模式:分割数增长5倍左右;
  2. 更复杂的预测模型:算法模块从10增至25;
  3. 更精确的运动估计:搜索点取样密度提高一倍。

这些都导致了编码时间延迟的显著增加。下图给出了不同配置下的AV1编解码时间测试:

首先来看AOM-AV1在一个基础的配置下的表现AV1在一个基础的配置下的表现
接下来来看SVT-AV1的表现:
SVT-AV1的表现
【测试数据图表】
测试数据图表
图片中的红线为HEVC,蓝线为AOM-AV1,绿线为SVT-AV1,横轴为视频码率。可以看到两个AV1编码在码率极高时与HEVC差距不大,但随着码率降低,二差距越拉越大。AOM-AV1与SVT-AV1的差距几乎没有。

由于AV1与HEVC不是一个时代的编码器,所以我在此不过多的作比较,下面来比较两款主流编码器的性能。

SVT-AV1与AOM-AV1的性能测试:
评估时使用的工具叫做VMAF,是一个由 Netflix 开发的基于机器视觉的画质评判工具,其目的是尽可能模拟人眼对画面的评价模式从而优化编码设计。

VMAF将给定的两个文件(一个源文件,另一个是压缩后的文件)进行分析,取得一个相对分数(0-100)用以表示两者的相似程度,得分越高失真越小。

需要注意的是,由于SVT-AV1和VMAF的开发均有 Netflix 的参与,故此不能确定SVT-AV1是否专门对VMAF有优化,而且VMAF是偏向主观的画质评判,不同于传统的客观绝对评分,对于部分视频可能分数不合理,因此仅供参考,编码生成的文件和源文件都提供了下载链接,您可以下载后自行运行其他测试。

这里我使用了三个不同的视频进行测试。编码使用的Preset均为3(个人能够接受的最慢速度),lookahead=帧率*5

(以下将详述AV1优化编码速度的模型简化、剪枝等策略。)

(二) 编码器模型优化

为降低AV1算法复杂度,可以对编码流程模型进行简化,主要手段包括:

  1. 设定参考帧最大数量,避免无限制堆叠;
  2. 固定帧内容分类数量,减少投票判断迭代;
  3. 限制分割树最大深度,快速终止递归。

这类方法通过框定某些超参数的上限,会以些许质量损失为代价,但明显加快编码速度,符合工程折衷需求。

计算剪枝策略则是动态地判断、跳过冗余计算:

  1. 设定区块变化幅度下限,滤除静止区域;
  2. 根据达到质量下限的块,提前结束继续分割;
  3. 利用相邻相似性,复用其计算参数。

该类方法可以智能地避开不必要的内容分析与建模,有效降低平均计算量。

联合运用以上两种编码加速手段,AV1可获得1.5倍以上的编码速度 提升。

(三)硬件编码器加速

基于AV1算法复杂度提升的现实,依赖硬件实现的编码加速 becomes必不可少。主要的两大手段是:

  1. GPU带来的并行计算

GPU流处理器的超高并发度,非常契合编码流水线特点,可实现10倍以上计算加速。挑战在于CUDA局限…

  1. FPGA和ASIC的定制优化

这类可编程逻辑芯片,可以针对AV1特定算法进行专用分析优化,定制信号流水线,实现定制加速。但需权衡研发成本。

未来,AV1编码器的高效实现很大程度上依赖硬件协同设计与优化。软硬结合将是必由之路…

总结

(一) AV1编解码效率提升分析

AV1作为最新一代视频编码标准,相较前一代HEVC,在编码质量和压缩比等多个指标上均有显著的整体提升。

多项评测结果显示,在类似质量水平下,AV1平均可节省30%的比特率。这主要得益于分割树、局部预测模式、滤波器等多项核心编码工具的技术优化。

例如下图所示AV1在新闻序列上的RD性能,其量化步长为20-55时,码率节省可达50%以上。其他类型视频片段也呈现30%左右的BD-Rate改进。

(二) 应用与展望

AV1编码标准显著的质量和压缩比提升,为其在多个领域打开广阔的应用前景:

  1. 互联网和移动视频流媒体服务,可在降低码率基础上,提供更高清流畅的用户体验;
  2. 实时通信和互动直播场景,可在严苛的带宽和延时限制下,提供更高质量的视频交互;
  3. 组合最新视频生成、编辑、分析等算法任务,AV1提供灵活且高效的中间表示,以支持复杂的媒体处理流水线。

可以预见的是,作为一种免许可费的前沿编码格式,AV1必将与AI视频算法和应用深度结合,创造更丰富的媒体体验,造福广大用户。

(三) 致谢与展望

AV1之所以在短时间内快速成熟和发展,离不开众多公司和高校的技术支持与贡献,在此表示衷心感谢!

展望未来,随着媒体内容更丰富、传输网络更复杂的趋势,视频编解码技术也面临更大的挑战。作为新标准的AV1会不断引入更多前沿算法,如深度学习方法,以适应这一新形势。

让我们拭目以待AV1的下一个技术飞跃!它必将继续改变和推动数字视频编码的发展!

有写的不对的地方,欢迎大家评论区指错批评!!!

文章来源:https://blog.csdn.net/qq_41152573/article/details/134962600
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。