本文依据 Pranav Sodhani 在 WWDC 2021《Evaluate videos with the Advanced Video Quality Tool》主题分享翻译。Pranav Sodhani,来自 Apple 显示和色调技术团队,在算法开发、机器学习、色调迷信和视频技术方面具备业余的常识。译者陶金亮,网易云信资深音视频开发工程师,领有多年端侧音视频工作教训。
本文次要分享高级视频品质工具 (AVQT) 是如何帮忙咱们精确评估压缩视频文件的感知品质。利用 AVFoundation 框架,AVQT 反对 SDR 和 HDR 域中的各种视频格式、编解码器、分辨率和帧速率,从而实现简略高效的工作流程——例如,无需解码为原始像素格局等。AVQT 应用 Metal,将沉重的像素级计算下沉到 GPU 来实现高处理速度,通常用于剖析超过实时视频帧速率的视频。凭借优良的易用性和计算效率,AVQT 能够实现从视频目录中删除低质量视频,免得它们以其余形式影响应用程序中的用户。
应用背景
在本次演讲中,咱们将介绍一种视频品质工具——AVQT(Advanced Video Quality Tool),并展现如何应用它来评估利用或内容创立工作流程中压缩视频的感知品质。让咱们从典型的视频交付工作流程开始。
在这样的工作流程中,高质量的源视频通过视频压缩和可选的视频缩减以生成具备较低比特率的视频。而后能够通过带宽受限的网络轻松传送这些低比特率视频。
应用此类工作流的几种办法包含 AVFoundation API(例如 AVAssetWriter)、应用程序(例如 Compressor),它也能够是您本人的视频压缩工作流之一。
常见的放大和压缩原始视频会导致视频含糊。这会导致源视频主观品质降落,并产生可见的不清晰。这种不清晰的一个例子是压缩视频中的块状效应,如右侧的帧所示。
另一个例子是当视频看起来含糊并且视频细节开始隐没时,这种伪影会对消费者的视频品质体验产生不利影响。咱们都晓得,消费者期待高质量的视频体验。因而,实现这一性能十分重要。
当初,执行此操作的第一步是 评估所交付内容的品质。最精确的办法是让真人观看视频并依据视频品质等级对其进行评分。但如果咱们想评估大量视频,这十分耗时且不可扩大。这里咱们能够抉择另一种表征视频品质的主观办法,以便咱们能够自动化该过程以进步速度和可扩展性。
在这样的设置中,感知视频品质工具将压缩视频和源视频作为输出并输入视频品质分数,该分数能够是 1 到 5 范畴内的浮点数,并模仿实在的人对压缩视频的评分。
AVQT 是什么?
明天,咱们很快乐能够为开发人员提供这样一个感知视频品质工具——高级视频品质工具 Advanced Video Quality Tool,简称 AVQT,上面让咱们理解更多对于 AVQT 的信息。
那么 AVQT 到底是什么?AVQT 是为 macOS 命令行提供的可执行文件,它试图模拟实在的人们是如何评估压缩视频的品质的。咱们能够应用 AVQT 来计算帧级别和段级别分数,其中段通常有几秒钟长。当然,咱们还在 AVQT 中增加了对所有基于 AVFoundation 视频格式的反对,包含 SDR 以及 HDR 等视频格式,如 HDR10、HLG 和杜比视界。
AVQT 的三大个性
接下来,咱们要探讨 AVQT 的三个要害属性,这些属性使其在跨应用程序中十分有用。首先,咱们将看到 主观感知一致性,而后咱们将探讨 AVQT 的 计算速度迅速 ,最初将展现为什么在预测视频品质时 设置观看参数 很重要。让咱们具体理解其中的每一个。
主观感知一致性
AVQT 与人类对视频品质的认识密切相关,它实用于各种内容的类型,例如动画、天然场景或体育等。咱们发现,传统的视频质量指标,如 PSNR 和构造相似性(简称 SSIM),通常在不同的内容类型中不能都对立主观地评估。
让咱们看一个例子。
这是来自高质量体育剪辑的帧,是咱们的第一个源视频。让咱们看看压缩视频中的同一帧,能够看到该帧的确具备足够高的感知品质,它的 PSNR 得分约为 35,AVQT 得分为 4.4。
接下来,咱们对第二个源视频进行雷同的测试。这种状况下的压缩视频仿佛有可见的伪影,特地是,咱们能够在人脸看到一些伪影。然而,乏味的是,它取得了大概 35 与上个视频雷同 PSNR 分数,但这次 AVQT 将其评为 2.5 左右,这意味着品质很差。咱们认为这里的 AVQT 分数是正确的预测。但这只是咱们抉择的一个示例,阐明跨内容评估中可能呈现的问题。
咱们想在不同的视频集上测试 AVQT 的感知准确性。因而,咱们在公开可用的视频品质数据集上对其进行了评估。这些数据集包含源视频、压缩视频和人类受试者提供的视频品质分数。
在这里,咱们看一下两个数据集的后果:Waterloo IVC 4K 和 VQEG HD3:
- Waterloo IVC 数据集:包含 20 个源视频和 480 个压缩视频,涵盖编码和缩放工件,它涵盖四种不同的视频分辨率和两种不同的视频规范。
- VQEG HD3 数据集:绝对较小,它有 9 个源视频和 72 个压缩视频,这些是应用 1080p 视频分辨率的视频编码生成的。
为了主观地掂量视频质量指标的性能,咱们应用了 Person 相关系数和 RMSE 间隔度量:
- Pearson 相关系数,或简称 PCC,掂量预测分数与主观分数的相干水平,更高的 PCC 值意味着更好的相关性。
- RMSE 掂量预测与主观分数的差距,较低的 RMSE 值意味着较高的预测精度。
当初,咱们要评估 AVQT 对人类受试者给出的分数的预测能力。如下图,x 轴上是实在的主观视频品质分数,y 轴上是 AVQT 预测的分数,每个点都代表一个压缩视频。
从散点图中能够看出,除了多数异样值外,AVQT 在预测该数据集的主观分数方面做得很好,这也反映在高 PCC 和低 RMSE 分数上。咱们在 VQEG HD3 数据集上也看到了高性能。
计算速度迅速
让咱们持续探讨 AVQT 的计算速度。咱们都晓得,高计算速度对于确保可扩展性十分重要。AVQT 的算法通过设计和优化,能够在 Metal 上疾速运行,这让咱们能够十分疾速地浏览大型视频文件。同时,它还负责本地解决所有预处理,使得咱们不用解码视频并离线缩放它们。AVQT 能够以每秒 175 帧的速度运行 1080p 视频。因而,如果咱们有时长 10 分钟、24 Hz 1080p 的视频,AVQT 能够在 1.5 分钟内计算其品质。
设置观看参数
咱们要探讨的最初一个属性是设置观看参数。咱们对视频的观看设置会影响咱们在观看视频时感知到的视频品质,特地是,显示尺寸、显示分辨率和观看间隔 等因素可能会覆盖或夸张视频中的伪影。
为了解决这个问题,AVQT 将这些参数作为工具输出,而后随着这些参数的变动尝试预测正确的趋势。咱们来看一个这样的案例,思考两种状况:
在场景 A 中,咱们在 4K 显示器上以 1.5 倍屏幕高度的观看间隔观看 4K 视频。在场景 B 中,咱们在同一显示器上观看雷同的视频,但当初的观看间隔是屏幕高度的三倍。显然,在场景 B 中,咱们会错过一些在您仔细观察时可见的细节。这意味着咱们在场景 B 中感知到的视频品质将高于场景 A。能够通过 AVQT 计算因为观看间隔导致的最终不同品质程度视频的得分,从而反映出某种变化趋势。
如上图显示,随着观看间隔从 1.5H 减少到 3H,AVQT 分数也会减少。如果想要理解更多的技术细节,能够查看该工具提供的 README 文档。
既然大家都对 AVQT 感到兴奋,那么让咱们看看该如何正确应用该工具。咱们将很快通过苹果开发者门户(https://developer.apple.com/)向所有人提供 AVQT。
咱们先来看一个操作演示。首先,我曾经下载了 AVQT 并在零碎上实现了装置,查看“which AVQT”,即可看到 AVQT 被搁置在 usr/local/bin 目录中。当初,咱们能够调用 AVQT,帮忙命令来浏览无关 AVQT 反对的不同标记的用法以及其余更多信息。
当前目录中有一个示例参考和一个示例压缩视频,我通过它们来运行 AVQT。咱们将提供参考和测试的文件作为输出并指定一个输入文件,将输入文件命名为 sample_output.csv。该工具会在屏幕上打印进度并报告分段分数。默认片段持续时间为 6 秒,因为此片段长 5 秒,因而咱们只有一个片段。接下来,看看输入文件,在此处能够查看帧级别分数。最初,咱们将细分级别的分数放在底部。
除了演示时候展现的选项外,该工具还内置了一些其余性能。
例如,咱们能够应用 segment-duration 和 temporal-pooling 标记来更改聚合帧级分数的形式。同样,也能够应用查看间隔和显示分辨率标记指定查看设置。
请参阅自述文件以获取更多详细信息。到目前为止,咱们曾经理解了 AVQT 的一些要害属性,也演示了如何在一对视频上应用命令行工具来生成视频品质分数。
AVQT 的应用案例
当初让咱们看一个特定的案例,咱们能够应用 AVQT 来优化 HLS 的比特率。
HLS(是由苹果公司提出基于 HTTP 的流媒体网络传输协定)层以不同的比特率进行编码。咱们晓得抉择这些比特率并不总是一个简略的过程。
为了帮忙解决这个问题,咱们在 HLS 创作标准文档中公布了一些比特率指南。这些比特率只是通过 HLS 交付典型内容的初始编码指标。咱们也晓得不同的内容具备不同的编码复杂度,这意味着最佳比特率因不同的内容而异。
因而,实用于一种类型的内容,例如:动画电影的比特率可能不适用于体育赛事。
上面来看看如何应用 AVQT 作为反馈,来帮忙咱们确定内容的最佳比特率。首先,咱们从初始指标比特率开始,应用这个比特率来编码咱们的源视频并创立 HLS 层。而后,咱们通过源视频和编码的 HLS 层应用 AVQT 计算视频品质分数。最初,咱们能够剖析 AVQT 分数来决定是要减少还是缩小 HLS 层的指标比特率。
为了演示这一点,咱们抉择一个特定的 HLS 层。在这里,咱们抉择每秒 11.6 M 的 2160p 分辨率的视频。而后,咱们将应用举荐的比特率对前两个序列:动画和体育进行编码。在咱们筹备好编码层后,就应用 AVQT 来计算它们的视频品质分数。
下图显示了两个视频序列的 AVQT 分数。对于这一特定层,咱们想要失去高视频品质,因而咱们将阈值设置为 4.5,示意靠近优良的品质。能够看到,尽管这个比特率对于这个动画剪辑来说曾经足够了,但对于体育剪辑来说还不够。
因而,咱们返回并应用此反馈来调整咱们的比特率指标,须要进步体育剪辑的比特率指标并从新计算其 AVQT 分数。
咱们的指标是将比特率进步 10%。在这里,咱们绘制了体育剪辑的新 AVQT 分数,更新后的分数当初高于咱们预期的四分半阈值,并且它也更靠近于动画内容的视频品质。
最初,咱们心愿演讲能够通知大家一点:视频压缩会导致可见的伪像,从而影响消费者的视频品质体验。
咱们能够应用 AVQT 评估压缩视频的品质。AVQT 作为 macOS 命令行工具提供,计算速度快并且能够设置观看参数,它还反对所有基于 AVFoundation 的视频格式,也能够应用 AVQT 来优化 HLS 层的视频品质。
总结
以上就是本次 Pranav Sodhani 在 WWDC 2021 大会上分享的全部内容译文,若有翻译不合理处,欢送斧正交换。
目前网易云信全平台实现的超分性能,刚好能够应用 AVQT 来评测超分之后的主观图像品质,也欢送大家来应用最新的 SDK 来体验咱们的超分性能。
作者介绍
Pranav Sodhani,来自 Apple 显示和色调技术团队。Pranav 在算法开发、机器学习、色调迷信和视频技术方面具备业余的常识。他于 2017 年从加州大学洛杉矶分校 (UCLA)取得计算机科学硕士学位,并于 2015 年从印度理工学院古瓦哈提(IIT G) 取得电气工程学士学位。在加拿大和韩国大学进行钻研,在国内机器学习会议上发表过论文。取得多项奖学金和奖项,包含 O.P. Jindal 工程与治理奖学金 (OPJEMS)、Mitacs Globalink 奖、第四届国内数学奥林匹克比赛金牌得主。同时他也是“Haha Reacts Only – Pranav Sodhani 原创笑话集”的作者,于 2018 年出版,面向印度观众。
- 分享实录视频:https://developer.apple.com/videos/play/wwdc2021/10145/
- 参考文档:https://www.its.bldrdoc.gov/vqeg/vqeg-home.aspx
更多技术干货,欢送关注【网易智企技术 +】微信公众号