图像清晰度的评价及分析

图像清晰度的评价及分析

2016年07月28日 17:54:22 clxiaoclxiao 阅读数:17963更多

个人分类: opencv

在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的重要指标,它能够较好的与人的主观感受相对应,图像的清晰度不高表现出图像的模糊。本文针对无参考图像质量评价应用,对目前几种较为常用的、具有代表性清晰度算法进行讨论分析,为实际应用中选择清晰度算法提供依据。

(1)Brenner 梯度函数

Brenner梯度函数是最简单的梯度评价函数,它只是简单的计算相邻两个像素灰度差的平方,该函数定义如下:

其中:f(x,y) 表示图像f对应像素点(x,y)的灰度值,D(f)为图像清晰度计算结果(下同)。

(2)Tenengrad 梯度函数

Tenengrad 梯度函数采用Sobel算子分别提取水平和垂直方向的梯度值,基与Tenengrad 梯度函数的图像清晰度定义如下:

G(x,y) 的形式如下:

其中:T是给定的边缘检测阈值,Gx和Gy分别是像素点(x,y)处Sobel水平和垂直方向边缘检测算子的卷积,建议使用以下的Sobel算子模板来检测边缘:

(3)Laplacian 梯度函数

基于Laplacian 梯度函数的图像星清晰度的定义如下:

其中G(x,y)是像素点(x,y)处Laplacian算子的卷积。

(4)SMD(灰度方差)函数

当完全聚焦时,图像最清晰,图像中的高频分量也最多,故可将灰度变化作为聚焦评价的依据,灰度方差法的公式如下:

(5)SMD2 (灰度方差乘积)函数

灰度差分评价函数具有较好的计算性能,但其缺点也很明显,即在焦点附近灵敏度不高,即该函数在极值点附近过于平坦,从而导致聚焦精度难以提高。在文章《一种快速高灵敏度聚焦评价函数》中提出了一种新的评价函数,称之为灰度方差乘积法,即对每一个像素领域两个灰度差相乘后再逐个像素累加,该函数定义如下:

(6)方差函数

因为清晰聚焦的图像有着比模糊图像更大的灰度差异,可以将方差函数作为评价函数:

其中:为整幅图像的平均灰度值,该函数对噪声比较敏感,图像画面越纯净,函数值越小。

(7)能量梯度函数

能量梯度函数更适合实时评价图像清晰度,该函数定义如下:

(8)Vollath函数

Vollath函数定义如下:

其中:为整幅图像的平均灰度值,M和N分别为图像宽和高。

(9)熵函数

基于统计特征的熵函数是衡量图像信息丰富程度的一个重要指标,有信息论可知,一幅图像 f 的信息量是由该图像的信息熵 D(f) 来度量:

其中:Pi 是图像中灰度值为i的像素出现的概率,L为灰度级总数(通常取值256)。根据Shannon信息论,熵最大时信息量最多。将此原理应用到对焦过程,D(f)越大则图像越清晰。熵函数灵敏度不高,依据图像内容不同容易出现与真实情况相反的结果。

(10) EAV点锐度算法函数

徐贵力、张霞等提出了一种基于边缘锐度的算法用于评价图像的清晰度。通过统计图像某一边缘方向的灰度变化情况来评价。计算公式如下:

其中:df/dx为边缘法向的灰度变化率,f(b) - f(a)为该方向的总体灰度变化。该算法只对图像的特定边缘区域做统计,能否代表整幅图像的清晰度仍有疑问,此外计算前需人工选定边缘区域,不便实现程序运算的自动化,因为王鸿南等在论文 图像清晰度评价方法研究 中对上述算法进行了改进,改进如下:

a)  将针对边缘的梯度计算改为逐个像素领域梯度的计算,以便算法能对图像的整体进行评价,并使算法实现自动化。

b)  对方格像素 8 领域的灰度变化进行距离加权,水平和垂直方向的权重为1,而45度和135度方向的权重为 

