CVPR 2023|淘宝视频质量评价算法被顶会收录
近日,阿里巴巴大淘宝技术题为《MD-VQA: Multi-Dimensional Quality Assessment for UGC Live Videos》—— 适用于无参考视频质量评价的最新研究成果被计算机视觉领域顶级会议IEEE/CVF Computer Vision and Pattern Recognition Conference 2023(CVPR 2023)成功收录。
CVPR是由IEEE/CVF主办的计算机视觉领域的顶级学术会议,也是中国计算机协会CCF推荐的A类学术会议。该会议每年在世界范围内召开一次,其收录的论文涵盖了图像和视频领域的创新技术和重大成果,是相关领域学术研究与行业发展的风向标。CVPR 2023共收到创纪录的9,155篇投稿(相比2022提升12%),其中有2,360篇论文被接收,接收率为25.78%。此篇被收录论文属于视频质量评价领域,由大淘宝技术和上海交通大学合作完成(共同一作)。
在淘宝,每天有亿级的User-Generated Content (UGC) 等非传统广电视频(包括但不限于短视频、直播等)被生产或播放,其存在明确的无参考视频质量评价的需求,用以对视频质量进行实时监控,确保用户体验。因此,大淘宝音视频技术团队自研了一种针对UGC视频的无参考视频质量评价模型 —— MD-VQA(Multi-Dimensional Video Quality Assessment),综合视频的语义、失真、运动等多维度信息,来衡量视频绝对质量的高低。MD-VQA已经全面应用于包括淘宝直播、逛逛在内的大淘宝视频相关业务,“量化”画质,有效地反应技术迭代带来的体验提升,为大淘宝视频体验提供画质保障。
背景
随着互联网视频化的深入,越来越多的UGC等非传统广电视频(包括但不限于短视频、直播等)在互联网平台上被生产或播放。手淘内容化与互联网内容化的趋势契合,而平台亦希望能够在成本可控的前提下保障尽可能好的视频画质,视频质量评价指标在其中发挥关键作用。相比传统广电视频更多地使用有参考视频质量评价指标,也即要求使用近似无损的源视频作为参考,UGC视频源质量不可控,无法作为理想的无损源,因此无参考视频质量评价方法在短视频和直播视频的评价方面更具备实用价值。
大淘宝音视频技术团队基于淘宝直播、逛逛等内容业务,构建了大规模UGC视频质量评价数据集 —— TaoLive,包含3,762个视频,覆盖不同的内容、失真、和质量,并通过专业的主观标注,获取165,528个视频的主观质量标签。在此之上,大淘宝音视频技术团队自研了一种针对UGC视频的无参考视频质量评价模型 ——MD-VQA(Multi-Dimensional Video Quality Assessment),综合视频的语义、失真、运动等多维度信息,并进行时空域的融合,来衡量视频绝对质量的高低。在公开的视频质量评价数据集LIVE-WC和YT-UGC+,以及TaoLive上,MD-VQA在主流视频质量评价指标SRCC和PLCC上均超过了SOTA(State-Of-The-Art)方法,达到了先进性能。
MD-VQA已经全面应用于包括淘宝直播、逛逛在内的大淘宝内容业务,监控视频业务的大盘画质的变化,快速、精准地筛选出不同画质水位的直播间和短视频,配合淘宝自研S265编码器、视频增强算子集STaoVideo以及《电商直播高画质开播指南》[1] 等,帮助提升平台内容画质。
方法
针对上述问题,我们基于淘宝直播平台的视频,构建了大规模UGC视频质量评价数据集 —— TaoLive,包含3,762个直播视频,覆盖不同的内容和质量,并通过专业的主观打分,获取165,528个主观质量分数的标注数据。与此同时,我们自研了针对UGC视频的无参考视频质量评价模型 —— MD-VQA,综合视频的语义、失真、和运动等多维特征,并进行时空域的融合,来衡量视频绝对质量的高低。
▐ TaoLive数据集
我们从淘宝直播平台筛选了418条视频,覆盖美妆、服饰、珠宝、食品、生活日常等不同内容、以及720p和1080p两个主流分辨率。然后,我们对这些视频进行8种不同失真等级的编码,来模拟实际应用中不同的视频质量,最后共生成3,762条不同内容、不同质量的视频,用来验证我们提出的MD-VQA的模型性能。部分示例视频如图1。
图1. TaoLive数据集示例
在此基础上,我们组织了由44名专家和普通消费者组成(20名男性,24名女性)的主观测评团队,对上述3,762条视频进行主观打分,共生成165,528条主观质量分数的标注数据。然后,我们根据ITU-R BT.500-13 [2] 标准,将标注数据转换为mean opinion score(MOS)分数,作为视频质量的ground-truth(GT)数据。
我们也和业界主流的视频质量评价数据集进行了比较,如表1所示。从表中可以看出,早期(2014-2016)的数据集的规模相对有限,而后续演进的大型数据集,例如KoNViD-1k、YouTube-UGC、LSVQ等则更侧重于In-the-wild的视频内容。在互联网内容平台上流行的“UGC视频结合压缩/传输失真(UGC + Compression)”类型数据集,我们构建的TaoLive数据集在数据规模上具有一定的竞争力,同时更适合于电商场景。
表1. 主流视频质量评价数据集比较
▐ 模型设计
图2示出了所提出的 MD-VQA 模型的框架,包括特征提取模块、特征融合模块、和特征回归模块。具体来说,所提取的视频特征包括多个维度:语义、失真、和运动。特别地,我们利用相邻帧特征之间的绝对误差来反映视频质量在时域上波动。上述得到的多维特征在时空域上被融合,并通过特征回归模块映射到最终的质量分数。
图2. MD-VQA模型的网络架构示例
语义特征提取
视频语义特征通常描述视频中物体的物理特性、物体之间的时空关系、以及物体的内容信息等,属于视频的高维特征,且和视频的低维特征(如亮度、色彩、纹理等)存在很强的关联性。此外,对于不同的视频内容,语义特征的失真对人眼感知到的视频质量有着不同的影响:人眼通畅无法容忍纹理丰富的内容(例如草坪、地毯)的模糊,二队纹理简单的内容(例如天空、墙面)的模糊相对不敏感。综上考虑,我们利用从预训练的EfficientNetV2 [3] 网络最后4层中提取的多维度特征作为帧级的语义特征,如图3公式所示:
图3. 语义特征
其中,表示从第
个视频片段的第帧获取的语义特征,
表示级联算子,
表示全局平均池化算子,
表示EfficientNetV2第
层的特征图,
表示从
获取的平均池化特征。
失真特征提取
由于UGC视频中普遍存在多种失真,仅使用语义特征来表征视频质量是不充分的。此外,对于不同的压缩质量,失真会呈现不同的状态,例如在压缩质量相对较低时,模糊会比较明显,但噪声也同时被抑制。因此,在考虑高维的语义特征的同时,我们引入了低维的手工(hand-crafted)特征,包括模糊、噪声、块效应、曝光强度、以及色彩,然后将上述特征综合为帧级的失真特征,如图4公式所示:
图4. 失真特征
其中,表示从第
个视频片段的第帧获取的失真特征,
表示失真特征提取算子。
运动特征提取
运动失真通常源自于拍摄时的抖动、或者低码率的视频编码,并且,其无法被视频空域特征(例如前述的语义特征)有效地描述。因此,为了提高模型的准确度,我们利用预训练的ResNet3D-18 [4] 获取帧级的运动特征,如图5公式所示:
图5. 运动特征
其中,表示从第个视频片段获取的运动特征,
表示运动特征提取算子。
特征融合
根据 [5] 中所述,高质量视频通常具有更小的帧间质量波动,反之亦然。为了量化上述波动,我们使用帧间语义特征和失真特征的绝对误差来衡量帧间质量波动,如图6公式所示:
图6. 相邻帧的语义特征的绝对误差和失真特征的绝对误差
其中,和
分别表示相邻帧的语义特征的绝对误差,以及失真特征的绝对误差。
基于此,时空域特征可以利用图7中的公式进行融合:
图7. 时空域特征融合
其中,表示帧级的时空域特征,
表示级联算子,
表示可学习多层感知机,
表示
的转置,
表示可学习的线性映射算子,将
映射到最终的时空域融合特征
。
最后,上述时空域融合特征与运动特征
进一步融合,形成最终的时空域融合特征
,如图8公式所示:
图8. 最终的时空域融合特征
特征回归
基于上述时空域融合特征,我们利用三层全连接层来回归视频质量,如图9公式所示:
图9. 全连接层回归视频质量
其中,表示全连接层,
表示视频片段的质量。
此外,我们使用均方误差MSE(Mean Squared Error)作为损失函数,如图10公式所示:
图10. 全连接层回归视频质量
其中,表示mini-batch的视频数量,
和
分别表示预测的视频质量和实际的视频质量。完整视频的质量可通过对视频片段进行平均池化操作获得。
实验
我们在两个公开的视频质量评价数据集LIVE-WC和YouTube-UGC,以及我们自建的TaoLive数据集上,与现有SOTA方法进行了对比。我们使用Spearman Rank Order Correlation Coefficient(SRCC)和Pearson Linear Correlation Coefficient(PLCC)作为指标进行对比。更高的SRCC表示样本间更好的保序性,更高的PLCC表示与标注分数更好地拟合程度。结果如表2所示。
表2. MD-VQA与其他视频质量评价SOTA模型在LIVE-WC、YT-UGC+、和TaoLive数据集的性能比较
从表中可以看出,我们在所测试数据集上的SRCC和PLCC均超过了现有SOTA方法,达到了先进性能。
此外,为了探索不同的特征对模型性能的贡献,我们进行了消融实验(ablation study),如表3和表4所示。
表3. 语义特征SF、失真特征DF、和运动特征MF对于模型性能的贡献比较
从表3中可以看出,语义特征对于模型的领先性贡献最多,而另外两种特征在不同的视频内容(不同数据集)上有不同的表现,符合预期。
表4. 绝对误差(ABS)和特征融合模块(FFM)对于模型性能的贡献比较
从表4中可以看出,绝对误差(ABS)和特征融合模块(FFM)对于模型性能的领先性均有贡献。
总结
为了准确、高效地衡量UGC视频的绝对质量,我们构建了大规模UGC视频质量评价数据集 —— TaoLive。不同于常见的视频质量评价数据集使用高质量视频作为源视频,TaoLive 数据集收集了3,762个UGC源视频,覆盖不同的内容和质量,并通过专业的主观打分,获取165,528个主观质量分数的标注数据。此外,我们提出一个无参考视频质量评价模型 —— MD-VQA,综合视频的语义、失真、和运动等多维特征,并进行时空域的融合,来衡量视频绝对质量的高低。实验结果表明,MD-VQA在主流视频质量评价数据集和评价指标上,均超过了现有方法,达到了先进性能。
MD-VQA已经全面应用于包括淘宝直播、逛逛在内的大淘宝内容业务,监控视频业务的大盘画质的变化,快速、精准地筛选出不同画质水位的直播间和短视频,配合淘宝自研S265编码器、视频增强算子集STaoVideo以及《电商直播高画质开播指南》[1] 等,帮助提升平台内容画质。
参考文献
【1】 “服贸会在京举行|淘宝直播携手佳能佳直播联合发布《电商直播高画质开播指南》让品质直播触手可及”,https://mp.weixin.qq.com/s/2-pC1Z9wH60DHpUkCU-_ng.
【2】 RECOMMENDATION ITU-R BT. Methodology for the subjective assessment of the quality of television pictures. International Telecommunication Union, 2002.
【3】 Mingxing Tan and Quoc Le. Efficientnetv2: Smaller models and faster training. In International Conference on Machine Learning, pages 10096–10106. PMLR, 2021.
【4】 Kensho Hara, Hirokatsu Kataoka, and Yutaka Satoh. Can spatio-temporal 3d cnns retrace the history of 2d cnns and imagenet? In IEEE/CVF CVPR, pages 6546–6555, 2018.
【5】Manish Narwaria, Weisi Lin, and Anmin Liu. Low-complexity video quality assessment using temporal quality variations. IEEE TMM, 14(3):525–535, 2012.
团队介绍
该工作主要在大淘宝技术的音视频技术团队的带领下完成,该团队依托淘宝直播、逛逛、手淘首页信息流等内容业务,致力于打造行业领先的音视频技术。团队成员来自海内外知名高校,先后在MSU世界编码器大赛,NTIRE视频增强超分竞赛这样的领域强相关权威赛事上夺魁,并重视与学界的合作与交流。
这项工作的合作方为上海交通大学张文军教授领衔的图像所团队,是数字电视广播及数字媒体处理与传输领域的主要研究力量之一。面向国家战略性新兴产业,顺应网络化、融合化的发展趋势,近年来开展的重点研究领域包括智能媒体融合网络、视频智能分析处理与传输等。
¤ 拓展阅读 ¤
3DXR技术 | 终端技术 | 音视频技术
服务端技术 | 技术质量 | 数据算法
相关文章:

