腾讯多媒体实验室:基于三维卷积神经网络的全参考视频质量评估算法

腾讯有多个视频业务线,点播视频有腾讯视频、企鹅影视,短视频有微视、K歌,直播类有Now直播、企鹅电竞,实时传输类有QQ和微信的音视频通话、无线投屏和腾讯会议等。

用户对不同的产品有不同程度的期待:比如理想网络环境下,能不能在27寸显示器上看到毛发清晰可见的高清视频?使用3G等弱网环境时,视频通话能不能保证画面不频繁卡死?

对业务提供方来说,所有问题都可以归结为一个目的:在不同的网络状况下,保证用户最佳的视频观看体验。在整个视频链路中,我们可以精确度量大部分模块,如采集、上传、预处理、转码和分发。我们最未知的部分却恰恰是最关键的部分,即用户的视频观看体验到底怎么样。

本文旨在介绍业界视频质量评估进展并提出一种基于三维卷积神经网络的全参考视频质量评估算法。

什么是视频质量评估 (VQA, Video Quality Assessment)

视频质量评估的目的是准确地衡量视频内容的人眼感知质量。不经压缩的源视频因为码率太大而不适合互联网传输。我们必须使用标准的编解码器,如H.264/AVCHEVC,或自研编解码器来编码进而降低码流大小。然而,视频压缩会不可避免的引入压缩失真。以H.264/AVC压缩为例,图1给出了一个压缩失真示例图。其中,白线左边对应未经压缩的原始画面,地面砖块上的纹理清晰可见,背景的蓝天颜色过渡自然。白线右边对应压缩过的低码率视频画面。可以明显的看到压缩失真,砖块纹理变得模糊不清,蓝天也因为块效应的原因出现了不自然的云条。

图1 H.264压缩失真截图。白线左边为高清源视频,白线右边为低码率压缩视频

在工业界和学术界,评估视频质量有两种常用方法:一是视频质量主观实验,二是视频质量客观算法。两种方法有各自的适用场景和局限性。

通过主观实验我们能精确衡量视频质量。在某些核心问题上,如codec性能比较,我们仍需要通过主观实验来得到确切的答案。同时,主观实验打分数据通常会用作验证客观质量评估算法性能的Ground Truth。完整的主观实验流程一般包含:1)选取有代表性的源视频、2)添加待衡量的视频处理方案、3)按照ITU标准设计主观实验、4)招募志愿者观看视频并打分、5)收集主观打分并剔除无效数据、6)数据建模并抛出实验结论。ITU有一些列标准来指导如何做主观实验,如ITU-T P910 [2], ITU-R BT.2020 [3]等,本文不做展开。

很显然,主观实验是一个周期长,费时费力的过程。诉诸主观打分来验证所有视频质量需求是不可行的。好在我们可以使用客观质量评估算法来模拟主观打分,进而实现视频质量评估。然而,开发准确而快速的客观质量评估算法仍然是一项有挑战性的工作。

传统VQA算法不能有效的使用视频的运动信息

客观视频质量评估算法只需要计算视频的质量分数。从工业界的角度来看,经典的客观算法有PSNRSSIM [4]MS-SSIM [5],这些算法基于经典的信号保真度来判断失真视频与无损视频源的差异,再根据差异大小拟合出视频感知质量。近期的算法有VQM [6],从多个维度提取时空联合特征去逼近主观质量。目前的主流算法有VMAF [7],使用机器学习方法对多个图像质量客观算法进行融合。借助于融合的思想,VMAF能够灵活的加入新的客观算法。另一方面,通过使用新的数据集来重新训练,VMAF也可以方便的迁移到细分维度的视频质量评估任务。

图像质量评估主要是衡量画面内失真在画面掩盖效应影响下的可感知程度。而视频质量评估不仅仅取决于画面内的失真,也包含时域内的失真和时域掩盖效应。这里掩盖效应可简单理解为背景的复杂程度。如果背景较复杂,我们称之为较强的掩盖效应,反之亦然。举个例子,图一中滑板处于快速运动的状态,掩盖效应较强,所以滑板区域的失真更难察觉。而背景中蓝天部门是大片的光滑区域,掩盖效应较弱,细微的压缩失真也能容易察觉到。因此,在开发一个客观视频质量评估算法中,我们必须把视频固有的运动信息考虑进来。