c)  对计算结果按图像的大小进行规格化,以便于图像的对比。

经过以上三步改进后的点锐度算法为:

其中:M和N为图像的行数和列数。

(11)Reblur 二次模糊
         如果一幅图像已经模糊了,那么再对它进行一次模糊处理,高频分量变化不大;但如果原图是清楚的,对它进行一次模糊处理,则高频分量变化会非常大。因此可以通过对待评测图像进行一次高斯模糊处理,得到该图像的退化图像,然后再比较原图像和退化图像相邻像素值的变化情况,根据变化的大小确定清晰度值的高低,计算结果越小表明图像越清晰,反之越模糊。这种思路可称作基于二次模糊的清晰度算法,其算法简化流程如下图:

(12)NRSS 梯度结构相似度
          Wang等利用人类视觉系统(HVS)非常适于提取目标的结构信息的特点,提出了图像结构相似度概念(SSIM),认为只要能计算目标结构信息的变化,就能够得到感知图像失真值。杨春玲等基于此思路,将该方法引入到计算全参考图像的清晰度评价中,认为图像的清晰度可以使用目标图像与参考图像间的结构相似度来表示,而图像间的结构相似度包含以下三个部分的比较:

而C1、C2和C3 是为了避免分母为0而设的常数。图像的结构相似度由下式计算可得:

为简单起见可以令         alpha=beta=gamma=1
        谢小甫等进一步改进了杨春玲等的方法,根据结构相似度的相关思想结合人烟视觉系统的相关特点,设计了无参考图像清晰度的评价指标(NRSS),计算方法如下:

(a)为待评价图像构造参考图像。定义待评价图像为I,而参考图像 ,即对待评价图像 I 进行低通滤波得到参考图像 。实验表明,基于圆盘模型的均值滤波器和高斯模型的平滑滤波器都可以取得较好的效果,为了更好的与成像系统匹配,建议采用 7x7 大小且 的高斯平滑滤波器。在需要实时处理的工程应用中7x7均值滤波器并不会是评价效果下降很大。
   (b)提取图像 I 和 的梯度信息。利用人眼对水平和垂直方向的边缘信息最为敏感的特性,使用Sobel算子分别提取水平和垂直方向的边缘信息,定义 I 和 的梯度图像是G 和 
   (c)找出梯度图像 G 中梯度信息最丰富的 N 个图像块。将图像G划分为 8x8 的小块,块间的步长为4,即相邻块有50%重叠,这是为了避免丢失重要的边缘。计算每块的方差,方差越大说明梯度信息越丰富,找出其中方差最大的N块,记为,对应的中的对应块定义为  。N的值大小直接影响评价结果,同时也影响算法运行时间。在后面的实验中设 N = 64。
   (d)计算结构清晰度NRSS。先计算每个xi和 yi的结构相似度SSIM(xi, yi),其中SSIM计算方法参见前面的定义,则图像的无参考结构清晰度定义为:

(13)FFT 图像变换域

待写!

(14)No-Reference Perceptual Quality Assessment of JPEG Compressed Images

在这篇文章中,作者【Zhou Wang】等针对JPEG压缩图片提出了一种新的无参图像质量评价方法。
         JPEG图片是基于8x8块的DCT变换的编码技巧,它是有损的因为对DCT变换系数做量化的时候会产生量化误差。量化就会导致模糊和块效应。模糊主要是因为丢失了高频的DCT系数。块效应是由于块边界的不连续性,因为每个分块的量化是独立的。

我们用 f(x, y) 表示一幅图片,图片尺寸为 MxN,计算跨越每个水平线的信号差:

首先计算块效应,块效应的定义就是左右跨越边界的信号差的平均值:

然后计算块内信号差的平均值:

再计算zero-crossing(ZC)率,ZC是边界跨零的意思,也就是说相邻两个点的值的乘积为负数,也就是一正一负,因此对于[1, N - 2]范围内的y,定义如下变量:

于是水平方向的ZC率定义如下:

