【论文解读】Comparing VVC, HEVC and AV1 using Objective and Subjective Assessments
时间:
2020
级别:
IEEE
机构:
IEEE 组织
摘要:
对3种最新的视频编码标准HEVC (High Efficiency video Coding)测试模型HM (High Efficiency video Coding)、amedia video 1 (AV1)和Versatile video Coding测试模型 (VTM)进行了客观和主观质量评价。通过精细化选择9个源序列,使其具有多样性和代表性,并在预定义的目标码率下对3种编解码器进行不同分辨率版本的编码。采用两种常用的客观质量评价指标PSNR和VMAF对3种编解码器的压缩效率进行了评估。通过心理物理实验对重构内容的主观质量进行评估。在动态优化框架(凸包率失真优化)下,使用客观和主观评价,在具有更宽比特率的分辨率下对HEVC和AV1进行了比较。最后比较了3种测试编解码器的计算复杂度。主观评价结果表明,AV1与HM之间无显著性差异,而VTM有显著性增强。所选的源序列、压缩视频内容和相关的主观数据可以在线获取,为压缩性能评价和客观视频质量评价提供了资源。
介绍:
视频技术在现代生活中无处不在,有线和无线视频流、地面和卫星电视、蓝光播放器、数字相机、视频会议和监控都以高效的信号表示为基础。据预测,到2022年,每年全球互联网流量的82%(约4.0ZB)将是视频内容。因此,对于压缩,这是一个非常具有挑战性时时刻,必须有效地编码这些增加的视频数量在更高的空间和时间分辨率,动态分辨率和质量。
从第一个国际视频编码标准H.120到广泛采用的MPEG-2/H,和H.264/AVC(高级视频编码)标准,视频压缩技术在过去的三十年中取得了巨大的进步。近年来,ISO/IEC运动图像专家组(MPEG)和ITU-T视频编码专家组(VCEG)相继启动了新的视频编码标准——通用视频编码(VVC)的开发,其目标是比现有的高效视频编码(HEVC)标准降低30% ~ 50%的码率。与此同时,开放媒体联盟(AOMedia)开发了免版税的开源视频编解码器,以与MPEG标准竞争。据报道,最近推出的amedia Video 1 (AV1)编解码器的性能优于其前身VP9。
为了衡量这些编码算法的性能,可以采用客观和主观的评估方法来评估它们的码率质量性能。现有工作报告了对当代编解码器的比较,但由于使用不同的编码配置,结果各不相同,结论令人困惑。
在此背景下,对HEVC, AV1和VVC这三种主流视频编码标准的测试模型进行了比较,利用它们各自对应的通用测试条件来创建一个公平的比较。结果是基于UHD (3840×2160)和HD (1920×1080)分辨率的18个代表性源序列,使用传统(恒定分辨率)和动态优化器DO(仅用于高清分辨率)方法。
对之前的工作进行了全面的扩展,其中基于DO方法只给出了AV1和HEVC的比较结果。与已有的编解码器比较工作相比,本文首次给出了VVC测试模型的客观和主观比较结果,并在自适应流媒体框架下对编解码器进行了比较。
背景
视频编码标准:
视频编码标准通常定义比特流的语法和解码过程,而编码器生成符合标准的比特流,从而决定压缩性能。每一代视频编码标准都有一个参考测试模型,如HEVC测试模型HM (HEVC test model),可以用来提供一个性能基准。
H.264/MPEG-4-AVC于2004年推出,尽管目前的标准H.265/HEVC在2013年完成,但它仍然是最多产的视频编码标准。自2018年以来,下一代视频编码标准——通用视频编码(VVC)的工作目标是比H.265/HEVC提高30%-50%的编码增益,支持沉浸式格式(360°视频)和更高的空间分辨率,最高可达16K。
其他的视频编码技术:
除了最近的MPEG标准化之外,开源免版税视频编解码器的开发活动也在增加,特别是由视频相关公司组成的联盟——开放媒体联盟(AOMedia)。VP9由谷歌开发,旨在与MPEG竞争,并为2018年发布的AV1 (AOMedia Video 1)提供了基础,AV1有望成为当前MPEG视频编码标准的主要竞争对手,特别是在流媒体应用的背景下。
有关现有视频编码标准和格式的详细信息,读者可参考[17-19]。
编解码比较:
视频编码算法的性能通常通过比较它们在不同测试序列上的率失真(rate-distortion, RD)或率质量(rate-quality, RQ)性能来衡量。测试内容的选择非常重要,应提供多样化且具有代表性的视频参数覆盖空间。通常使用客观质量指标或主观意见测量来评估压缩视频质量,然后可以使用Bjøntegaard测量(用于客观质量指标)或SCENIC(用于主观评估)来计算编解码器之间的总体RD或RQ性能差异。最近,为了比较视频编解码器和优化码率质量性能,Netflix为自适应流媒体应用开发了DO方法,特别是凸包率失真优化方法。该方法构建了不同空间分辨率下的码率质量曲线凸包,为在更宽的码率范围和分辨率下比较不同编解码器提供了一种更公平的方法。
最近的工作主要集中在MPEG编解码器(H.264/AVC和HEVC)和免版税编解码器(VP9和AV1)之间的比较以及它们在自适应流服务中的应用。然而,所提出的结果被认为是高度不一致的,主要是由于采用了不同的配置。此外,据我们所知,在自适应流媒体或包括性能VVC的情况下,还没有主观编解码器比较。
测试内容和编解码器配置
源序列选择:
从Harmonic、BVI-Texture和JVET (Joint Video Exploration Team) CTC (Common Test Conditions)数据集中选取9个源序列。每个序列被渐进扫描,在超高清晰度(UHD, 3840×2160)分辨率下,帧率为每秒60帧(fps),并且没有场景切换。如图 1。
图 2确定了视频参数空间的覆盖范围,其中绘制了数据集(SI和TI)的空间和时间信息。
为了研究不同分辨率和自适应流框架下的编码性能,从源序列中产生了三种空间分辨率组:(A)仅UHD (3840×2160), (B)仅HD (1920×1080)和© HD- dynamic Optimizer (HD- do)。对于C组,首先生成三种不同分辨率(1920×1080、1280×720和960×544)和不同量化参数(QPs)的编码结果。然后将重建视频上采样到高清分辨率(以便与原始高清序列进行比较)。在这里,使用Lanczos-3滤波器实现了空间分辨率重采样。针对每个目标码率和编解码器,在三种测试分辨率中选择码率质量性能最优的码率点(基于VMAF)。在DO方法中,重复这个过程来生成整个凸包。
编码配置:
本研究对HEVC和VVC的参考测试模型以及它们的主要竞争对手AV1进行了评估。每个编解码器使用在其通用测试条件中定义的编码参数进行配置,具有固定的量化参数(禁用速率控制),相同的结构延迟(例如在HEVC HM软件中定义为GOP大小)为16帧,相同的随机访问间隔(例如在HEVC HM软件中定义为周期内)为64帧。实际的编解码器版本和配置参数见表1。
对每个测试序列和每个分辨率组(分辨率A、B组4个点,HD-DO组5个点)预先确定不同的目标比特率,其值如表II所示。这些是根据使用AV1对每个分辨率组的测试序列的初步编码结果确定的。之所以做出这个决定,是因为AV1版本在预定义的比特率下限制了比特流的产生,因为只有整数量化参数可以使用。另一方面,对于HM和VTM,通过启用“QPIncrementFrame”参数,这更容易实现。为了获得这些目标码率,迭代调整量化参数值,以确保输出码率足够接近目标码率(在±3%的范围内)。
总结:
综上所述,总共产生了306个失真序列:分辨率a组(仅UHD)有108个(9个源序列×4个速率点×3个编解码器),分辨率B组(仅HD)有108个(9×4×3),分辨率C组(HD- do)2有90个(9×5×2)。
主观实验
环境设置:
所有三个实验都是在昏暗的客厅式环境中进行的。背景亮度设置为显示器峰值亮度(62.5 lux)[27]的15%。所有测试序列都以其原生空间分辨率和帧率在一台消费显示器上显示,一台SONY KD65Z9D液晶电视(测量1429×804mm),峰值亮度为410 lux。根据ITU-R BT.500和ITU-R P.910的建议,A组(UHD)的观看距离设置为121cm(1.5倍屏幕高度),B组(HD)和C组(HD- do)的观看距离设置为241cm(3倍屏幕高度)。视频序列的呈现由一台windows电脑控制,该电脑运行一款开源软件BVI-SVQA,该软件是布里斯托尔大学为心理物理实验开发的。
实验过程:
在所有三个实验中,采用双刺激连续质量量表(DSCQS)方法。在每个试验中,参与者被展示两次一对序列,包括原始版本和编码版本。在每次试验中,演示顺序是随机的,每个参与者都不知道。参与者有无限的时间来回答以下问题(在视频监视器上显示):“请对第一秒视频的质量(0-100)进行评分。优秀- 90分,好- 70分,一般- 50分,较差- 30分,差- 10分。然后,参与者使用鼠标滚动垂直刻度,并为这两个视频评分(0-100)。每个实验环节的总时长约为50分钟(A、B组)或60分钟(C组),每个环节分为两个环节,中间休息10分钟。在正式测试之前,有一个由三个试验组成的培训课程(与正式测试中使用的不同)。
参与者与数据处理:
布里斯托尔大学共有60名受试者(每次测试20名),平均年龄27岁(年龄范围20-45岁),他们因参与实验而获得补偿。所有人都接受了视力正常或矫正视力正常的测试。如前所述,受试者的回答首先被记录为质量分数,范围为0-100。然后,通过从相应的参考序列中减去失真序列的质量分数,计算每个试验和每个受试者的差异分数。通过取参与者差异得分的平均值,得到每个试验的差异平均意见得分(DMOS)。
结果和结论
客观数据 VMAF和 PSNR,实验还利用主观数据对6种主流的客观视频质量评价指标进行了评价,包括PSNR、结构相似度(SSIM)、多尺度SSIM (MS-SSIM)、视觉信噪比(VIF)、视觉信噪比(VSNR)和VMAF。按照[46]标准,采用logistic拟合函数对3种不同分辨率组的质量指标和主观DMOS进行加权最小二乘拟合。采用斯皮尔曼等级顺序相关系数(SROCC)、线性相关系数(LCC)、离群率(OR)和均方根误差(RMSE) 4种相关统计量评估这些质量指标的相关性能。这些参数的定义可以在[46,47]中找到。
结果基于客观质量评测:
表 3 是结果对比数据。综上所述,AV1在测试内容上的表现比HM略有提升,AV1和HM的表现都(显著)低于VTM。
图 3 是展示动态优化(DO)下的性能。
结果基于主观质量评测:
如表 4-6所示。
客观质量度量性能比较:
表7总结了三个分辨率组的六个测试客观质量指标的相关性能(根据SROCC值)。可以看到,VMAF在三个测试数据库上的SROCC和LCC值最高,OR和RMSE值最低,均优于其他5个指标。PSNR(峰值信噪比)导致算法性能下降,特别是对于超高清分辨率组。3组分辨率的SROCC值均在0.9以下,说明预测精度仍需进一步提高。
计算复杂度分析:
如表 8 所示,总结了超高清和高清内容编码的平均复杂度,其中HM编码器已用于基准测试。平均复杂度是被测编解码器在所有速率点上的执行时间与基准测试时间的平均比率。可以看出,对于经过测试的编解码器版本,AV1比VTM具有更高的复杂度。
相对复杂度和编码性能之间的关系(根据PSNR和VMAF的平均编码增益)也显示在图4中。
相关文章:

