随着高分辨率、高帧率和更丰富媒体内容的视频散播运用需求的高速增长,…我将介绍视频编码标准的演进过程,以及将要重点解析的新标准AV1在其中的定位。
20世纪90年代,MPEG(运动图片专家组)制定了MPEG-2视频编码标准,…
2008年ITU(国际电信联盟)提出了H.264,又称MPEG-4 AVC…
2013年,H.265/HEVC标准被正式确立…
为进一步改进视频编码效率,联盟AOM(AOMedia)于2015年成立,通过合作研发最终构建了新一代开放、免许可费的视频编码格式AV1…
AV1 bitstream包含一系列语法元素来表示图像和视频数据、元数据以及其他控制信息。这些语法元素主要包括:
深入理解这些bitstream syntax,是解析AV1编解码机制的基础。
AV1的编解码流程主要包含如下功能模块:
下面这张AV1 编码流程图,清晰展示了各主要功能模块的位置以及数据流动关系:
理解清楚这些模块特性与接口,是分析AV1编解码方法的前提。
AV1中的分区树(Partition Tree)利用多类型分割模式,递归地对图像/视频序列进行分区,以捕捉更丰富的空间信息,从而提升编码效率。
其中,新的方向预测分割模式及非参数方向分割线显著增强了分割灵活性。实测结果表明, 该模块可为整体码率节省带来高达20%的编码增益。
【决策树示例图】
AV1的分割树与旧版编码器中的块划分机制相比,主要有以下三个方面的突破:
在这三点的综合推动下,AV1的分割树模块展现出更强大的自适应建模和表示能力,可为整体编码效率带来高达20%的提升空间,是AV1中的一大创新亮点。
AV1帧内预测增加了多个新型模式,以便在空域和变换域建模更复杂的图像内容,主要包括:
这些预测模式可单独或组合使用,模型参数会被AV1自适应调整算法优化选择,从而实现最大化的压缩比率,整体质量提升可达5%至10%。
下面详细讨论这些帧内预测模式的算法思路:
【预测模式解析】
我将重点解析几种关键的帧内预测模式。
其中,Smooth预测模式使用双边滤波方法预测当前分块,其基本思路如下:
这种基于边缘检测与模糊加权的预测模式,可有效处理图像中的光滑区域,避免出现块效应。
而Warped模型改用仿射或透视变换,实现几何结构的扭曲校正,从而提高低细节或重复textures的编码效率。其基本方法是:
综上所述,AV1中丰富的帧内预测模式增强了空域冗余度量与移除能力,是其编码提效的重要技术之一。
在时间维度的帧间冗余剔除也是AV1的创新重点。这主要通过增强运动补偿来实现:
【运动补偿分析】
AV1中帧间运动补偿预测的核心提升技术。
首先,AV1采用1/16子像素级别的高精准度运动矢量寻找。这进一步细化了块间运动匹配的像素位移模型,使帧间冗余剔除更加准确高效。
其次,引入了基于双向光流法计算的OBMC(Overlap Block Motion Compensation)预测。这可以融合两个预测框的像素信息,平滑处理运动区域边界,有效解决运动模糊、鬼影现象。
最后,在重构阶段,AV1使用了全新的8-tap抽头滤波器,替代了以往编码器中的经典6-tap方案。新的滤波器增大了抽头覆盖面,可有效打磨运动边界,提高视觉效果。
而这些运动补偿预测的累计效果,直接为AV1的编码质量提升提供了5%左右的空间。这也是AV1得以胜出的关键性能保障。
下面我们重点探讨这些帧间预测优化的实现原理:
首先是1/16子像素运动矢量寻找。这实际上是通过卷积神经网络来实现超分辨率。方法是:
然后,OBMC预测中双向光流估计模型利用了梯度法最速下降算法,迭代求解备选参考帧的运动矢量场,具体为:
而8-tap滤波器抽头加权实现了更平滑的帧间过渡。关键是引入更多周边像素信息,形成过渡区。其加权计算公式表示为:
P’=sum(Wi * Pi) / sum(Wi)
Pi表示像素点,Wi为对应高斯权重。
AV1算法相对旧版H.265而言,其计算复杂度最明显的提升在于:
这些都导致了编码时间延迟的显著增加。下图给出了不同配置下的AV1编解码时间测试:
首先来看AOM-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算法复杂度,可以对编码流程模型进行简化,主要手段包括:
这类方法通过框定某些超参数的上限,会以些许质量损失为代价,但明显加快编码速度,符合工程折衷需求。
计算剪枝策略则是动态地判断、跳过冗余计算:
该类方法可以智能地避开不必要的内容分析与建模,有效降低平均计算量。
联合运用以上两种编码加速手段,AV1可获得1.5倍以上的编码速度 提升。
基于AV1算法复杂度提升的现实,依赖硬件实现的编码加速 becomes必不可少。主要的两大手段是:
GPU流处理器的超高并发度,非常契合编码流水线特点,可实现10倍以上计算加速。挑战在于CUDA局限…
这类可编程逻辑芯片,可以针对AV1特定算法进行专用分析优化,定制信号流水线,实现定制加速。但需权衡研发成本。
未来,AV1编码器的高效实现很大程度上依赖硬件协同设计与优化。软硬结合将是必由之路…
AV1作为最新一代视频编码标准,相较前一代HEVC,在编码质量和压缩比等多个指标上均有显著的整体提升。
多项评测结果显示,在类似质量水平下,AV1平均可节省30%的比特率。这主要得益于分割树、局部预测模式、滤波器等多项核心编码工具的技术优化。
例如下图所示AV1在新闻序列上的RD性能,其量化步长为20-55时,码率节省可达50%以上。其他类型视频片段也呈现30%左右的BD-Rate改进。
AV1编码标准显著的质量和压缩比提升,为其在多个领域打开广阔的应用前景:
可以预见的是,作为一种免许可费的前沿编码格式,AV1必将与AI视频算法和应用深度结合,创造更丰富的媒体体验,造福广大用户。
AV1之所以在短时间内快速成熟和发展,离不开众多公司和高校的技术支持与贡献,在此表示衷心感谢!
展望未来,随着媒体内容更丰富、传输网络更复杂的趋势,视频编解码技术也面临更大的挑战。作为新标准的AV1会不断引入更多前沿算法,如深度学习方法,以适应这一新形势。
让我们拭目以待AV1的下一个技术飞跃!它必将继续改变和推动数字视频编码的发展!
有写的不对的地方,欢迎大家评论区指错批评!!!