同理,我们可以计算垂直方向的几个指标值 。最后得到这几个指标的水平和垂直方向的平均值:

有很多方式把这几个指标联系起来组成一个质量评价模型。此处我们采用如下图像质量定义:

其中 是从大量实验中提炼出来的模型参数。本文中所采用的参数值如下:

(15)No-Reference Image Quality Assessment forJPEG/JPEG2000 Coding

这篇文章的作者在前面那篇文章的基础上,重新定义了新的质量指标:

其实 S 就是在(14)中已经得到的质量评价值。

(16)No-Reference Image Quality Assessment  using Blur and Noise
     图像质量受很多因素影响,例如:亮度、对比度、色调、边界、噪声、模糊等。在本文中,我们假定噪声和模糊是影响图像质量最重要的两个因素。简单起见,只对彩色图像的亮度分量做模糊和噪声监测。本文的图像质量评价算法框架图如下:

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是权值。通过线性回归分析获取这些权值。本文中这些权值为:

实验

为了测试以上评价方法的准确性,我们才用C语言编程实现以上算法,由于以上算法都是针对灰度图,因此在处理彩色图像的时候,首先将彩色图像转化为灰度图(简单起见,转化算法采用了 grey = (R + G + B) /3)。 测试图片采用了美国德州大学图像与视频工程实验室提供的图像质量评价数据库。该图像数据库包含了29幅原始图像,并利用原始图像生成了包括JPEG压缩、JPEG2000压缩、高斯模糊、Fastfsding(在Fastading通道中传输传输错误)、WhiteNoise(白噪声)五类失真在内的失真图像共779幅。此处我们选用JPEG目录下的部分图片做测试。
       首先来看看第一组测试图片:

DatabaseRelease2\jpeg\img29.bmp

DatabaseRelease2\jpeg\img42.bmp   (原始图片)

DatabaseRelease2\jpeg\img77.bmp

DatabaseRelease2\jpeg\img81.bmp

DatabaseRelease2\jpeg\img183.bmp