【论文解读】Comparing VVC, HEVC and AV1 using Objective and Subjective Assessments
时间:2020 级别:IEEE 机构: IEEE 组织 摘要: 对3种最新的视频编码标准HEVC (High Efficiency video Coding)测试模型HM (High Efficiency video Coding)、amedia video 1 (AV1)和Versatile video Coding测试模型 (VTM)进行了客观和…...
动态窗口法Dynamic Window Approach在动态环境中避障
以这个博主的代码为基础,加了一个碰撞检测,但是这个碰撞检测目前还不完善,思路应该是这个思路,以后有时间再完善吧。 动态窗口法:【路径规划】局部路径规划算法——DWA算法(动态窗口法)|&#…...

2023.12.15 FineBI与kettle
1.结构化就是可以用schema描述的数据,就是结构化数据,能转为二维表格, 如CSV,Excel, 2.半结构化就是部分可以转换为二维表格,如JSON,XML 3.非结构化数据,就是完全无法用二维表格表示的数据,如Word文档,Mp4,图片,等文件. kettle的流程 新建转换-构建流图-配置组件-保存运行 使…...

Python tkinter 初探Toplevel控件搭建父子窗口
目录 Toplevel控件搭建父子窗口 最简明的父子窗口框架 改进一:屏蔽和开放按钮 改进二:子窗口始终在主窗口之上 改进三:增加子窗口的关闭协议 改进四:使子窗口长获焦点 总结 Toplevel控件搭建父子窗口 最近,用P…...

