如何确定一个视频质量的好坏一直以来都是个棘手的问题。目前常用的方法就是通过人眼来直接观看,但是由于人眼的主观性及观看人员的单体差异性,对于同样的视频质量,不同的人的感受是不一样的。为此多个研究机构提出了视频质量客观测试方法,即利用机器或程序来评价视频质量的方法。本文正是要介绍一下其中的一种方法:VQM,并且总结了一些有关VQM视频质量评价方法的资料。VQM方法给出的客观分数比较符合主观感受,属于比较好的一种质量评价算法。


各种视频质量评价方法对比:

目前最常见的客观测试标准是PSNR(峰值信噪比)测试算法,但是其测试结果与主观评价结果的一致性较差,不能完全反应人眼的主观感觉。因此有多个机构提出了与主观评价结果一致性较好的客观评价算法,如美国国家电信和信息管理局(NTIA)提出的视频质量度量(VQM)算法及其模型、英国电信BT提出的全参考视频质量模型及其算法(BTFR)、巴西电信发展研究中心(CPqD)提出的基于分段的图像评价(IES)算法,以及泰克公司和Sarnoff公司提供的PQR算法等,这些客观算法都是在模拟人眼视觉模型的基础上建立的。

为验证这些客观测试标准与主观评价结果的一致性,视频质量专家组(VQEG)在2003年进行的第二次视频质量专题测试中,对上述客观算法与主观算法的关联性进行了验证测试,测试结果如表1和表2所示,可以发现,NTIA提供的VQM客观视频质量评价方法对于PAL制及N视频格式都有较好的表现,与主观测试结果的一致性较好。

表1 PAL制式下客观评价与主观评价结果关联性

表2 NTSC制式下客观评价与主观评价结果关联性

VQM 客观测试标准是利用统计学原理模拟实际的人眼视觉系统,在提取参考及其对应的测试图像中人眼能够感知的图像特征值(亮度、色彩、时空变化等信息)的基础上,计算得出视频质量客观评价值,该评价值为人眼可感知的模糊、块失真、不均匀/不自然的运动、噪音和错误块等损伤的综合反映,其值位于0~1之间,值越小越好。

VQM的具体处理过程

如图1所示:

1.   参考及测试视频流的采集保存及模拟/数字信号转换;
2.   测试视频流的校准,依据参考视频,去除测试视频中的时间偏移、空间偏移、增益等非编解码引入的变化;
3.   提取参考及测试视频图像中人眼可感知的特征:模糊、块失真、不均匀/不自然的运动、噪音和错误块等信息;
4.   对于步骤3提取的每一种特征值进行一定的差分比较计算,依据视频测试序列的长短进行统计平均;
5.   使用VQM合并计算公式合并步骤4计算的每种特征值的统计平均值,给出最终的视频质量客观评价值(VQM),最终计算获得的VQM值位于0到1之间,数值越小代表视频质量越好。

以上文字出处:http://www.h3c.com.cn/About_H3C/Company_Publication/IP_Lh/2010/10/Home/Catalog/201006/679125_30008_0.htm

VQM客观和主观之间的对应关系

Yubing Wang在《Survey of Objective Video Quality Measurements》文章中给出了VQM客观分数与主观质量(DMOS)之间的对应关系:

注:该图是Wolf和Pinson在1992-1999年期间11次实验数据的合集。

主观感受单位是DMOS,取值在0-1之间,数值越小,代表主观感受越好。

由图可见,VQM客观分数和人眼主观感受(DMOS)之间是线性关系的。