CVPR 2023|淘宝视频质量评价算法被顶会收录
近日,阿里巴巴大淘宝技术题为《MD-VQA: Multi-Dimensional Quality Assessment for UGC Live Videos》—— 适用于无参考视频质量评价的最新研究成果被计算机视觉领域顶级会议IEEE/CVF Computer Vision and Pattern Recognition Conference 2023(CVPR 20…...

【C++学习】继承
🐱作者:一只大喵咪1201 🐱专栏:《C学习》 🔥格言:你只管努力,剩下的交给时间! C是面向对象的编程语言,它有很多的特性,但是最重要的就是封装,继承…...

【03173】2020年8月高等教育自学考试-软件开发工具
一、单项选择题:1. 区别于一般软件,对软件开发工具而言,下列各项最重要的性能是 A. 效率 B. 响应速度C. 资源消耗 D. 使用方便2. 在软件开发过程的信息需求中,属于跨开发周期的信息是A. 有关系统环境的需求信息 B. 有关软件设计的…...

Java中的String类
String类1.String类1.1 特性1.2 面试题1.3 常用方法1.4 String与其他类型之间的转换2. StringBuilder类、StringBuffer类:可变字符序列1.String类 1.1 特性 String类为final类,不可被继承,代表不可变的字符序列; 实现了Serializ…...

【java】笔试强训Day3【在字符串中找出连续最长的数字串与数组中出现次数超过一半的数字】
目录 ⛳选择题 1.以下代码运行输出的是 2.以下程序的输出结果为 3.下面关于构造方法的说法不正确的是 ( ) 4.在异常处理中,以下描述不正确的有( ) 5.下列描述中,错误的是( ) 6.…...

一文7个步骤从0到1教你搭建Selenium 自动化测试环境
【导语】Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持自动录制动作和自动生成 .Net、Java、Perl等不同语言的测试脚本。本文详细介绍了搭建自动化测试环境所需的工具,让你学习自动化测试不…...

Oracle目录应急清理
Oracle目录应急清理清理错误位置的归档日志清理30天前的监听告警日志清理监听日志清理30天以前的trace文件清理30天以前的审计日志清理错误位置的归档日志 检查$ORACLE_HOME/dbs下是否有归档文件: ls $ORACLE_HOME/dbs/arch* | wc -l检查和修改归档位置࿱…...

使用 OBS 进行区域录制
1. OBS 与区域录屏 实际上 OBS 的使用场景可谓是与区域录屏格格不入的。 虽然我们依旧有一些办法在 OBS 中达到区域录屏的目的,但其操作实在过于繁琐,还不如直接使用 QQ 或者 Windows 最新的自带截屏录屏来进行区域录屏来的方便实在。 但若非常强烈的…...

aws eks 配置授权额外的用户和角色访问集群
参考资料 https://github.com/kubernetes-sigs/aws-iam-authenticator#full-configuration-formathttps://docs.amazonaws.cn/zh_cn/eks/latest/userguide/add-user-role.html 众所周知,aws eks使用 Authenticator 或者 aws 命令来进行账户级别的用户和角色的授权…...

MagicalCoder可视化开发平台:轻松搭建业务系统,为企业创造更多价值
让软件应用开发变得轻松起来,一起探索MagicalCoder可视化开发工具的魔力!你是否为编程世界的各种挑战感到头痛?想要以更高效、简单的方式开发出专业级的项目?MagicalCoder低代码工具正是你苦心寻找的产品!它是一款专为…...

8个不能错过的程序员必备网站,惊艳到我了!!!
程序员是一个需要不断学习的职业,不少朋友每天来逛CSDN、掘金等网站,但一直都抱着“收藏从未停止,学习从未开始”的态度,别骗自己了兄弟。在编程体系中,有很多不错的小工具,可以极大得提升我们的开发效率。…...

Mybatis(二):实现“增删改查”
Mybatis(二):实现“增删改查”前言一、MyBatis的增删改查1、添加2、修改3、删除4、查询4.1 查询一个实体4.1 查询集合二、MyBatis获取参数值的两种方式(重点)1、单个字面量类型的参数2、多个字面量类型的参数3、map集合…...

Faster RCNN 对血液细胞目标检测
目录 1. 介绍 2. 工具函数介绍 utils 2.1 xml 文件的读取 get_label_from_xml 2.2 绘制边界框 draw_bounding_box...

【数据结构】Java实现栈
目录 1. 概念 2. 栈的使用 3. 自己动手实现栈(使用动态数组实现栈) 1. 创建一个MyStack类 2. push入栈 3. pop出栈 4. 查看栈顶元素 5. 判断栈是否为空与获取栈长 6. toString方法 4. 整体实现 4.1 MyStack类 4.2 Test类 4.3 测试结果 1.…...

【数据结构】排序
作者:✿✿ xxxflower. ✿✿ 博客主页:xxxflower的博客 专栏:【数据结构】篇 语录:⭐每一个不曾起舞的日子,都是对生命的辜负。⭐ 文章目录1.排序1.1排序的概念1.2常见的排序算法2.常见排序算法2.1插入排序2.1.1直接插入…...

过拟合、验证集、交叉验证
过拟合 简单描述:训练集误差小,测试集误差大,模型评估指标的方差(variance)较大; 判断方式: 1、观察 train set 和 test set 的误差随着训练样本数量的变化曲线。 2、通过training accuracy 和…...

原力计划来了【协作共赢 成就未来】
catalogue🌟 写在前面🌟 新星计划持续上新🌟 原力计划方向🌟 原力计划拥抱优质🌟 AIGC🌟 参加新星计划还是原力计划🌟 创作成就未来🌟 写在最后🌟 写在前面 哈喽&#x…...

一文了解Jackson注解@JsonFormat及失效解决
背景 项目中使用WRITE_DATES_AS_TIMESTAMPS: true转换日期格式为时间戳未生效。如下: spring:jackson:time-zone: Asia/Shanghaiserialization:WRITE_DATES_AS_TIMESTAMPS: true尝试是否关于时间的注解是否会生效,使用JsonForma和JsonFiled均失效。 常…...

webpack——使用、分析打包代码
世上本无nodejs js最初是在前端浏览器上运行的语言,js代码一旦脱离了浏览器环境,就无法被运行。直到nodejs的出现,我们在电脑上配置了node环境,就可以让js代码脱离浏览器,在node环境中运行。 浏览器不支持模块化 nodej…...

libvirt零知识学习5 —— libvirt源码编译安装(3)
接前一篇文章libvirt零知识学习4 —— libvirt源码编译安装(2) 在上篇文章及上上篇文章中构建libvirt的时候遇到了一个问题“ERROR: Problem encountered: YAJL 2 is required to build QEMU driver”。上篇文章讲到即使安装了相应的YAJL库仍然不能解决问…...

Nmap 的使用教程
Nmap是一个网络侦测和安全审计工具。它可以用于发现网络上的主机和服务,并提供广泛的信息,其中包括操作系统类型和版本、应用程序和服务的详细信息等。在本文中,我们将介绍如何使用Nmap扫描网络主机,识别开放端口以及进行操作系统…...

async与await异步编程
ECMA2017中新加入了两个关键字async与await 简单来说它们是基于promise之上的的语法糖,可以让异步操作更加地简单明了 首先我们需要用async关键字,将函数标记为异步函数 async function f() {} f()异步函数就是指:返回值为promise对象的函…...

移动应用架构设计:如何转变开发流程
移动应用架构设计:如何转变开发流程 2023 年掌握移动应用程序架构的指南(附案例研究) 如果他们要解决这个问题,开发人员需要了解移动架构设计的最佳实践,使他们能够构建用户喜欢的优化应用程序。其中一些做法包括使用…...

NX二次开发 图层函数总结
简介: NX二次开发 图层相关的总结。 函数: uc5007()uc5008()uc5009()UF_LAYER_ask_category_info()获取图层类别的信息UF_LAYER_ask_category_tag()根据图层分类名称查询其图层分类标识UF_LAYER_ask_status()UF_LAYER_ask_work_layer()UF_LAYER_create…...

windows微服务部署
windows部署一.nginx部署1.nginx 官网下载2. 配置nginx3.配置nigix 防止nigix刷新404不生效二.配置redis部署成服务1.在系统配置中 配置为系统变量2.打开快捷登录服务管理#3. 开启redis三.windows部署jar包一.nginx部署 1.nginx 官网下载 地址 官网地址 安装 windows版本 可安…...

Java四种内部类(看这一篇就够了)
🎉🎉🎉点进来你就是我的人了 博主主页:🙈🙈🙈戳一戳,欢迎大佬指点!人生格言:当你的才华撑不起你的野心的时候,你就应该静下心来学习! 欢迎志同道合的朋友一起加油喔🦾&am…...

蓝桥杯刷题第二十天
第一题:纸张尺寸问题描述在 ISO 国际标准中定义了 A0 纸张的大小为 1189mm 841mm, 将 A0 纸 沿长边对折后为 A1 纸, 大小为 841mm 594mm, 在对折的过程中长度直接取 下整 (实际裁剪时可能有损耗)。将 A1 纸沿长边对折后为 A2 纸, 依此类推。输入纸张的名称, 请输出…...

如何通过命令行查看CentOS版本信息和linux系统信息
1.如何查看已安装的CentOS版本信息: 1.cat /proc/version 2.uname -a 3.uname -r 4.cat /etc/centos-release 5.lsb_release -a 6.hostnamectl1. 第一种方式输出的结果是: Linux version 3.10.0-1127.el7.x86_64 (mockbuildkbuilder.bsys.centos.org) …...

oracle查询表空间大小以及每个表所占空间的大小
1、查询数据库中所有的表空间以及表空间所占空间的大小,直接执行语句就可以了: select tablespace_name, sum(bytes)/1024/1024 from dba_data_files group by tablespace_name; 2、查看表空间物理文件的名称及大小 select tablespace_name, file_id, …...

C语言通讯录应用程序:从设计到实现
hello,这期给大家带来C语言实现静态通讯录,主要也是建立起创建大项目的思维,与往期这两篇博客有点类似 C语言实现三子棋 C语言实现扫雷 文章目录🤓通讯录介绍😶🌫️效果演示🤠主题框架头文件测试文件函数…...