深入理解SSIM(两图像结构相似度指标)(附matlab代码)

SSIM的深入理解

作者:老李
日期:2022-1-18

SSIM

SSIM用于评价两张图像的相似程度。
对于SSIM这个指标的设计思路,如下图所示。
在这里插入图片描述

图像的均值表示图像的亮度。
图像的方差表示图像的对比度。

注意:要先将图像归一化(把像素的阈值调整为[0,1]),才可以通过计算,得出数值进行比较。

在这里插入图片描述

当α=β=γ=1,C_3= 0.5C_2(常用),则SSIM表达式为:
在这里插入图片描述
附上代码:

% SSIM
function re=SSIM(X,Y) %返回值在0-1之间,数值越大,图像相似度越高。
        X = normalize01(X);
        Y = normalize01(Y);

        X=double(X);
        Y=double(Y);

        ux=mean(mean(X));
        uy=mean(mean(Y));

        sigma2x=mean(mean((X-ux).^2));
        sigma2y=mean(mean((Y-uy).^2));   
        sigmaxy=mean(mean((X-ux).*(Y-uy)));

        k1=0.01;
        k2=0.03;
        L=255;
        c1=(k1*L)^2;
        c2=(k2*L)^2;
        c3=c2/2;

        l=(2*ux*uy+c1)/(ux*ux+uy*uy+c1);
        c=(2*sqrt(sigma2x)*sqrt(sigma2y)+c2)/(sigma2x+sigma2y+c2);
        s=(sigmaxy+c3)/(sqrt(sigma2x)*sqrt(sigma2y)+c3);

        re=l*c*s;

    end

“对比”是怎么体现的

关于,这里我觉得是大部分博文所没有涉及到的地方。
该问题等价于这也是以下三个等式如何产生的。
也就是说以下三个是怎么有对比的含义的。
在这里插入图片描述
首先,分子分母加常数的道理是为了避免分母趋于0。

对于前两个等式:

式子
2 a b a 2 + b 2 \frac{2ab}{a^2 + b^2} a2+b22ab
来源于完全平方公式
a 2 + b 2 ≥ 2 a b a^2+b^2\ge 2ab a2+b22ab
保证了式子的取值范围是[0,1]。
a − b a-b ab 越小时,式子的值越趋近1。
a − b a-b ab 越大时,式子的值越趋近0。

对于最后一个等式:

来源于 相关系数 这一概念

我们知道,分子——协方差,作为描述X和Y相关程度的量,在同一物理量纲之下有一定的作用,但同样的两个量采用不同的量纲使它们的协方差在数值上表现出很大的差异。

相关系数通过制造分母很好的解决了这一点。

两个性质

  1. ρ a b = 0 \rho _{ab} =0 ρab=0,则称X与Y不线性相关。
    ρ a b = 0 \rho _{ab} =0 ρab=0的充分必要条件是Cov(X,Y)=0,亦即不相关和协方差为零是等价的。
    (现实中很难找到两个完全不相关的图像)

  2. ρ a b \rho _{ab} ρab是随机变量X和Y的相关系数,则有
    (1)∣ρXY∣≤1;
    (2)∣ρXY∣=1充分必要条件为P{Y=aX+b}=1,(a,b为常数,a≠0)

也就是说,如果两张图越趋近于线性相关,该式子越趋近于1,反之则趋近于0 。

在这里插入图片描述
通过以上说明,我们可以得到SSIM的如下判断标准。

SSIM的判断准则

SSIM是一个0到1之间的数,SSIM越大,两图像间差异越小。

补充

function re = normalize01(img)
a = min(min(img));
b = max(max(img));
re = (img-a)./(b-a);
end
  • 33
    点赞
  • 206
    收藏
    觉得还不错? 一键收藏
  • 20
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值