测试数据(阈值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的时候出现失误,这两个图片的质量都非常差

第二组测试图片(省略了图片显示,有兴趣的朋友可以去网上下载):

DatabaseRelease2\jpeg\img20.bmp    (原始图片)

DatabaseRelease2\jpeg\img23.bmp

DatabaseRelease2\jpeg\img56.bmp

DatabaseRelease2\jpeg\img152.bmp

DatabaseRelease2\jpeg\img215.bmp

DatabaseRelease2\jpeg\img228.bmp

第二组测试数据(阈值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

Remark:
  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的时候出现失误,这两个图片质量都非常差。

参考文献:

1. 面向无参考图像的清晰度评价方法研究

2. 图像清晰度评价方法研究

3. 数字图像清晰度评价函数的研究与改进

4. 一种针对图像模糊的无参考质量评价指标

5. 一种快速高灵敏度聚焦评价函数

6. No-Reference Perceptual Quality Assessment of JPEG Compressed Images

7. No-Reference Image Quality Assessment forJPEG/JPEG2000 Coding

8. No-Reference Image Quality Assessment using Blur and Noise

图像清晰度的评价及分析

2016年07月28日 17:54:22 clxiaoclxiao 阅读数:17963更多

个人分类: opencv

在无参考图像的质量评价中,图像的清晰度是衡量图像质量优劣的重要指标,它能够较好的与人的主观感受相对应,图像的清晰度不高表现出图像的模糊。本文针对无参考图像质量评价应用,对目前几种较为常用的、具有代表性清晰度算法进行讨论分析,为实际应用中选择清晰度算法提供依据。

(1)Brenner 梯度函数

Brenner梯度函数是最简单的梯度评价函数,它只是简单的计算相邻两个像素灰度差的平方,该函数定义如下:

其中:f(x,y) 表示图像f对应像素点(x,y)的灰度值,D(f)为图像清晰度计算结果(下同)。

(2)Tenengrad 梯度函数

Tenengrad 梯度函数采用Sobel算子分别提取水平和垂直方向的梯度值,基与Tenengrad 梯度函数的图像清晰度定义如下:

G(x,y) 的形式如下:

其中:T是给定的边缘检测阈值,Gx和Gy分别是像素点(x,y)处Sobel水平和垂直方向边缘检测算子的卷积,建议使用以下的Sobel算子模板来检测边缘:

(3)Laplacian 梯度函数

基于Laplacian 梯度函数的图像星清晰度的定义如下:

其中G(x,y)是像素点(x,y)处Laplacian算子的卷积。

(4)SMD(灰度方差)函数

当完全聚焦时,图像最清晰,图像中的高频分量也最多,故可将灰度变化作为聚焦评价的依据,灰度方差法的公式如下:

(5)SMD2 (灰度方差乘积)函数

灰度差分评价函数具有较好的计算性能,但其缺点也很明显,即在焦点附近灵敏度不高,即该函数在极值点附近过于平坦,从而导致聚焦精度难以提高。在文章《一种快速高灵敏度聚焦评价函数》中提出了一种新的评价函数,称之为灰度方差乘积法,即对每一个像素领域两个灰度差相乘后再逐个像素累加,该函数定义如下:

(6)方差函数

因为清晰聚焦的图像有着比模糊图像更大的灰度差异,可以将方差函数作为评价函数:

其中:为整幅图像的平均灰度值,该函数对噪声比较敏感,图像画面越纯净,函数值越小。

(7)能量梯度函数

能量梯度函数更适合实时评价图像清晰度,该函数定义如下:

(8)Vollath函数

Vollath函数定义如下:

其中:为整幅图像的平均灰度值,M和N分别为图像宽和高。

(9)熵函数

基于统计特征的熵函数是衡量图像信息丰富程度的一个重要指标,有信息论可知,一幅图像 f 的信息量是由该图像的信息熵 D(f) 来度量:

其中:Pi 是图像中灰度值为i的像素出现的概率,L为灰度级总数(通常取值256)。根据Shannon信息论,熵最大时信息量最多。将此原理应用到对焦过程,D(f)越大则图像越清晰。熵函数灵敏度不高,依据图像内容不同容易出现与真实情况相反的结果。

(10) EAV点锐度算法函数

徐贵力、张霞等提出了一种基于边缘锐度的算法用于评价图像的清晰度。通过统计图像某一边缘方向的灰度变化情况来评价。计算公式如下:

其中:df/dx为边缘法向的灰度变化率,f(b) - f(a)为该方向的总体灰度变化。该算法只对图像的特定边缘区域做统计,能否代表整幅图像的清晰度仍有疑问,此外计算前需人工选定边缘区域,不便实现程序运算的自动化,因为王鸿南等在论文 图像清晰度评价方法研究 中对上述算法进行了改进,改进如下:

a)  将针对边缘的梯度计算改为逐个像素领域梯度的计算,以便算法能对图像的整体进行评价,并使算法实现自动化。

b)  对方格像素 8 领域的灰度变化进行距离加权,水平和垂直方向的权重为1,而45度和135度方向的权重为 

c)  对计算结果按图像的大小进行规格化,以便于图像的对比。

经过以上三步改进后的点锐度算法为:

其中:M和N为图像的行数和列数。

(11)Reblur 二次模糊
         如果一幅图像已经模糊了,那么再对它进行一次模糊处理,高频分量变化不大;但如果原图是清楚的,对它进行一次模糊处理,则高频分量变化会非常大。因此可以通过对待评测图像进行一次高斯模糊处理,得到该图像的退化图像,然后再比较原图像和退化图像相邻像素值的变化情况,根据变化的大小确定清晰度值的高低,计算结果越小表明图像越清晰,反之越模糊。这种思路可称作基于二次模糊的清晰度算法,其算法简化流程如下图:

