SSIM公式:结构相似性计算原理,基于SSIM的图像质量评价

SSIM公式:结构相似性计算原理,基于SSIM的图像质量评价

提示:据说这是科大讯飞的算法面试题


大厂算法面试题:讲一下SSIM公式;

从均方误差MSE和峰值信噪比PSNR说起

图像降噪后的质量,最直接的思路即比较**降噪后的图像与真实图像(distortion-free)**之间的差剖面,即可视误差,通过 visibility of errors 评价图像质量。

PSNR 和 MSE 就是基于这种简单直接的思路确定的指标,

MSE(Mean Squared Error),顾名思义,定义略。

PSNR(Peak Signal to Noise Ratio),峰值信噪比,即峰值信号的能量与噪声的平均能量之比,通
常表示的时候取 log 变成分贝(dB),
由于 MSE 为真实图像与含噪图像之差的能量均值
而两者的差即为噪声,因此 PSNR 即峰值信号能量与 MSE 之比
定义式如下:

在这里插入图片描述
第二个等式由于图像像素点数值以量化方式保存,
bits 即每个像素点存储所占的位数
因此 MaxValue 即为 2^bits - 1。

计算PSNR

def cal_psnr(im1, im2):
     mse = (np.abs(im1 - im2) ** 2).mean()
     psnr = 10 * np.log10(255 * 255 / mse)
     return psnr

灰度等级gray scale 存成 8bit ,故最大值255。

当时上面的评价指标有一个大的问题,那就是
由于基于差剖面的简单计算不符合人类视觉系统(Human Visual System,HVS)的评价结果
因此需要对评价方式进行重新考量。

如果图片的最终目的是对人类展示的话,那么质量应该以人的主观测评为准。
但是由于主管评价不方便且费时,因此我们试图用客观的 图像质量评价来对图像进行评价,使其接近 HVS 的特点。

由于 HVS 具有可以抓取图像的结构特征的特点,
因此设计(结构相似性) Structural Similarity 进行评价,即 SSIM

注意:PSNR和SSIM都是全参考的(full reference)的,也就是需要无噪声的真实图像作为参考依据。

SSIM:结构相似性

SSIM的基本思路是,通过以下三个方面来对两幅图像的相似性进行评估,即

1. luminance,亮度
2. contrast,对比度
3. structure,结构

其算法的框图基本如下:
在这里插入图片描述
在这里插入图片描述
算法细节流程:
(1)对于输入的x和y,首先计算出(亮度测量)luminance measurement,进行比对,得到第一个相似性有关的评价;
(2)再减去luminance的影响,img-l,计算(对比度测量)contrast measurement,比对,得到第二个评价;
(3)再用上一步的结果除掉对比度的影响,img-l/c再进行structure的比对。最后将结果combine,得到最终的评价结果。

亮度luminance用均值表征,以标准图像x为例,当然还有另外一张作为对比的图像y,公式是一样的,如下:
在这里插入图片描述
对比度contrast用经过均值归一化之后的方差表征,以标准图像x为例,当然还有另外一张作为对比的图像y,公式是一样的如下:
在这里插入图片描述
结构用相关系数(就是统计意义上的 r ,协方差与方差乘积的比值)
而相关系数r本来的公式如下:
在这里插入图片描述
在SSIM中:
在这里插入图片描述
而:
在这里插入图片描述
上面的计算我们在实际应用的时候一般不这样去逐像素计算,
一般采用高斯核函数(即高斯卷积)计算图像的均值、方差以及协方差
而不是采用遍历像素点的方式,以换来更高的效率。

在这里插入图片描述
最终的结构相似性公式如下:
在这里插入图片描述
其中三个参数α,β,γ 用来表示这三个模块的重要性。

其中SSIM表示相似度,这个算子应当满足作为度量的基本性质,即

Symmetry,交换x和y顺序不影响结果。
Boundedness,值要有界,这里时小于等于1.。
Unique maximum,最大值,即1,只有当 x = y 时候取到。

为了得到简化形式,令
在这里插入图片描述

简化一波:
在这里插入图片描述
如何推导:
在这里插入图片描述

所以结构相似度指数从图像组成的角度将结构信息定义为:
独立于亮度、对比度的反映场景中物体结构的属性
并将失真建模为亮度、对比度和结构三个不同因素的组合。
均值作为亮度的估计,标准差作为对比度的估计协方差作为结构相似程度的度量


SSIM的实现

python的skimage库中实现了一些常见的评价指标如

from skimage.measure import compare_mse     #均方误差
from skimage.measure import compare_psnr    #峰值信噪比
from skimage.measure import compare_ssmi    #结构相似性

总结

提示:重要经验:

1)SSIM公式:结构相似性计算原理,基于SSIM的图像质量评价
2)均值表示明亮度、方差表示对比度,协方差表示结构相似性,仨相乘,就是SSIM,符合人类视觉感知系统的特点
3)笔试求AC,可以不考虑空间复杂度,但是面试既要考虑时间复杂度最优,也要考虑空间复杂度最优。

  • 3
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冰露可乐

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值