在学术界,有很多相应的策略被提出。最常用对做法是提取两种特征,一种特征去描述画面质量,另一种特征去描述视频运动的大小。比较主流的运动特征包含:TI (Temporal Information) 运动向量 (Motion Vector) 光流 (Optical Flow) 等。这种做法最大的缺陷是完全剥离了画面信息和运动信息,视频不再被当作三维数据来处理,而是二维数据加一维数据来处理。

为了解决上述问题,另外一种比较直观的方法是对视频进行三维切片 [8]。如图2所示,我们使用(x, y, t)来标记空域和时域轴。这里切片如果与时间轴垂直,即(x, y)方向,那么切出来的就是传统意义上的视频帧;如果与时间轴平行,即(x, t)  (y, t)方向,我们就得到了时空联合的二维切片。在某种程度上,后两个切片包含了运动信息。对以上三种切片使用图像质量评估算法,再把切片分数融合起来,就能取得不错的质量提升。尽管如此,三维切片还是没有最大程度的使用运动信息。

图2. 三维空间内视频切片示意图

有不少图片质量评估算法是基于经典的DCT或小波变换,再从变换系数中提取特征向量。对视频而言,一种比较直观的拓展就是使用三维变换,如三维DCT变换,三维小波变换等。经过三维变换后,我们从变换系数中进一步提取特征来而做质量评估。这种方法保留了视频的时空联合信息,但是三维变换会引入复杂度过高的问题。

使用三维卷积神经网络来学习视频的时空联合特征 (C3D, Convolutional 3D Neural Network)

近年来深度学习在多个计算机视觉图片任务中取得了瞩目的成就。同时也有学者把二维神经网络扩展到三维神经网络来更好的处理视频任务 [9]。我们尝试使用三维卷积神经网络来学习时空特征并把它用到视频质量任务中。我们先给出基本的二维和三维卷积模块,再进一步介绍所提出的网络结构。

图3a给出了二维卷积核在二维输入上的卷积操作。为了避免歧义,我们假设是对二维图像进行卷积操作。其中输入图像大小为HxW,卷积核大小为kxk,图像时域深度和卷积核时域深度均为1。经过卷积运算输出仍为二维。输入输出均不包含任何运动信息。

图3b给出了二维卷积核在三维输入上的卷积操作。我们可以假设输入为一个画面大小为HxW,包含L帧的视频。这里卷积核的深度不再是1,而是跟视频帧数相同。经过卷积操作,输出仍为二维,且与图3a的输出大小相同。这种卷积操作有利用到视频前后帧的运动信息,但是只用一步卷积就把所有运动信息给吃掉了。

图3c给出了三维卷积核在三维输入上的卷积操作。与图3b相比,这里卷积核的深度为d,且d小于L。经过三维卷积操作,输出仍为三维。当d=1时,等价为图3a的卷积操作对视频帧进行逐帧处理,但是并没有利用到前后帧的运动信息。当d=L时,它的效果等同于图3b。所以当d小于L时,三维卷积能更可控的利用运动信息。如果我们想让运动信息消失的快一些,就调大三维卷积的深度d。相反,使用小一些的d能更缓慢的提取运动信息。

图3. 二维与三维卷积操作示意图

 

在此基础上,我们设计了自己的视频质量评估算法C3DVQA。其核心思想是使用三维卷积来学习时空联合特征,进而更好的去刻画视频质量。

图4给出了我们所提出的网络结构图,其输入为损伤视频和残差视频。网络包含两层二维卷积来逐帧提取空域特征。经级联后,空域特征仍保留前后帧的时许关系。网络接着使用四层三维卷积层来学习时空联合特征。在这里,三维卷积输出描述了视频的时空掩盖效应,而且我们使用它来模拟人眼对视频残差的感知情况:掩盖效应弱的地方,残差更容易被感知;掩盖效应强的地方,复杂的背景更能掩盖画面失真。

网络最后是池化层和全连接层。池化层的输入为残差帧经掩盖效应处理后的结果,它代表了人眼可感知残差。全连接层学习整体感知质量和目标质量分数区间的非线性回归关系。

图4. 本文所提出的网络结构图。包含两层二维卷积,四层三维卷积,池化和全连接层。卷积参数表示:(channel,kernel size,stride, padding)

结果

我们在LIVE CSIQ 两个视频质量数据集上对所提出算法的性能进行验证。LIVE数据库包含10个参考视频和对应每个参考视频的15个失真视频。CSIQ数据集包含12个源视频和相对应的18个失真视频。我们使用标准的PLCCSROCC作为质量准则来比较不同算法的性能。