(12)NRSS 梯度结构相似度
          Wang等利用人类视觉系统(HVS)非常适于提取目标的结构信息的特点,提出了图像结构相似度概念(SSIM),认为只要能计算目标结构信息的变化,就能够得到感知图像失真值。杨春玲等基于此思路,将该方法引入到计算全参考图像的清晰度评价中,认为图像的清晰度可以使用目标图像与参考图像间的结构相似度来表示,而图像间的结构相似度包含以下三个部分的比较:

而C1、C2和C3 是为了避免分母为0而设的常数。图像的结构相似度由下式计算可得:

为简单起见可以令         alpha=beta=gamma=1
        谢小甫等进一步改进了杨春玲等的方法,根据结构相似度的相关思想结合人烟视觉系统的相关特点,设计了无参考图像清晰度的评价指标(NRSS),计算方法如下:

(a)为待评价图像构造参考图像。定义待评价图像为I,而参考图像 ,即对待评价图像 I 进行低通滤波得到参考图像 。实验表明,基于圆盘模型的均值滤波器和高斯模型的平滑滤波器都可以取得较好的效果,为了更好的与成像系统匹配,建议采用 7x7 大小且 的高斯平滑滤波器。在需要实时处理的工程应用中7x7均值滤波器并不会是评价效果下降很大。
   (b)提取图像 I 和 的梯度信息。利用人眼对水平和垂直方向的边缘信息最为敏感的特性,使用Sobel算子分别提取水平和垂直方向的边缘信息,定义 I 和 的梯度图像是G 和 
   (c)找出梯度图像 G 中梯度信息最丰富的 N 个图像块。将图像G划分为 8x8 的小块,块间的步长为4,即相邻块有50%重叠,这是为了避免丢失重要的边缘。计算每块的方差,方差越大说明梯度信息越丰富,找出其中方差最大的N块,记为,对应的中的对应块定义为  。N的值大小直接影响评价结果,同时也影响算法运行时间。在后面的实验中设 N = 64。
   (d)计算结构清晰度NRSS。先计算每个xi和 yi的结构相似度SSIM(xi, yi),其中SSIM计算方法参见前面的定义,则图像的无参考结构清晰度定义为:

(13)FFT 图像变换域

待写!

(14)No-Reference Perceptual Quality Assessment of JPEG Compressed Images

在这篇文章中,作者【Zhou Wang】等针对JPEG压缩图片提出了一种新的无参图像质量评价方法。
         JPEG图片是基于8x8块的DCT变换的编码技巧,它是有损的因为对DCT变换系数做量化的时候会产生量化误差。量化就会导致模糊和块效应。模糊主要是因为丢失了高频的DCT系数。块效应是由于块边界的不连续性,因为每个分块的量化是独立的。

我们用 f(x, y) 表示一幅图片,图片尺寸为 MxN,计算跨越每个水平线的信号差:

首先计算块效应,块效应的定义就是左右跨越边界的信号差的平均值:

然后计算块内信号差的平均值:

再计算zero-crossing(ZC)率,ZC是边界跨零的意思,也就是说相邻两个点的值的乘积为负数,也就是一正一负,因此对于[1, N - 2]范围内的y,定义如下变量:

于是水平方向的ZC率定义如下:

同理,我们可以计算垂直方向的几个指标值 。最后得到这几个指标的水平和垂直方向的平均值:

有很多方式把这几个指标联系起来组成一个质量评价模型。此处我们采用如下图像质量定义:

其中 是从大量实验中提炼出来的模型参数。本文中所采用的参数值如下:

(15)No-Reference Image Quality Assessment forJPEG/JPEG2000 Coding

这篇文章的作者在前面那篇文章的基础上,重新定义了新的质量指标:

其实 S 就是在(14)中已经得到的质量评价值。

