关于VMAF的ContentAwareEncoding和no-ref指标的思考

本文来自NTT Data的多媒体架构师Fabio Sonnati的博客,对VMAF存在的问题进行了说明。LiveVideoStack对原文进行了翻译,感谢Netflix高级软件工程师李智对本文进行了审校,他是VMAF的主要开发者。最后,他对VMAF中存在的“昏暗场景下的条带化失真(banding或者contouring)确实有评分过高的问题”进行的回应,给出了改进办法。

文 / Fabio Sonnati

译 / 元宝

审校 / 李智

原文 https://sonnati.wordpress.com/2019/12/03/thoughts-around-vmaf-contentawareencoding-and-no-ref-metrics/

李智:首先要感谢Fabio对VMAF的详细而细致的分析,这对于我们开发VMAF的后续版本非常有帮助。我也同意作者文章中的主要观点:目前版本的VMAF对于昏暗场景里的条带化失真(banding或者contouring)确实有评分过高的问题。

对于banding现象,需要注意的一点是,其可见性对于观测的条件非常敏感,其中包括显示设备的亮度,以及周边环境的亮度等等。当训练以及调整VMAF算法的时候,我们所收集的主观数据假设了一个典型的观看条件,其屏幕的亮度设置在50%左右,最大程度地减低了高低亮度两端的clipping。但这可能很大程度影响了测试对象对banding的感知。如果将屏幕调至100%,则banding会更容易被看到。我同意未来版本的VMAF应该对低亮度信号的感知更明显。在我们发布新版本VMAF以前,一个暂时的提升VMAF对banding的感知度的方法是,对VMAF的输入信号(包括原信号以及压缩信号)进行gamma校正(比如选取一个居中的值,例如1.5),以提高低亮度部分的可见性。

介绍

基于内容的编码(CAE)和基于场景的传送(CAD)代表了当今流媒体的最新技术,这与其使用的编解码器是无关的。这个行业已经花了很长时间来消化这些概念,但现在它们绝对已经成为主流:

由于每个内容都是不同的,因此需要以不同的方式来编码。由于观看时的场景是不同的,因此需要以不同的方式来传送。流媒体服务的优化是需要CAE和CAD策略的。

我已经多次讨论了这些逻辑以及对CAE和CAD策略的需求,并且多年来我也已为我客户们的需求做了一些不同的优化。