视频质量评价方法:VQM的更多相关文章

  1. 全参考视频质量评价方法(PSNR,SSIM)以及与MOS转换模型

    转载处:http://blog.csdn.NET/leixiaohua1020/article/details/11694369 最常用的全参考视频质量评价方法有以下2种: PSNR(峰值信噪比):用 ...

  2. 一种H.264高清视频的无参考视频质量评价算法(基于QP和跳过宏块数)

    本文记录一种无参考视频质量评价算法.这是我们自己实验室前两年一个师姐做的,算法还是比较准确的,在此记录一下. 注意本算法前提是高清视频.而且是H.264编码方式. 该方法主要使用两个码流里面的参数进行 ...

  3. 视频客观质量评价工具:MSU Video Quality Measurement Tool【ssim,psnr】

    MSU Video Quality Measurement Tool(msu vqmt)是莫斯科国立大学(Moscow State University)的Graphics and Media Lab ...

  4. 图像质量评价方法PSNR+SSIM&&评估指标SROCC,PLCC

    update:2018-04-07 今天发现ssim的计算里面有高斯模糊,为了快速计算,先对每个小块进行计算,然后计算所有块的平均值.可以参考源代码实现,而且代码实现有近似的在里面!matlab中中图 ...

  5. 视频质量评估学习Note

    术语"编解码器 Coder/Decoder"是压缩器/解压缩器或编码器/解码器一词的缩写.顾名思义,编码可使视频文件变小以进行存储,然后在需要再次使用时将压缩后的数据转换成可用的图 ...

  6. 视频主观质量评价工具:MSU Perceptual Video Quality tool

    MSU Perceptual Video Quality tool是莫斯科国立大学(Moscow State University)的Graphics and Media Lab制作的一款视频主观评价 ...

  7. Pixelmetrix :OTT Media Grinder (OTT TV 质量评价设备)

    有关OTT TV 质量评价方法方面的研究少之又少.国内貌似还几乎没有相关的研究.不过在国外已经找到相关的产品了,翻译了一下产品手册的部分内容,很有参考价值,尤其是其提出的8个指标. 概述 OTT Me ...

  8. HDTV(1920x1080)码率和视频质量关系的研究 1 (前期准备)

    Hans Hoffmann等人在论文<Studies on the Bit Rate Requirements for a HDTV Format With 1920 x 1080 pixel ...

  9. BP神经网络及其在教学质量评价中 的应用

    本文学习笔记是自己的理解,如有错误的地方,请大家指正批评.共同进步.谢谢! 之前的教学质量评价,仅仅是通过对教学指标的简单处理.如求平均值或人为的给出各指标的权值来加权求和,其评价结果带有非常大主观性 ...

随机推荐

  1. 一个纠结的Linux定时任务

    昨天写了一个Linux定时任务,搞了半天才是搞好,现在分享下我犯得错误 首先在Linux根目录下创建一个目录 mkdir cat_crazy 进去创建一个shell脚本test.sh,内容是: #!/ ...

  2. vmware漏洞之二——简评:实战VMware虚拟机逃逸漏洞

    下文取自360,是vmware exploit作者自己撰写的.本文从实验角度对作者的文章进行解释,有助于学习和理解.文章虚线内或红色括号内为本人撰写. ------------------------ ...

  3. Single Number II(LintCode)

    Single Number II Given 3*n + 1 numbers, every numbers occurs triple times except one, find it. Examp ...

  4. 【分块】【暴力】XVII Open Cup named after E.V. Pankratiev Grand Prix of Moscow Workshops, Sunday, April 23, 2017 Problem I. Rage Minimum Query

    1000w的数组,一开始都是2^31-1,然后经过5*10^7次随机位置的随机修改,问你每次的全局最小值. 有效的随机修改的期望次数很少,只有当修改到的位置恰好是当前最小值的位置时才需要扫一下更新最小 ...

  5. Problem A: 指针:调用自定义交换函数,完成三个数整从小到大排列

    #include<stdio.h> int swap(int *p1,int *p2) { int flag; if(*p1>*p2) { flag=*p1; *p1=*p2; *p ...

  6. [bzoj1011](HNOI2008)遥远的行星(近似运算)

    Description 直 线上N颗行星,X=i处有行星i,行星J受到行星I的作用力,当且仅当i<=AJ.此时J受到作用力的大小为 Fi->j=Mi*Mj/(j-i) 其中A为很小的常量, ...

  7. Word中公式从单栏排版变为双栏排版后公式和编号错开了

    如上图公式(2),把自己做的共识从通栏复制到期刊的双栏里就变成这样了(先复制过来参考文献,再复制正文,那么参考文献没事),原来一直搞不懂,今天把它显示所有标记发现多了个制表符(我原来以为是行标记),鼠 ...

  8. TSynAuthentication SESSION验证

    TSynAuthentication SESSION验证 服务端维护的SESSIONS,实质上是一个array of integer,保存的是客户端的SESSIONID. SESSIONID可以由客户 ...

  9. 获取dataset结果集的第一行第一列字段

    DataSet fileNameDs = DbHelper.excuteSqlResultDataSet(strSql); ) { DataTable fileNameDt = fileNameDs. ...

  10. [Linux Memory] 用/proc/stat计算cpu的占用率

    转载自:http://blog.csdn.net/pppjob/article/details/4060336 在Linux下,CPU利用率分为用户态,系统态和空闲态,分别表示CPU处于用户态执行的时 ...