(16)No-Reference Image Quality Assessment  using Blur and Noise
     图像质量受很多因素影响,例如:亮度、对比度、色调、边界、噪声、模糊等。在本文中,我们假定噪声和模糊是影响图像质量最重要的两个因素。简单起见,只对彩色图像的亮度分量做模糊和噪声监测。本文的图像质量评价算法框架图如下:

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是权值。通过线性回归分析获取这些权值。本文中这些权值为:

实验

为了测试以上评价方法的准确性,我们才用C语言编程实现以上算法,由于以上算法都是针对灰度图,因此在处理彩色图像的时候,首先将彩色图像转化为灰度图(简单起见,转化算法采用了 grey = (R + G + B) /3)。 测试图片采用了美国德州大学图像与视频工程实验室提供的图像质量评价数据库。该图像数据库包含了29幅原始图像,并利用原始图像生成了包括JPEG压缩、JPEG2000压缩、高斯模糊、Fastfsding(在Fastading通道中传输传输错误)、WhiteNoise(白噪声)五类失真在内的失真图像共779幅。此处我们选用JPEG目录下的部分图片做测试。
       首先来看看第一组测试图片:

DatabaseRelease2\jpeg\img29.bmp

DatabaseRelease2\jpeg\img42.bmp   (原始图片)

DatabaseRelease2\jpeg\img77.bmp

DatabaseRelease2\jpeg\img81.bmp

DatabaseRelease2\jpeg\img183.bmp