说到内容感知编码,最开始的做法是根据以往的经验法则来确定源特征(最终被分类)和编码参数化之间的关系,从而在尽可能小的比特率下获得令人满意的质量水平。用来调整算法的“质量指标”通常是凭借压缩工程师(或一个“黄金眼”小组)的主观视觉感受来决定的,或者更少见的,是通过一个专属的主观质量评估小组来决定的。按照经典的优化方法(https://sonnati.wordpress.com/2016/05/04/video-optimization-a-matter-of-adaptivity/),我们是将一个复杂的“域”进行细分,比如在子域中的视频流,从而递归地尝试分别优化它们(如果可能的话,之后再联合优化),并使用人类主观视觉测试来指导做决策。

最近,像VMAF之类的客观质量评估指标引入了与人类感知高度相关的度量,从而对设计更精确的CAE模型和对提升客户的实际质量体验产生了极大的帮助。然而,是不是所有的问题都解决了呢?是否我们现在可以用更快更低廉的客观质量指标来完全取代专家的眼睛和主观测试呢? 这个答案是并不简单的。根据我的经验,是与否取决于很多因素,其中之一就是准确性……

准确性问题

在我的职业生涯中,我十分有幸能与思想开放的管理者、决策者和合作伙伴一起工作,他们敢于走出自己的舒适区来推动实验的进行,为了质量、优化和创新努力尝试一些大胆的想法。所以,在过去的十年里,我有机会参与了许多创新和令人兴奋的项目,比如:

各种CAE的部署,通过对人类感知的研究来调整视频编码的优化和过滤算法,定义类似于VMAF的指标来训练在CAE中实现的最先进机器学习算法,以及许多其他实现。在后续的文章中,我想要讨论在不断追求最佳编码流程的过程中遇到的一些问题。

当VMAF在2016年发布时,我对它非常感兴趣,并用它为我的一个主要客户改进了现有的CAE部署。如果你可以使用一个可扩展的客观质量指标来代替一个昂贵而且耗时的主观评价人工小组,你就可以在编码优化、视频处理、新编解码器或其他有关视频流的创造性想法上进行大量的实验。一个可重复的质量指标对于“推销”一个新想法也很有用,因为你可以用它来验证这个想法可以带来的收益(尤其是如果这个度量标准是由Netflix开发的,它能带来即时的可信度)。

然而,自从开始使用VMAF以来,VMAF就在我的实验中暴露出了一些次优的特征,至少在一些情况下是这样。特别地,我现在甚至可以认为VMAF的阿喀琉斯之踵是在黑暗或平滑的场景中估计质量时,其准确性会下降。

在CAE中,我们试图尽可能使用最小的比特数来达到期望的最低质量水平。这在低复杂性、平坦的场景中带来了非常低的比特率。另一方面,在这种场景中,任何在估计量化级别或者目标比特率时产生的错误,都可能会导致质量的严重下降,特别是有可能会引入大量的“条带化”伪影。突然间,CAE的一个优点变成了一个潜在的缺点,因为一个标准的CBR编码可以避免在上述相同的情况下产生带状伪影(尽管这样做会浪费一些比特率)。

因此,必须有一个准确的质量指标来对应这个问题。条带化是8位AVC / HEVC编码的难题,但也会出现在10位HEVC视频中,尤其是当信号源的能量较低时(可能是由于多次复杂化),而且错误的量化级别可以完全消除更高的精细的残留频率,从而引起条带化。

如果我们使用VMAF之类的指标来调整CAE算法,我们需要格外的小心地保留一定的比特率误差范围,或者通过重新训练VMAF来增加在此类问题情况下的敏感性 (也有其他的问题情况,比如在非常粗糙的噪点的情况下,主观质量会被低估而不是高估,但这样的问题会相对容易处理一些)。

我有充分的理由可以相信VMAF可能不是在所有情况下都是正确的选择,因为就连YouTube在2019年的Big Apple大会上也指出,VMAF往往不能正确识别出条带化的存在。

图1所示,VMAF高估了黑暗、平滑场景的质量

我可以假设这种行为可能是由于在VMAF中评估质量的方式所导致的,例如在距离是2.5 xH的情况下可能会降低敏感度,但在距离是1.5 xH的VMAF 4 k中仍然存在此问题,也许这是VMAF所使用的基本指标里的一个缺陷。

4K案例

让我们分析一个具体的案例。最近我主导了一个对SDR和HDR/HLG的4K内容的主观质量评估。VMAF4K没有针对HDR进行调整,因此我将只考虑SDR的情况。主观评估小组的目标是调整一个支持HDR内容的自定义的质量评估指标,然后将其应用于训练一个基于机器学习的并针对4K SDR/HDR视频流的CAE部署。

下图显示了面板中使用的黑暗场景。左边是原始版本,右边是严重压缩后的版本(点击图片可以放大)。

图2.源文件和压缩文件

图3,同图2,通过提升的gamma值来呈现在严重压缩版本上的失真

在图3中,你可以很容易地看到图像质量已经严重损坏。图片上充满了条纹,并且运动(显然在这里不可见)是受到了“橘子酱色”失真的影响。然而,VMAF报告的平均得分为81.8分(满分100分),相当于MOS中的4分(满分1至5分),这是高估了主观质量。

而主观评估小组(全球共60人,总共获取9000个以上的得分,1.5H的观看距离,使用50英寸4K显示器,DSIS方法)报告的MOS为3.2,在我看来仍然是很高的,而一个“黄金眼”小组的报告结果更为严重,是2.3。

从我们的研究中,我们发现,对于条带化失真评分的方差显著增加,可能是因为不同的个体视觉敏锐度和文化方面的差异(没有经过训练来识别特定人造品)所致。但是“黄金眼”们能很快就会发现视频的质量问题,并且也有很大一部分观众(在我们的例子中,58%的分数在3分或以下)会认为质量不够好,尤其是相对于4K的期望而言。

这是一个经典的在方差很大的情况下考虑均值的问题。VMAF还提供了一个置信区间,这对于做出更好的决策很有用,但是对于上述示例,它仍然预测了一个被高估了的“中心”,并且与MeanOpinionScore至少相差2 JND(更不用说“黄金眼”的分数了)。

下图中我们可以在一个SDR的子集中看到VMAF 4K与主观评价之间的相关性。红线界定区域下面的点表示VMAF高估了预测质量的内容。任何使用这种估计做出的决策都可能导致错误的决定并带来图像质量失真。

图4,MOS与VMAF 4K

仍有很长的路要走

VMAF并不是一个完美的工具,至少现在还不是。然而,它为在各种场景中方便地估计感知质量铺平了道路。我们可能应该做的是要考虑它的本质到底是什么:在通往准确和全面的质量评估的漫长旅程中,这是一个重要的“步骤”。

目前,如果VMAF在你的特定的场景中不准确,或者如果你需要其他类型的敏感性,可以将VMAF与其他数据结合在一起重新训练,更改/集成基本的度量指标,或者创建自己的度量标准来关注特定的需求(可能不那么通用,但在你的特定场景中会更准确)。你还可以使用类似ensemble的方法,将各种估计器混合使用以弥补它的缺陷。

我还看到了未来需要解决的其他问题:

-更好的时间掩蔽

-在时间和空间领域分数池化的不同方法

-在不同观测条件下的质量推断

作为最后的思考,我觉得YouTube的方法非常有趣。他们正在使用无参考指标来估计来源和编码视频的质量。无参考指标并不能衡量相对于源视频的质量退化,而是在当源视频无法获得的情况下,可用以衡量压缩视频的“绝对”质量。

我认为它们不仅在源视频不可访问(或检索和使用代价高昂)时可用于质量评估(比如监视现有的实时服务时一样),而且它们对于作为CAE算法的内部指标时也很有用。

实际上,如果可以节省带宽,现代的编码流程常常试图用“感知愉悦度”来换取对源的保真度。使用无参考指标(而不是全参考指标)就可以增进这种行为,类似于在超分辨率中所发生的情况,即DNN训练中从更传统的成本函数转变为GAN中的“对抗”成本函数。