因为这两个数据库相对较小,我们参考另外一片深度学习文章 [10] 的做法,每次随机抽取80%的参考视频和由它们所得到的失真视频作为测试集。我们重复了20次这样的数据集划分并且每次都从头开始训练模型。具体质量评估的散点图如图5所示。

图5. 质量估计结果散点图,每一个点代表一个待测视频。其中Y轴为估计视频质量,X轴为主观打分结果,左图为LIVE上测试结果,右图为CSIQ上测试结果。

我们与常用的全参考质量评估算法进行了对比,比较的算法包括PSNR,MOVIE [11]ST-MAD [12]VMAFDeepVQA [10]。每次测试都会得到一个PLCCSROCC,下表中我们使用多次实验结果的中值来代表最终性能。

我们可以清楚的看到本文所设计的算法C3DVQA在两个数据库上均大幅领先PSNRMOVIEST-MADVMAF等传统算法。值得一提的是DeepVQA也是一个基于深度学习的算法,也取得了不错的性能。我们把这些性能提提升归结为两方面的原因,1)使用CNN来学习质量相关特征要优于传统的特征提取算法;2DeepVQAC3DVQA均学习视频的时空联合特征,显性的利用运动信息更能刻画视频质量。

 

表1. LIVE和CSIQ两个数据库上不同全参考算法性能比较

总结

本文简要回顾了目前学术界和工业界视频质量评估方向的发展状况。出于复杂度考虑,工业界仍倾向于使用复杂度较低的基于图像质量评估的方案。但是这样做的缺陷就是不能不能把视频作为一个整体来学习时空特性,尽管结果差强人意,也算是性能与复杂度很好的折中。

我们提出了一种基于三维卷积神经网络的全参考算法。通过学习视频的时空联合特征,能更好的解决运动信息丢失问题。相对于传统特征提取算法,我们的算法能大幅度的提升准确度。

当然,这一切才刚刚开始,还有很多工作需要补充。我们想要详细的复杂度分析,特别是在没有GPU可用的场景。我们也想知道所训练的算法在其它数据库上的性能,而且不仅仅局限于PGC视频,也包括UGC视频。

好消息是我们有计划对业界开源模型训练代码,这样能方便所有人去使用自己的数据库训练测试特定视频业务场景。同时,我们也欢迎任何形式的协同开发,不管是贡献数据库,还是贡献预训练模型,甚至是抛出业务场景中所遇到的问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/519811.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 QuickBI 搭建酷炫可视化分析

随着各行各业大数据的渗透,BI 类数据分析需求与日俱增,如何让可视化更好的展现数据的价值,是 BI 类产品一直努力的方向。对此国内外的BI产品都有自己的方法,如国外大牌的 PowerBI、Tableau,还有国内的 FineBI、BDP、Qu…

深度学习原来还可以这么学!

最近身边很多朋友在讨论人工智能,讨论人工智能在我们生活中的应用,随之而来就开始讨论深度学习技术,但是由于深度学习的涉及面比较广,对数学的要求比较高,所以想学也不太敢学,生怕认真学了却没学会。其实可…

spring-security登录和权限管理

spring security spring security 主要的两个功能是认证和授权 认证的大概流程: Username password AuthenticationFilter(自定义usernamepassword拦截器) UserDetailService (查询用户密码的service接口) Userdetail…

官宣!阿里Blink和Flink合并计划出炉

apache已公开合并计划,点击可阅读原文《Batch as a Special Case of Streaming and Alibabas contribution of Blink》,由AI前线进行了翻译。 **春节前一周,经过社区内部讨论,阿里巴巴大数据引擎 Blink 作为 Flink 的分支 正式开源…

第四章、项目整合管理【PMP】

文章目录1. 简介2. 项目整合管理涉及的方面3. 项目整合管理的过程包括2. 制定项目章程3. 制定项目章程:输入4. 制定项目管理计划5. 指导和管理项目工作6. 管理项目知识7. 监督项目工作8. 监控项目工作9. 实施整体变更控制10. 结束项目或阶段1. 简介 项目整合管理是…

龙芯新款处理器发布;Citrix 产品曝“惊天漏洞”,影响全球 8 万家公司; AMD发布年度5大里程碑 ……...

关注并标星星CSDN云计算 速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周两次,打卡即read更快、更全了解泛云圈精彩newsgo go go铠侠(东芝)开发新型闪存&a…

开源SQL-on-Hadoop系统一览

引言 查询分析是大数据要解决的核心问题之一,而SQL作为查询分析中使用最简单、最广泛的的语言之一,必然而然的催生了许多支持在Hadoop上使用SQL的系统,这就是所谓的SQL-on-Hadoop系统,其中大众熟知的Hive就是最早的SQL-on-Hadoop…

PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法

PL/SQL查询时,如果Number(17)以上的大数,会显示为科学计数法 解决方法: TOOLS->PREFERENCES->WINDOW TYPE->SQL WINDOW下选中Number fields to_char即可。

虎牙直播在微服务改造方面的实践和总结

相比文字和图片,直播提供了人与人之间更丰富的沟通形式,其对平台稳定性的考验很大,那么倡导“以技术驱动娱乐”的虎牙直播(以下简称“虎牙”)是如何在技术上赋能娱乐,本文将为您介绍虎牙在DNS、服务注册、C…

区块链人才缺口明年将达顶峰,核心开发者年入百万很正常

区块链技术一直备受争议,庞氏骗局、泡沫明显、去中心化无意义,技术无法真正建立信任、区块链技术并不能真正履行货币职能、比特币矿机耗电量大、浪费资源等等。2018年,加密货币市场总价值损失超过80%,链圈就此进入阴影。区块链技术…

阿里云移动端播放器高级功能---截图和音频波形

基本介绍 如果用户对视频播放中的某一帧画面特别感兴趣,可以使用截图功能将这一帧视频保存起来。另外有一种场景想知道是否有声音,或者想感知声音的大小震动频率等,可以通过显示一个声音的波形来形象的表示。如下图所示: 那么播放…

AES和RSA前后端加解密

先了解AES和RSA加密算法 AES算法 1、运算速度快,在有反馈模式、无反馈模式的软硬件中,Rijndael都表现出非常好的性能。 2、对内存的需求非常低,适合于受限环境。 3、Rijndael 是一个分组迭代密码, 分组长度和密钥长度设计灵活。 4、AES标…

PMBOK第六版最新十大大知识领域ITTO思维导图-干货!

PMBOK学习过程中,ITTO(输入、工具、技术、输出)是每年必考的内容,掌握ITTO的脉络,对学习和梳理PMP非常有帮助。知道这个过程要做什么,为什么做,做完有什么成果。也是项目经理必备的技能之一。 …

这个情人节,工程师用阿里云来试着表达不一样的爱意

年轻的时候谈的恋爱就像TCP链接,恋爱时三次握手即可,可分手时却分了四次。而常常久久的爱情,更像是icmp协议,无论对方身在何处,无论是否是可靠连接,无论你何时去ping她/他,她/他都默默地响应你。…

云+X案例展 | 金融类:金山云为新网银行重塑金融服务提供云计算动力

本案例由金山云投递并参与评选,CSDN云计算独家全网首发;更多关于【云X 案例征集】的相关信息,点击了解详情丨挖掘展现更多优秀案例,为不同行业领域带来启迪,进而推动整个“云行业”的健康发展。作为国内第三家、中西部…

对于AES和RSA算法的结合使用以及MD5加盐注册登录时的密码加密

RSA和AES结合使用 接上篇的RSA和AES算法加密之后,AES对称算法对数据量大的加密比较快,而RSA公私钥加密的话会影响加密效率,但是AES的加密与解密的密钥是一致的,导致密钥不能外泄,密钥在网络传输过程中,很有…

Unity人物移动的几种方法

Unity人物移动的几种方法 方法一:transform.Translate世界坐标系移动自身移动的案例 方法二:CharacterController.Move(vector dir)按照世界坐标轴移动按照自身坐标轴移动 方法三:CharacterController.SimpleMove&…

可应用于实际的14个NLP突破性研究成果(四)

可应用于实际的14个NLP突破性研究成果(一) 可应用于实际的14个NLP突破性研究成果(二) 可应用于实际的14个NLP突破性研究成果(三) 11.对序列建模的通用卷积和递归网络的实证评估作者:SHAOJIE …

量子通信,到底是什么工作原理?

戳蓝字“CSDN云计算”关注我们哦!作者 | 小枣君责编 | 阿秃今天,小枣君要和大家聊的是“量子通信”。最开始计划写这个专题的时候,小枣君的内心是很纠结的。鲜枣课堂的目的,就是传递“普通人都能听懂”的知识。每一个知识点专题&a…

图(关系网络)数据分析及阿里应用

2019年1月18日,由阿里巴巴MaxCompute开发者社区和阿里云栖社区联合主办的“阿里云栖开发者沙龙大数据技术专场”走近北京联合大学,本次技术沙龙上,阿里巴巴资深技术专家钱正平为大家分享了大数据技术背景下图数据的应用前景,以及阿…