SSIM理解

1.向量相似性的计算

  • 内积:
    I < x , y > = ∑ i x i , y i I<x, y>=\sum_i x_i, y_i I<x,y>=ixi,yi
    直观解释是:如果x大的地方y也比较大,x小的地方y也比较小,那么整体内积是偏大的,内积越大两个向量越相似。
  • 余弦相似度:由于向量内积没有界限,一种解决办法是除以长度之后再求内积
    C o s S i m ( x , y ) = ∑ i x i y i ∑ i x i 2 ∑ i y i 2 = < x , y > ∣ ∣ x ∣ ∣ ∣ ∣ y ∣ ∣ CosSim(x,y) = \frac{\sum_ix_iy_i}{\sqrt{\sum_ix_i^2}\sqrt{\sum_iy_i^2}}=\frac{<x, y>}{||x||||y||} CosSim(x,y)=ixi2 iyi2 ixiyi=xy<x,y>
    余弦相似度与向量的幅值无关,只与向量的方向相关。
  • 皮卡尔逊相关系数:余弦相似度受到向量的平移影响,上式如果将 x x x平移到 x + 1 x+1 x+1余弦值就会改变,如何才能保证平移不变性,就是下面要说的皮卡尔逊相关系数:
    Corr ⁡ ( x , y ) = ∑ i ( x i − x ‾ ) ( y i − y ‾ ) ∑ ( x i − x ‾ ) 2 ∑ ( y i − y ‾ ) 2 = ⟨ x − x ‾ , y − y ‾ ⟩ ∥ x − x ‾ ∥ ∥ y − y ‾ ∥ = cossim ⁡ ( x − x ‾ , y − y ‾ \operatorname{Corr}(x, y)=\frac{\sum_{i}\left(x_{i}-\overline{x}\right)\left(y_{i}-\overline{y}\right)}{\sqrt{\sum\left(x_{i}-\overline{x}\right)^{2}} \sqrt{\sum\left(y_{i}-\overline{y}\right)^{2}}}=\frac{\langle x-\overline{x}, y-\overline{y}\rangle}{\|x-\overline{x}\|\|y-\overline{y}\|}=\operatorname{cossim}(x-\overline{x}, y-\overline{y} Corr(x,y)=(xix)2 (yiy)2 i(xix)(yiy)=xxyyxx,yy=cossim(xx,yy
    皮卡尔逊相关系数具有平移不变性和尺度不变性。

2. SSIM计算

比较两幅图像的结构相似性(structure similarity),主要从三个方面进行比较:两度(luminance) I ( x , y ) I(x,y) I(x,y), 对比度(constrast) c ( x , y ) c(x,y) c(x,y)和结构(structure) s ( x , y ) s(x,y) s(x,y),最终 x x x y y y的相似度是这三者的函数:
S ( x , y ) = f ( l ( x , y ) , c ( x , y ) , s ( x , y ) ) S(x,y)=f\left(l(x,y), c(x,y), s(x,y)\right) S(x,y)=f(l(x,y),c(x,y),s(x,y))
这三个度量相似性的公式遵循以下三个原则:

  • 对称性: s ( x , y ) = s ( y , x ) s(x,y) = s(y,x) s(x,y)=s(y,x)
  • 有界性: s ( x , y ) ≤ 1 s(x,y) \leq 1 s(x,y)1
  • 极限值为1: s ( x , y ) = 1 s(x,y)=1 s(x,y)=1当且仅当 x = y x=y x=y
2.1亮度的计算

如果一个图像有 n n n个像素点,每个像素的像素值为 x i x_i xi,那么该图像的平均亮度为:
μ x = 1 n ∑ i = 1 N x i \mu_x=\frac{1}{n}\sum_{i=1}^Nx_i μx=n1i=1Nxi
可以用以下公式计算两幅图 x x x y y y的亮度相似度:
l ( x , y ) = 2 μ x μ y + C 1 μ x 2 + μ y 2 + C 1 l(x,y) = \frac{2\mu_x\mu_y+C_1}{\mu_x^2+\mu_y^2+C_1} l(x,y)=μx2+μy2+C12μxμy+C1

2.1对比度的计算

对比度即图像明暗的变化剧烈程度,也就是像素值的标准差,其计算公式为:
σ x = ( 1 N − 1 ∑ i = 1 n ( x i − μ x ) 2 ) 1 / 2 \sigma_x=\left(\frac{1}{N-1}\sum_{i=1}^n (x_i - \mu_x)^{2} \right)^{1/2} σx=(N11i=1n(xiμx)2)1/2
对比度相似度的计算公式为:
l ( x , y ) = 2 σ x σ y + C 1 σ x 2 + σ y 2 + C 1 l(x,y) = \frac{2\sigma_x\sigma_y+C_1}{\sigma_x^2+\sigma_y^2+C_1} l(x,y)=σx2+σy2+C12σxσy+C1

2.1结构相似度的计算:

对一幅图像而言,其亮度和对比度均为标量,而其结构显然无法用一个标量表示,二是应该用该图所有像素组成的向量来表示,同时研究结构相似度是应排除亮度和对比度的影响,即排除均值和标准差的影响,即研究归一化的两个向量 ( x − μ x ) / σ x (x-\mu_x)/\sigma_x (xμx)/σx ( y − μ y ) / σ y (y-\mu_y)/\sigma_y (yμy)/σy之间的关系,两个向量的模长为 N − 1 \sqrt{N-1} N1 因此他们的余弦相似度为:
s ( x , y ) = ( 1 N − 1 x − μ x σ x ) ( 1 N − 1 y − μ y σ y ) s(x,y)=\left(\frac{1}{\sqrt{N-1}} \frac{x-\mu_x}{\sigma_x}\right)\left(\frac{1}{\sqrt{N-1}} \frac{y-\mu_y}{\sigma_y}\right) s(x,y)=(N1 1σxxμx)(N1 1σyyμy)
s ( x , y ) = 1 σ x σ y ( 1 N − 1 ∑ i = 1 N ( x i − μ x ) ( y i − μ y ) ) s(x,y)= \frac{1}{\sigma_x\sigma_y}\left(\frac{1}{N-1}\sum_{i=1}^N(x_i-\mu_x)(y_i - \mu_y)\right) s(x,y)=σxσy1(N11i=1N(xiμx)(yiμy))
上式中后一部分为协方差,结构相似度定义为:
s ( x , y ) = σ x y σ x σ y s(x,y)=\frac{\sigma_{xy}}{\sigma_x\sigma_y} s(x,y)=σxσyσxy

最终SSIM是计算公式为:
SSIM ⁡ ( x , y ) = ( 2 μ x μ y + C 1 ) ( 2 σ x y + C 2 ) ( μ x 2 + μ y 2 + C 1 ) ( σ x 2 + σ y 2 + C 2 ) \operatorname{SSIM}(\mathbf{x}, \mathbf{y})=\frac{\left(2 \mu_{x} \mu_{y}+C_{1}\right)\left(2 \sigma_{x y}+C_{2}\right)}{\left(\mu_{x}^{2}+\mu_{y}^{2}+C_{1}\right)\left(\sigma_{x}^{2}+\sigma_{y}^{2}+C_{2}\right)} SSIM(x,y)=(μx2+μy2+C1)(σx2+σy2+C2)(2μxμy+C1)(2σxy+C2)

你可能感兴趣的:(SSIM理解)