SpringCloud源码探析(十二)-基于SpringBoot开发自定义中间件
1.概述 中间件是一种介于操作系统和应用软件之间,为应用软件提供服务功能的软件,按功能划分有消息中间件(Kafka、RocketMQ)、通信中间件(RPC通信中间件,dubbo等),应用服务器等。中间…...

基于CNN+数据增强+残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)+数据集+模型(一)
系列文章目录 基于CNN数据增强残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)数据集模型(一) 基于CNN数据增强残差网络Resnet50的少样本高准确度猫咪种类识别—深度学习算法应用(含全部工程源码)数据集模型…...

python实现贪吃蛇游戏
文章目录 1、项目说明2、项目预览3、开发必备4、贪吃蛇代码实现4.1、窗口和基本参数实现4.2、绘制背景4.3、绘制墙壁4.4、绘制贪吃蛇4.5、绘制食物4.6、实现长度信息显示4.7、定义游戏暂停界面4.8、定义贪吃蛇死亡界面4.9、实现贪吃蛇碰撞效果4.10、实现添加食物功能4.11、实现…...

ios备忘录怎么导入华为 方法介绍
作为一个常常需要在不同设备间切换的人,我深知备忘录的重要性。那些突如其来的灵感、重要的会议提醒、甚至是生活中的琐碎小事,我们都习惯性地记录在备忘录里。但当我决定从iPhone转向华为时,一个问题困扰了我:如何将那些珍贵的备…...

