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+b2≥2ab
保证了式子的取值范围是[0,1]。
当
a
−
b
a-b
a−b 越小时,式子的值越趋近1。
当
a
−
b
a-b
a−b 越大时,式子的值越趋近0。
对于最后一个等式:
来源于 相关系数 这一概念
我们知道,分子——协方差,作为描述X和Y相关程度的量,在同一物理量纲之下有一定的作用,但同样的两个量采用不同的量纲使它们的协方差在数值上表现出很大的差异。
相关系数通过制造分母很好的解决了这一点。
两个性质
-
若 ρ a b = 0 \rho _{ab} =0 ρab=0,则称X与Y不线性相关。
即 ρ a b = 0 \rho _{ab} =0 ρab=0的充分必要条件是Cov(X,Y)=0,亦即不相关和协方差为零是等价的。
(现实中很难找到两个完全不相关的图像) -
设 ρ 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的如下判断标准。文章来源:https://www.toymoban.com/news/detail-445854.html
SSIM的判断准则
SSIM是一个0到1之间的数,SSIM越大,两图像间差异越小。文章来源地址https://www.toymoban.com/news/detail-445854.html
补充
function re = normalize01(img)
a = min(min(img));
b = max(max(img));
re = (img-a)./(b-a);
end
到了这里,关于深入理解SSIM(两图像结构相似度指标)(附matlab代码)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!