测试数据(阈值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的时候出现失误,这两个图片的质量都非常差

第二组测试图片(省略了图片显示,有兴趣的朋友可以去网上下载):

DatabaseRelease2\jpeg\img20.bmp    (原始图片)

DatabaseRelease2\jpeg\img23.bmp

DatabaseRelease2\jpeg\img56.bmp

DatabaseRelease2\jpeg\img152.bmp

DatabaseRelease2\jpeg\img215.bmp

DatabaseRelease2\jpeg\img228.bmp

第二组测试数据(阈值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

Remark:
  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的时候出现失误,这两个图片质量都非常差。

参考文献:

1. 面向无参考图像的清晰度评价方法研究

2. 图像清晰度评价方法研究

3. 数字图像清晰度评价函数的研究与改进

4. 一种针对图像模糊的无参考质量评价指标

5. 一种快速高灵敏度聚焦评价函数

6. No-Reference Perceptual Quality Assessment of JPEG Compressed Images

7. No-Reference Image Quality Assessment forJPEG/JPEG2000 Coding

8. No-Reference Image Quality Assessment using Blur and Noise

原文地址:https://www.cnblogs.com/tianqiang/p/10004570.html

时间: 2024-10-12 20:15:22

图像清晰度的评价及分析的相关文章

OpenCV 图像清晰度(相机自动对焦)

相机的自动对焦要求相机根据拍摄环境和场景的变化,通过相机内部的微型驱动马达,自动调节相机镜头和CCD之间的距离,保证像平面正好投影到CCD的成像表面上.这时候物体的成像比较清晰,图像细节信息丰富. 相机自动对焦的过程,其实就是对成像清晰度评价的过程,对焦不准确,拍摄出来的图像清晰度低,视觉效果模糊,如果是在工业检测测量领域,对焦不准导致的后果可能是致命的:对焦准确的图像清晰度较高,层次鲜明,对比度高. 图像清晰度评价算法有很多种,在空域中,主要思路是考察图像的领域对比度,即相邻像素间的灰度特征的

图像水波纹特效原理分析和实现

前段时间注意到一些软件上有图像的水波纹特效,似乎很炫,想深入了解下该效果的具体原理与实现方式,上网搜了不少些资料,都讲得不清不楚,没办法只能靠自己了.花了一整个下午先去复习了高中物理的波的知识,试着自己来推导原理并实现了下.下面的推导是我根据一些资料以及自己分析出的,如有错误,望请指出.上张效果图先: 基本原理 水波效果反映到图像上,则是像素点的偏移.因此对图像的处理就如同图像缩放一样,对于输出图像的每个点,计算其对应于原始输入图像的像素点,通过插值的方法即可计算其颜色值. 先说下关于水波的基础

Atitit 图像清晰度 模糊度 检测 识别 评价算法 原理

1.1. 图像边缘一般都是通过对图像进行梯度运算来实现的1 1.2. Remark: 1 1.3.  1.失焦检测. 衡量画面模糊的主要方法就是梯度的统计特征,通常梯度值越高,画面的边缘信息越丰富,图像越清晰.1 1.4. 利用边缘检测 ,模糊图片边缘会较少2 1.5. 通过dct比较.Dct分离出的低频信号比较2 1.6. 参考资料2 1.1. 图像边缘一般都是通过对图像进行梯度运算来实现的 1.2. Remark:   1)肉眼可以分辨以上五幅图像的质量排名为:img42 > img81 >

图像清晰度评价

http://blog.csdn.net/liuuze5/article/details/50773160 1.灰度差 [plain] view plain copy function out_val=difference_absolute(img); I=rgb2gray(img); [m,n]=size(I); f=0.0; I=double(I); for x=1:m-1; for y=1:n-1; Ix=I(x+1,y)-I(x,y); Iy=I(x,y+1)-I(x,y); f=f+a

Atitit 图像清晰度 模糊度 检测 识别 评价算法 源码实现attilax总结

1.1. 原理,主要使用像素模糊后的差别会变小1 1.2. 具体流程1 1.3. 提升性能 可以使用采样法即可..1 1.4. 实现代码1 1.1. 原理,主要使用像素模糊后的差别会变小 通过计算横向前后俩点像素的差异..然后累加即可.. 1.2. 具体流程 图片灰度化,这样可以只保留hsv分量了...然后读取v分量,就是明亮度了.. Hs色相和饱和度全部去除了..   比较v分量的差异即可.. 1.3. 提升性能 可以使用采样法即可.. 1.4. 实现代码 package com.attila

基于用户电影评价的分析预测

故事背景 在我们的日常生活中,人们已经习惯了看电影.但是,每个人的偏好是不同的,有的人可能喜欢战争片,有人可能更喜欢艺术片,而有的人则可能喜欢爱情片,等等.现在,我们收集了一些的客户和电影的相关信息,目的是找出客户对特定影片的评分,从而预测出客户有可能喜爱的电影并推荐给客户.本次的大数据处理,使用了单词统计.基于用户的协同过滤算法等. 分析预测技术 分析工具:基于Hadoop的MapReduce 数据预处理:利用单词统计将一部分重复的.无用的数据过滤掉 算法:基于用户的协同过滤算法 数据可视化:

列举一些算法对照片、图像进行相似度对比分析比较

首先: 图片如下                                                    18.jpg                                                                                    19.jpg                                                    20.jpg                                   

二维图像的投影和图像重建分析之傅里叶变换法

摘要:图像重建有变换法和迭代法,本文主要分析变换法.根据二维图像的投影,与其傅里叶变换之间的关系,得出图像重建的4种方法,直接傅里叶反变换.先反投影后滤波.先滤波后反投影.卷积反投影.直接傅里叶反变换法利用中心切片定理,先求投影数据的一维傅里叶变换,然后二维插值栅格化得到二维傅里叶变换数据,逆变换后得出目标图像.先反投影后滤波是将投影数据直接反投影,然后频域中通过二维锥形滤波,得到目标图像.先滤波后反投影时在反投影前对数据修正(滤波),卷积反投影与其类似,只是将频率中滤波拿到时域中做卷积运算.对

图像全参考客观评价算法比较

Lin Zhang等人在论文<A COMPREHENSIVEEVALUATION OF FULL REFERENCE IMAGE QUALITY ASSESSMENT ALGORITHMS>中,比较了几种全参考图像质量评价算法,在此记录一下他们的结果. 下表所示是他们所用的图像库,包含了:TID2008database,CSIQ database,LIVEdatabase,IVCdatabase,Toyama-MICTdatabase,Cornell A57 database,以及 Wirel