electron与cesium组件入门应用功能
electron与cesium组件入门应用功能 运行应用效果图: electron应用目录,需要包括三个文件: index.html main.js package.json (一)、创建一个新项目 目录名称:project_helloWolrd (二)、生成package.json文件 npm init --yes(三&#x…...

Jenkins Docker Cloud在Linux应用开发CI中的实践
Jenkins Docker Cloud在Linux应用开发CI中的实践 背景 通过代码提交自动触发CI自动构建、编译、打包是任何软件开发组织必不可少的基建,可以最大程度保证产物的一致性,方便跨组跨部门协作,代码MR等。 Docker在流水线中越来越重要ÿ…...
502 Bad Gateway with nginx + apache + subversion + ssl
svn commit的时候返回 unexpected http status 502 bad gateway on解决方法,参考:https://stackoverflow.com/questions/2479346/502-bad-gateway-with-nginx-apache-subversion-ssl-svn-copy 在nginx中代理svn中添加 location /svn {set $fixed_dest…...

【PostgreSQL内核学习(十八)—— 存储管理(存储管理的体系结构)】
存储管理 概述存储管理器的体系结构存储管理器的主要任务读写元组过程 声明:本文的部分内容参考了他人的文章。在编写过程中,我们尊重他人的知识产权和学术成果,力求遵循合理使用原则,并在适用的情况下注明引用来源。 本文主要参考…...

Android的组件、布局学习
介绍 公司组织架构调整,项目组需要承接其他项目组的android项目,负责维护和开发新需求,故学习下基础语法和项目开发。 组件学习 Toolbarheader布局部分 就是app最顶部的部分 他的显示与否,是与F:\androidProject\android_lear…...

【离散数学】——期末刷题题库(树其一)
🎃个人专栏: 🐬 算法设计与分析:算法设计与分析_IT闫的博客-CSDN博客 🐳Java基础:Java基础_IT闫的博客-CSDN博客 🐋c语言:c语言_IT闫的博客-CSDN博客 🐟MySQL:…...

光模块市场分析与发展趋势预测
光模块是光通信领域的重要组成部分,随着数字经济,大数据,云计算,人工智能等行业的兴起,光模块市场经历了快速发展,逐渐在数据中心、无线回传、电信传输等应用场景中得到广泛应用。本文将基于当前光模块全球…...

Python轴承故障诊断 (八)基于EMD-CNN-GRU并行模型的故障分类
目录 前言 1 经验模态分解EMD的Python示例 2 轴承故障数据的预处理 2.1 导入数据 2.2 制作数据集和对应标签 2.3 故障数据的EMD分解可视化 2.4 故障数据的EMD分解预处理 3 基于EMD-CNN-GRU并行模型的轴承故障诊断分类 3.1 训练数据、测试数据分组,数据分ba…...
鸿蒙实现年月日十分选择框,支持年月日、月日、日、年月日时分、时分切换
import DateTimeUtils from ./DateTimeUtils;CustomDialog export default struct RQPickerDialog {controller: CustomDialogControllertitle: string 这是标题TAG: string RQPickerDialog// 0 - 日期类型(年月日) 1 - 时间类型(时分&a…...

IntelliJ IDE 插件开发 | (三)消息通知与事件监听
系列文章 IntelliJ IDE 插件开发 |(一)快速入门IntelliJ IDE 插件开发 |(二)UI 界面与数据持久化IntelliJ IDE 插件开发 |(三)消息通知与事件监听 前言 在前两篇文章中讲解了关于插件开发的基础知识&…...
VUE小知识点
Vue 是一款用于构建用户界面的 JavaScript 框架。它基于标准 HTML、CSS 和 JavaScript 构建,并提供了一套声明式的、组件化的编程模型,帮助你高效地开发用户界面。 Vue 的主要作用是帮助开发者构建现代 Web 应用程序。它允许前端开发人员专注于应用程序…...

深入了解常见的应用层网络协议
目录 1. HTTP协议 1.1. 工作原理 1.2. 应用场景 1.3. 安全性考虑 2. SMTP协议 2.1. 工作原理 2.2. 应用场景 2.3. 安全性考虑 3. FTP协议 3.1. 工作原理 3.2. 应用场景 3.3. 安全性考虑 4. DNS协议 4.1. 工作原理 4.2. 应用场景 4.3. 安全性考虑 5. 安全性考虑…...
[2025CVPR]DeepVideo-R1:基于难度感知回归GRPO的视频强化微调框架详解
突破视频大语言模型推理瓶颈,在多个视频基准上实现SOTA性能 一、核心问题与创新亮点 1.1 GRPO在视频任务中的两大挑战 安全措施依赖问题 GRPO使用min和clip函数限制策略更新幅度,导致: 梯度抑制:当新旧策略差异过大时梯度消失收敛困难:策略无法充分优化# 传统GRPO的梯…...

centos 7 部署awstats 网站访问检测
一、基础环境准备(两种安装方式都要做) bash # 安装必要依赖 yum install -y httpd perl mod_perl perl-Time-HiRes perl-DateTime systemctl enable httpd # 设置 Apache 开机自启 systemctl start httpd # 启动 Apache二、安装 AWStats࿰…...
鸿蒙中用HarmonyOS SDK应用服务 HarmonyOS5开发一个医院挂号小程序
一、开发准备 环境搭建: 安装DevEco Studio 3.0或更高版本配置HarmonyOS SDK申请开发者账号 项目创建: File > New > Create Project > Application (选择"Empty Ability") 二、核心功能实现 1. 医院科室展示 /…...

mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包
文章目录 现象:mysql已经安装,但是通过rpm -q 没有找mysql相关的已安装包遇到 rpm 命令找不到已经安装的 MySQL 包时,可能是因为以下几个原因:1.MySQL 不是通过 RPM 包安装的2.RPM 数据库损坏3.使用了不同的包名或路径4.使用其他包…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

深度学习习题2
1.如果增加神经网络的宽度,精确度会增加到一个特定阈值后,便开始降低。造成这一现象的可能原因是什么? A、即使增加卷积核的数量,只有少部分的核会被用作预测 B、当卷积核数量增加时,神经网络的预测能力会降低 C、当卷…...
Redis的发布订阅模式与专业的 MQ(如 Kafka, RabbitMQ)相比,优缺点是什么?适用于哪些场景?
Redis 的发布订阅(Pub/Sub)模式与专业的 MQ(Message Queue)如 Kafka、RabbitMQ 进行比较,核心的权衡点在于:简单与速度 vs. 可靠与功能。 下面我们详细展开对比。 Redis Pub/Sub 的核心特点 它是一个发后…...

iview框架主题色的应用
1.下载 less要使用3.0.0以下的版本 npm install less2.7.3 npm install less-loader4.0.52./src/config/theme.js文件 module.exports {yellow: {theme-color: #FDCE04},blue: {theme-color: #547CE7} }在sass中使用theme配置的颜色主题,无需引入,直接可…...
加密通信 + 行为分析:运营商行业安全防御体系重构
在数字经济蓬勃发展的时代,运营商作为信息通信网络的核心枢纽,承载着海量用户数据与关键业务传输,其安全防御体系的可靠性直接关乎国家安全、社会稳定与企业发展。随着网络攻击手段的不断升级,传统安全防护体系逐渐暴露出局限性&a…...

Matlab实现任意伪彩色图像可视化显示
Matlab实现任意伪彩色图像可视化显示 1、灰度原始图像2、RGB彩色原始图像 在科研研究中,如何展示好看的实验结果图像非常重要!!! 1、灰度原始图像 灰度图像每个像素点只有一个数值,代表该点的亮度(或…...