写点什么

国际视频质量评估算法竞赛:火山引擎成功夺冠

用户头像
Geek_459987
关注
发布于: 11 小时前

7 月 26 日消息,在多媒体领域世界顶级学术会议 ICME 2021 的「压缩 UGC 视频质量评估」比赛中,字节跳动旗下火山引擎多媒体实验室组成的“QA-FTE”队伍,凭借自研的 VQScore 算法,拿下了该比赛「无参考视频质量评价(NR-VQA)MOS 赛道」的第一名。



除了火山引擎多媒体实验室,另有 11 支来自全球知名院校和企业的队伍参加该项竞赛。整场竞赛包含两个赛道,分别对应 VQA 领域两类主流的解决方法:

一、无参考视频质量评价(NR-VQA)MOS 赛道:在参考信息缺失的前提下对损伤视频质量进行评价;

二、全参考视频质量评价(FR-VQA)DMOS 赛道:衡量参考视频和损伤视频之间的质量差异。

除了在无参考视频质量评价(NR-VQA)MOS 赛道中包揽全部最高分之外,在全参考视频质量评价(FR-VQA)DMOS 赛道,火山引擎多媒体实验室同样拿下了部分指标的最高分。

什么是「压缩 UGC 视频质量评估」

视频质量评估,就是用算法模型来自动评判一段视频的质量,比如清不清晰、有没有噪点、画质好不好,给出高低不同的分数。视频质量的高低,直接影响到用户看视频的体验。

有了自动评估视频质量的算法模型,就可以在用户生产视频、系统处理视频的过程中自动的用一些手段来更好的处理视频。

比如评估发现一段视频分辨率太低让人看不清楚,就可以用超分辨率算法让它清晰起来;或者评估发现一段视频噪点太多,就可以用去噪算法减轻这些噪点。

比如发现视频本身已经很模糊了,就把转码的码率调低,节省系统带宽,也帮观看用户省点流量。

比如用户拍摄视频的时候发现当前场景是逆光的,人物五官都看不清楚,就可以提示用户:该调整下灯光和角度了。

可以理解为,视频质量评估就是一场视频们的「入学考试」,根据考试的分数,算法老师们因材施教,让每一段视频都看起来更美观。

但和传统的专业电视台拍摄的视频相比,给 UGC 的视频打分是更困难的一件事——毕竟在做视频这件事上,你没有办法低估网友们的脑洞。

比如 UGC 的视频里,包含用户拍摄的自然风景、食物、建筑、人像、动物等各种题材的内容,甚至有些不是自然拍摄,而是游戏录屏,并且还会加上五花八门的字幕。



比如有的视频本身并非竖屏视频,为了在移动端播放,就在上下加上背景填充。填充的图案其实是很清晰的色块,但中间的视频可不一定清晰,你不能因为两侧的填充图案看起来很清晰,就判断这个视频很清晰。



再比如这种大头特效,特效的部分很清晰,但特效之外的人物部分却有些模糊,这到底是算清晰还是不清晰?



另外,因为 UGC 拍摄有各种情况,用户手一抖,视频就变模糊,噪点、过曝、抖动、失真,各种问题交织在一起,算法很难评价。



火山引擎多媒体实验室研究出的算法 VQScore 就是专门做视频质量评分的,训练这个算法的数据集都是众包用户根据自己的审美和观看感受来评分的,能够保证算法的评分契合大部分普通观众的观看体验,此前已经有了 2 年多的积累。

目前,VQScore 系列视频质量评估算法不仅在抖音、西瓜视频等产品落地,并且已经作为火山引擎视频点播服务的一部分对外开放。

从用户出发,巧「拆」数据集

回顾整个参赛过程,火山引擎多媒体实验室也曾遇到过模型分数的瓶颈,无论怎么优化,都无法提升分数。

这里需要说明,整场比赛的数据集均来自一些视频 App 中的真实视频,包含:

训练集:6400 个训练视频片段

验证集:800 个验证视频片段

测试集:800 个测试视频片段,用于对参赛模型进行比较和评分,参赛者无法获取。

每个视频被 H.264/AVC 编码器压缩成损伤程度由弱到强的 7 个压缩片段,主办方通过主观测试针对每一支视频片段收集了超过 50 个主观 MOS 评分。

参赛者训练模型的数据必须来自比赛主办方的官方数据,不可以用自己的数据。数据就是训练模型的原材料,如果数据不足,那么算法工程师们常常会遇到巧妇难为无米之炊的难题,虽然不是「无米」,但「米」的数量并不够用。

怎么才能提升「米」的数量呢?

火山引擎多媒体实验室参赛同学决定直接挨个看数据集里的视频,看了很多样本之后发现了突破口:

原本的方法里,用到了很多时域信息——通俗来讲,就是随着视频时间进度条的进展,视频的每一帧之间都是有相关性的,视频的主角完成一个动作、场景发生一点变化,前后帧之间都是有联系的。

比赛数据集中的视频,大多只在短短的 10 秒左右,时域信息相当稳定,画质也没有明显变化。

因为对数据和用户都有深刻的理解,根据多年处理数据的经验,工程师们意识到一件事情:

用户其实对时域并不敏感,更注重每一帧里的画面信息——也就是空域信息

本着尊重用户体验的出发点,他们做出了一项更为务实的权衡:

