无参考图像的质量评价
转自: http://nkwavelet.blog.163.com/blog/static/227756038201461532247117
在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的重要指标,它能够较好的与人的主观感受相对应,图像的清晰度不高表现出图像的模糊。本文针对无参考图像质量评价应用,对目前几种较为常用的、具有代表性清晰度算法进行讨论分析,为实际应用中选择清晰度算法提供依据。
其中:f(x,y) 表示图像f对应像素点(x,y)的灰度值,D(f)为图像清晰度计算结果(下同)。
因此基于Laplacian 梯度函数的图像星清晰度的定义如下:
其中G(x,y)是像素点(x,y)处Laplacian算子的卷积。
其中:为整幅图像的平均灰度值,该函数对噪声比较敏感,图像画面越纯净,函数值越小。
其中:为整幅图像的平均灰度值,M和N分别为图像宽和高。
其中:Pi 是图像中灰度值为i的像素出现的概率,L为灰度级总数(通常取值256)。根据Shannon信息论,熵最大时信息量最多。将此原理应用到对焦过程,D(f)越大则图像越清晰。熵函数灵敏度不高,依据图像内容不同容易出现与真实情况相反的结果。
其中:df/dx为边缘法向的灰度变化率,f(b) - f(a)为该方向的总体灰度变化。该算法只对图像的特定边缘区域做统计,能否代表整幅图像的清晰度仍有疑问,此外计算前需人工选定边缘区域,不便实现程序运算的自动化,因为王鸿南等在论文 图像清晰度评价方法研究 中对上述算法进行了改进,改进如下:
其中:M和N为图像的行数和列数。
如果一幅图像已经模糊了,那么再对它进行一次模糊处理,高频分量变化不大;但如果原图是清楚的,对它进行一次模糊处理,则高频分量变化会非常大。因此可以通过对待评测图像进行一次高斯模糊处理,得到该图像的退化图像,然后再比较原图像和退化图像相邻像素值的变化情况,根据变化的大小确定清晰度值的高低,计算结果越小表明图像越清晰,反之越模糊。这种思路可称作基于二次模糊的清晰度算法,其算法简化流程如下图:
Wang等利用人类视觉系统(HVS)非常适于提取目标的结构信息的特点,提出了图像结构相似度概念(SSIM),认为只要能计算目标结构信息的变化,就能够得到感知图像失真值。杨春玲等基于此思路,将该方法引入到计算全参考图像的清晰度评价中,认为图像的清晰度可以使用目标图像与参考图像间的结构相似度来表示,而图像间的结构相似度包含以下三个部分的比较:
而C1、C2和C3 是为了避免分母为0而设的常数。图像的结构相似度由下式计算可得:
为简单起见可以令
谢小甫等进一步改进了杨春玲等的方法,根据结构相似度的相关思想结合人烟视觉系统的相关特点,设计了无参考图像清晰度的评价指标(NRSS),计算方法如下:
(b)提取图像 I 和 的梯度信息 。利用人眼对水平和垂直方向的边缘信息最为敏感的特性,使用Sobel算子分别提取水平和垂直方向的边缘信息,定义 I 和 的梯度图像是G 和 。
(c)找出梯度图像 G 中梯度信息最丰富的 N 个图像块。将图像G划分为 8x8 的小块,块间的步长为4,即相邻块有50%重叠,这是为了避免丢失重要的边缘。计算每块的方差,方差越大说明梯度信息越丰富,找出其中方差最大的N块,记为 ,对应的 中的对应块定义为 。 N的值大小直接影响评价结果,同时也影响算法运行时间。在后面的实验中设 N = 64。
(d)计算结构清晰度NRSS。先计算每个xi和 yi的结构相似度SSIM(xi, yi),其中SSIM计算方法参见前面的定义,则图像的无参考结构清晰度定义为:
JPEG图片是基于8x8块的DCT变换的编码技巧,它是有损的因为对DCT变换系数做量化的时候会产生量化误差。量化就会导致模糊和块效应。模糊主要是因为丢失了高频的DCT系数。块效应是由于块边界的不连续性,因为每个分块的量化是独立的。
首先计算块效应,块效应的定义就是左右跨越边界的信号差的平均值:
然后计算块内信号差的平均值:
再计算zero-crossing(ZC)率,ZC是边界跨零的意思,也就是说相邻两个点的值的乘积为负数,也就是一正一负,因此对于[1, N - 2]范围内的y,定义如下变量:
于是水平方向的ZC率定义如下:
同理,我们可以计算垂直方向的几个指标值 。最后得到这几个指标的水平和垂直方向的平均值:
有很多方式把这几个指标联系起来组成一个质量评价模型。此处我们采用如下图像质量定义:
其中 是从大量实验中提炼出来的模型参数。本文中所采用的参数值如下:
其实 S 就是在(14)中已经得到的质量评价值。
图像质量受很多因素影响,例如:亮度、对比度、色调、边界、噪声、模糊等。在本文中,我们假定噪声和模糊是影响图像质量最重要的两个因素。简单起见,只对彩色图像的亮度分量做模糊和噪声监测。本文的图像质量评价算法框架图如下:
A)模糊检测
模糊估计分为两个步骤:首先是边缘检测,然后是模糊确定。此处模糊估计是通过计算当前像素点与领域内像素点均值之差来确定。我们用f(x,y) 表示图片,其中 。定义水平绝对差如下:
如果当前像素点的 则该像素点就是一个候选的边缘点 . 如果 比它水平方向两个相邻的点 都大,则该像素点就被确认为一个边缘点。边缘点 的判断总结如下:
同理,按照以上的步骤我们可以计算垂直方向的值 。两者之大者称作Inverse Blurriness,用于最终的模糊判定依据。
低于阈值ThB的Inverse Blurriness 被认为是模糊的。实验测试表明此处的阈值ThB取值0.1。最后,边缘模糊的均值和比率为:
B)噪点检测
因为沿边缘的噪点视觉上不明显,因此我们只检测边缘之外的噪点。边缘检测会被噪点影响,因此在检测边缘之前做一个噪点滤波的预处理。在本文中,我们应用均值滤波来消除噪点。均值滤波之后的图像g(x,y)为:
候选的噪点估计如下:
同理可以在垂直方向计算对应的值。然后得到候选的噪点是:
其中N_cand(x,y)表示候选噪点,它在边缘区域为0。
噪点均值和比率为:
其中Sum_Noise是N(x,y)之和,Noise_cnt是噪点总数目。
C)噪点和模糊的组合
此处我们的图像质量评价指标定义如下:
其中w1、w2、w3、w4是权值。通过线性回归分析获取这些权值。本文中这些权值为:
首先来看看第一组测试图片:
测试数据(阈值T = 50)
算法 |
img29 |
img42 |
img77 |
img81 |
img183 |
Brenner |
791.45 |
1050.36 |
844.41 |
898.57 |
754.88 |
Tenengrad |
10.88 |
12.72 |
11.51 |
11.92 |
10.59 |
Laplacian |
8.507 |
14.47 |
9.05 |
9.86 |
9.08 |
SMD |
18.57 |
24.71 |
20.94 |
22.57 |
14.32 |
SMD2 |
168.19 |
293.15 |
196.84 |
217.17 |
128.57 |
Variance |
2107.86 |
2134.98 |
2083.19 |
2100.05 |
2110.90 |
Energy |
677.48 |
941.98 |
713.81 |
754.95 |
668.54 |
Vollath |
1940.97 |
1897.70 |
1910.28 |
1912.10 |
1940.81 |
Entropy |
7.00 |
7.38 |
7.26 |
7.38 |
5.24 |
EAV |
75.88 |
93.71 |
83.70 |
89.16 |
60.85 |
JPEG |
2.08 |
9.25 |
3.95 |
5.16 |
-1.53 |
JPEG2 |
2.12 |
4.99 |
3.90 |
4.60 |
1.04 |
Remark:
1)肉眼可以分辨以上五幅图像的质量排名为:img42 > img81 > img77 > img29 > img183
2)与主观感知一致的算法有:Brenner、Tenengrad、SMD、SMD2、Energy、Entropy、EAV、JPEG、JPEG2
3)Variance、Vollath算法所得数据非常接近,无法分辨出图像质量。
4)Laplacian在判断img29 和 img183的时候出现失误,这两个图片的质量都非常差
第二组测试数据(阈值T = 50)
算法 |
img20 |
img23 |
img56 |
img152 |
img215 |
img228 |
Brenner |
756.67 |
500.89 |
615.53 |
553.55 |
418.77 |
725.29 |
Tenengrad |
8.00 |
6.17 |
7.08 |
6.66 |
5.56 |
7.73 |
Laplacian |
11.36 |
6.04 |
8.02 |
6.87 |
5.78 |
10.86 |
SMD |
19.41 |
13.40 |
17.16 |
15.44 |
8.67 |
19.56 |
SMD2 |
231.65 |
120.85 |
169.69 |
141.39 |
81.10 |
224.10 |
Variance |
2773.79 |
2631.73 |
2690.92 |
2650.81 |
2649.59 |
2724.18 |
Energy |
775.58 |
466.00 |
581.42 |
510.01 |
421.47 |
743.86 |
Vollath |
2601.47 |
2535.77 |
2565.37 |
2542.39 |
2564.13 |
2558.90 |
Entropy |
7.15 |
6.84 |
7.28 |
7.21 |
4.16 |
7.29 |
EAV |
73.86 |
54.71 |
67.48 |
61.76 |
37.02 |
74.89 |
JPEG |
9.59 |
3.03 |
6.38 |
4.93 |
-1.87 |
8.62 |
JPEG2 |
5.00 |
3.03 |
4.88 |
4.51 |
1.03 |
4.99 |
1)肉眼可以分辨以上图片的质量排名为: img20 > img228 > img56 > img152 > img23 > img215
2)与主观感知一致的算法有:Brenner、Tenengrad、Laplacian、SMD2、Energy、JPEG、JPEG2
3)Vollat、Entropy 算法失误比较多。
4)SMD、EAV在判断img20 和 img228 的时候出现失误,这两个图片质量都非常好,肉眼有时候很难分辨,因此这种失误在可以接受的范围。
5)Variance 在判断img23 和 img215的时候出现失误,这两个图片质量都非常差。
3. 数字图像清晰度评价函数的研究与改进
7. No-Reference Image Quality Assessment forJPEG/JPEG2000 Coding
无参考图像的质量评价相关推荐
- 无参考图像的清晰度评价方法
在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的重要指标,它能够较好的与人的主观感受相对应,图像的清晰度不高表现出图像的模糊.本文针对无参考图像质量评价应用,对目前几种较为常用的.具有代表性 ...
- 【CV系列】无参考图像的清晰度评价方法,附NRSS的matlab实现
Date: 2018/3/11 参考:https://blog.csdn.net/real_myth/article/details/50827940 https://blog.csdn.net/wx ...
- 无参考图像的清晰度评价方法 (图像清晰度的评价指标)
无参考图像的清晰度评价方法 from: http://nkwavelet.blog.163.com/blog/static/227756038201461532247117 在无参考图像的质量评价中, ...
- 模糊图像检测-无参考图像的清晰度评价
转载自:https://zhuanlan.zhihu.com/p/97024018,本文只做个人记录学习使用,版权归原作者所有. 需求:在一堆图像中找到模糊图像,背景虚化(景深模式)的照片定义为清晰照 ...
- 无参考图像清晰度评价
转自: http://nkwavelet.blog.163.com/blog/static/227756038201461532247117 在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的 ...
- [论文阅读](图像/视频质量评价系列)
文章目录 [2021] (QoMEX) Image Super-Resolution Quality Assessment:Structural Fidelity Versus Statistical ...
- 无参考图像评价指标NIQE——自然图像质量
无参考图像评价指标NIQE--自然图像质量评价器 NIQE(Natural Image Quality Evaluator) 为何引入NIQE NIQE的背景 NIQE算法的具体过程 代码实现 NIQ ...
- 图像美学质量评价技术总结
1.1 图像美学(Image Aesthetics)评价数据集: AVA(2012年):西班牙巴塞罗那自治大学计算机视觉中心的Murray等构建了一个面向图像视觉美学质量分析与度量的大规模图像数据库( ...
- matlab无参考图像质量评价,无参考屏幕内容图像质量评价
1 引言 1.1 研究背景及意义 随着计算机和移动互联网技术的快速发展, 多屏互动[.视频游戏[.远程教育等多客户端通信系统也得到了飞速的发展.在这类系统中, 各类终端之间可以相互通信, 以实现屏幕内 ...
最新文章
- c盘怎么扩容_给电脑减压,C盘清理全攻略!
- 手把手带你玩转 AWS Lambda
- IP通信基础 5月8日
- 解决scrollView像素自动下移的办法
- .Net Telerik Web UI 安装和使用入门
- NDArray自动求导
- 叶老师的对于数学的分析的摘抄!十分的认可!
- [BTS06]BizTalk2006 SDK阅读笔记(一) 角色
- vertex 3.0 与SpringBoot混合开发之初探
- (转) Hibernate框架基础——操纵持久化对象的方法(Session中)
- 官宣!CSDN 发布 C 站软件工程师能力认证
- 软件测试入坑建议:新手零基础怎么入门软件测试?你还缺这几份资料!
- PHP小马,大马实现分析编写
- 如何用word制作英语答题卡_英语考试答题卡(word 版)
- 怎么完全卸载赛门铁克_赛门铁克(sep)卸载方法
- intel h61 linux驱动下载,intel h61主板驱动
- 以太网知识3:以太网芯片MAC和PHY的关系
- 2017届腾讯校园招聘笔试——最后一道编程题
- 青少年CTF--misc部分题解
- 【R语言】5种探索数据分布的可视化技术
热门文章
- Git操作远程仓库及解决合并冲突
- oracle 在中国的合作伙伴名单(二)
- linux过滤拷贝,MySQL搭建带过滤的复制环境
- java rc4_java实现的RC4加密解密算法示例
- vue-router4.x 路由配置(多种方案)
- 计算机管理任务计划程序全部禁用,Win7系统中的一些自动维护计划、任务关闭、禁用方法图文教程...
- TTI bundling
- php控制步进电机,步进电机控制程序(c语言+51单片机)
- Unity Editor Extensions – Inspectors私人定制
- 【JavaWeb】快速通关JSP