编者按:本文是“破解色带现象”文章的第二部分,Fabio Sonnati进一步 分析了色带现象产生的原因,并提供了新的检测办法。本文已获得作者授权转载。
翻译:Argus
原文链接:https://sonnati.wordpress.com/2022/09/16/defeat-banding-part-ii/
最近,色带终于成为编码优化的热门话题。正如上一篇文章中所讨论的,它现在是编码专家最大的敌人之一,尤其是在尝试微调内容感知编码[CAE]技术时。
当压缩在帧上局部减少过多的高频时会出现色带,这会在单个纯色条带中分离渐变。因此,这些条带很容易看到并降低了感知质量。
多年来,我一直强调,即使像 VMAF 这样有用的指标也无法有效地识别条带,我们需要更具体的指标或像 VMAF 这样的指标,但对画面的黑暗或平坦部分的伪影很敏感,希望是一个无参考指标,可用于源文件以及压缩后的指标评估。
图 1 – 在带状序列的情况下,VMAF 和 MOS 之间缺乏相关性(来源:Netflix)
正如上一篇文章所预期的那样,我在2020年开始实验一些关于衡量带状的指标的PoC,第二年我验证了这个逻辑在我的一个客户那里的工作,即 "带状指数 "指标。为了简单起见,我把它叫做bIndex。
重要的是目前Netflix也在研究带状物,并提出(2021年10月)他们的带状物检测指标Cambi。Cambi是一个基于像素分析和阈值处理的一致的无参考带状检测器,加上许多优化有夯实和准确的带状识别率。
我所使用的逻辑与Cambi非常不同,它不仅可以用来识别带状物,还可以使用我所说的 "自动相似性 "原则识别许多类型的损伤。
来源受损的相似性的逻辑
我探索的逻辑如下图所示:
图2 - 自动相似性原则
当一个源视频受到损失,会引发拥塞、带状、振铃、过度量化和类似的伪影现象。
如果一个视频的受损版本仍然与无损的自身内容相似,则意味着原始视频已经有了一定程度的这种损伤。这个程度与相似度指数成反比。
我称其为 "来源受损的相似性 "或有时为 "自动相似性",因为视频是与自身以及注入的、受控的、已知的损伤进行比较。这种损害需要是一次性的,而不是累积性的。让我更好地解释一下。
对于一次性损伤,我指的是只在第一次应用时产生效果的修改。例如:一个从颜色到灰色的过滤器就有这样的特点,如果你第二次应用它,结果就不会再有变化。
现在我们要选择的东西是:减损过滤器和相似度量。
因此,假设我们想找到视频的一部分是否有带状或过多的量化伪影,在这种情况下,我们可以使用频域量化作为减损。这种形式的减损具有上述特点:当多次应用时,只有第一次应用会产生失真,接下来的应用不会修改已经用已知量化水平量化过的图像。
最常用的相似性指标是SSIM。当视频完全相同时,它的最大值为1,而当出现不相似时,它将低于1。它比PSNR更具有感知性,而且只要平均值、方差和协方差等统计指标相似,就对小的差异不敏感。
将视频分成小部分而不是整体进行分析是非常重要的,特别是在度量的微调过程中,可以更好地理解如何设置阈值并验证伪影的正确识别。然后可以计算 "区域覆盖率",提供关于被测试的伪影(带状或其他)影响的帧范围的有趣信息。
下面的高水平图示说明了指标的计算。衡量标准的微调需要其他处理,如预设条件(这可能有助于提高人工质量),适当阐述SSIM值以只保留所需信息(非线性映射和阈值),最后汇总数据以总结(汇集)每帧的重要指数。
图3 - 提取bIndex的情况
结论
为了开发、验证和微调bIndex指标,我扩展了我过去开发的一个自定义播放器,用于逐帧和并排比较。在下面的图片中,你可以看到每一帧区域的指数,当带状物不可见时为绿色,当带状物可见且令人讨厌时为红色。第一张图片还显示了一个叠加的、可寻找的时间线,该时间线绘制了每个图片区域的条带化程度以及区分不相关条带和可见恼人条带的阈值。通过这种方式,可以快速寻找含有带状物的帧序列并评估检测的正确性。
这种方法可以扩展到许多类型的人工制品,并用于评估各种类型的视频(来源、夹层、压缩视频)的不同阈值。拥有来自帧覆盖率的统计指标也有助于做出决定,如拒绝信号源或用特定的配置文件重新编码内容来解决问题。请注意,目前的阈值是通过黄金眼对大屏幕感知来确定的,但在未来更复杂的建模可以用来将客观数字与感知相关联,并引入其他改进,如时间掩码和上下文感知的带状估计。