把单个的视频数据集,拆成分散的帧来用。

在看重时域信息的方法中,数据集中的每个视频都被当做单独一个数据用来训练,总共 6400 个输入数据。但如果放弃时域信息,把每个 10 秒钟左右的训练视频拆成单独的帧,就可以获得 300 帧左右的数据,相当于训练算法的数据集增大到原来的 30 倍,6400 个输入数据就可以变成 192000 个。

并且这种新的方法还获得了一个额外的好处——避免了过拟合,也就是模型死记硬背了训练集里的答案,在测试集里表现失灵的情况。“时域信息用太多会过拟合,相当于我们牺牲了一小块,保留了更大的蛋糕。”

参赛模型的技术实现

火山引擎多媒体实验室在比赛中不仅使用了较为传统的 CNN(卷积神经网络),另外考虑到 Transformer 在 NLP 领域取得巨大成功,决定采用 Transformer 进行 UGC 视频的质量评估,提出了一种 CNN 和 Transformer 相结合的框架,采用 CNN 提取局部特征,利用 Transformer 结构通过自注意机制预测主观质量分数。



无参考模型框架如上图所示。

火山引擎多媒体实验室使用卷积神经网络(CNN)作为特征提取器来计算输入视频块的深度特征。提取 ResNet 不同层的特征,在空间维度上利用 MaxPooling 将这些特征降采样到相同大小,并在特征维度上进行拼接。将该特征的空间维度展平并进行 Linear projection,并添加 embedding 作为 Transformer 的输入:



采用的 Transformer 架构遵循标准的 Vision Transformer,包含 L 层多头注意力模块(MSA)和多层感知器模块(MLP)。Transformer 与 MLP 头连接,用于回归最终的主观评分。

用于训练的损失函数均方误差 l1-Loss 和 PLCC-Loss 加权相加构成:



PLCC 表示一个 batch 内预测值和 groudturthlabel 的相关性,其值归一化至[-1,1],PLCC 值越大性能越好,因此 PLCC 损失表示为:




全参考模型框架如下图所示。reference patch 和对应位置的 distortion patch 输入共享权值的孪生神经网络分别提取深度特征,并在特征空间的计算 L1 距离,拼接成新的特征输入回归模块映射得到主观 DMOS 分值。



如下图所示,在训练过程中,从压缩视频片段和相应的参考视频片段中随机裁剪出一个 256×256 的图像块 patch(针对 FR 框架),然后将压缩视频的质量评分直接作为裁剪 patch 的训练标签。测试时,从每一帧的四个角和中心裁剪得到 5 个大小为 256×256 的 patch 分别计算分值(FR 框架),所有 patch 的平均得分作为压缩视频的预测分。



在实验中,用于特征提取的 ResNet18 网络使用在 ImageNet 上预训练的用于分类任务的网络的权值进行初始化,并使用相同的学习率与框架的其他部分一起进行训练;Transformer 包含 2 层,MSA 头数为 16。在加权 w1=1.00, w2=0.02 的条件下,利用 L1 损失和 PLCC 损失联合优化框架。

通过对比竞赛结果中的各队伍在测试集上的性能指标(PLCC/SROCC/KROCC/RMSE)以及 SOTA FR/NR 算法预测质量分数散点图,对提出模型的性能进行验证,其中 PLCC/SRCC/KROCC 越接近 1 越好,RMSE 越接近 0 越好。

A. MOS track:



Comparing with SOTA NR-VQA metrics:





B. DMOS track:



Comparing with SOTA FR-VQA metrics:








对于直接预测压缩损伤视频 MOS 分的 NR 方法,火山引擎多媒体实验室提出的 NR 框架在所有评价指标中排名第一;对于预测参考视频和损伤视频质量差异 DMOS 分值的 FR 方法,火山引擎多媒体实验室提出的 FR 框架在预测单调性(即 SROCC 和 KROCC)方面排名第一,在预测精度(即 PLCC 和 RMSE)方面排名第二。 同时通过散点图可以看出,提出的方法与主观评分具有较高的相关性,显著超出了其他的 SOTA FR/NR 方法。

目前行业内,视频画质好坏直接影响实际业务 QoE,包括用户行为包括完播、留存、关注等,已经是不争的事实。由于模仿人类主观感受是一件非常困难的事,受到很多因素的干扰。而用户真实感知和学术上那些行业已有衡量体系(PSNR、SSIM、VMAF 等)仍有鸿沟包括他们彼此之间评价标准也不完全统一。

导致在视频工业生产中的需求,如扶持高清原创、打击视频劣质内容、针对画质精准匹配转码档位节省成本等,都没有很好的解决方案。基于以上原因,字节/火山引擎花大力气研发出 VQScore 用于解决这一现状,解决公司业务中的长期痛点,同时向工业界推出他们的无参考质量评价标准。

针对 UGC 内容的研究与实际应用场景更加贴近,UGC 质量评价算法对监控视频平台整体画质、监督画质提升算法、指导压缩效率提升等场景有重要作用。据悉,火山引擎多媒体实验室提出的 Transformer 结构实现了算法性能的提升,对后续相关算法研究具有较强的指导意义。

用户头像

Geek_459987

关注

还未添加个人签名 2020.10.16 加入

还未添加个人简介

评论

发布
暂无评论
国际视频质量评估算法竞赛:火山引擎成功夺冠