频域与时域的对应关系python代码https://github.com/zisang0210/imgproc.git
傅里叶变换
幅值谱代表着某一频率的正弦波的幅度,保留了图片的灰度信息,对图像平移不变,对图像旋转以相同角度旋转;相位谱代表了某一频率的正弦波的相位,保留了图中物体的定位信息,平移或旋转后均改变。
周期为T的连续函数 f ( t ) f(t) f(t)可由一系列正弦和余弦函数之和表示,其频率为 n 2 π T n\frac{2 \pi}{T} nT2π, n = 1 , 2 , … n=1,2,\dots n=1,2,…;非周期连续函数 f ( t ) f(t) f(t)可由一系列频率连续的正弦和余弦函数之和表示;非周期被以时间间隔 T T T采样过的离散函数可由一系列频率连续的正弦和余弦函数之和表示,其中幅值是周期函数,周期为 1 T \frac{1}{T} T1;
二维离散傅里叶变换可以理解为将一幅图分解为一组不同频率的正弦(余弦)波的叠加。以大小为M*N的图片为例,其频谱以 M M M和 N N N为周期,关于原点共轭对称(这样反变换才能得到实数),在长度和宽度上无限的,而由频谱得到的反变换也是无限的。因此当使用傅里叶变换进行滤波时,相当于先将图片进行周期延拓,再进行卷积。
频谱中,频率最低的信号是整幅图片的均值,之后是 f = 1 M f=\frac{1}{M} f=M1的正余弦波,之后是 f = 2 M f=\frac{2}{M} f=M2, 3 M \frac{3}{M} M3, … \dots …, M − 1 M \frac{M-1}{M} MM−1的正余弦波。需要注意的是频谱中 f = M − 1 M f=\frac{M-1}{M} f=MM−1的信号,对应时域的余弦分量 c o s 2 π M − 1 M n = c o s 2 π − 1 M n cos2\pi\frac{M-1}{M}n=cos2\pi\frac{-1}{M}n cos2πMM−1n=cos2πM−1n,正弦分量 j s i n 2 π M − 1 M n = j s i n 2 π − 1 M n jsin2\pi\frac{M-1}{M}n=jsin2\pi\frac{-1}{M}n jsin2πMM−1n=jsin2πM−1n,且由离散傅里叶变换的周期性, F ( M − 1 ) = F ( − 1 ) F(M-1)=F(-1) F(M−1)=F(−1),因此,从原点在左上与从原点在中心的频谱图中恢复原图,结果是一样的。但是搞错了频谱的原点,反变换得到的将是 f ( x , y ) ( − 1 ) x + y f(x,y)(-1)^{x+y} f(x,y)(−1)x+y。频谱中最高频率是 ± M 2 \pm \frac{M}{2} ±2M, ± N 2 \pm \frac{N}{2} ±2N,通常当原点选择图片左上时,能量主要分布在四角;当原点选择图片中心时,能量主要分布在中心。
使用自相关计算纹理的周期
如何评价两幅图片X与Y的相似性?也许可以采用余弦距离
c
o
s
θ
=
∑
i
j
x
i
j
y
i
j
∑
i
j
x
i
j
2
∑
i
j
y
i
j
2
cos \theta =\frac{\sum_{ij}x_{ij}y_{ij}}{\sqrt{\sum_{ij}x_{ij}^2}\sqrt{\sum_{ij}y_{ij}^2}}
cosθ=∑ijxij2∑ijyij2∑ijxijyij
如果想使度量具有光照和对比度不变性,可以在计算余弦距离之前将图片归一化
x
i
j
=
x
i
j
−
μ
X
σ
X
x_{ij}=\frac{x_{ij}-\mu_{X}}{\sigma_{X}}
xij=σXxij−μX
归一化后,对于大小均为M*N的图片X和Y
c
o
s
θ
=
∑
i
j
x
i
j
−
μ
X
σ
X
y
i
j
−
μ
Y
σ
Y
∑
i
j
(
x
i
j
−
μ
X
σ
X
)
2
∑
i
j
(
y
i
j
−
μ
Y
σ
Y
)
2
=
1
M
N
∑
i
j
x
i
j
−
μ
X
σ
X
y
i
j
−
μ
Y
σ
Y
=
1
M
N
∑
i
j
(
x
i
j
−
μ
X
)
(
y
i
j
−
μ
Y
)
σ
X
σ
Y
cos \theta=\frac{\sum_{ij}\frac{x_{ij}-\mu_{X}}{\sigma_{X}}\frac{y_{ij}-\mu_{Y}}{\sigma_{Y}}}{\sqrt{\sum_{ij}(\frac{x_{ij}-\mu_{X}}{\sigma_{X}})^2}\sqrt{\sum_{ij}(\frac{y_{ij}-\mu_{Y}}{\sigma_{Y}})^2}} \\ =\frac{1}{MN}\sum_{ij}\frac{x_{ij}-\mu_{X}}{\sigma_{X}}\frac{y_{ij}-\mu_{Y}}{\sigma_{Y}} \\ =\frac{\frac{1}{MN}\sum_{ij}(x_{ij}-\mu_{X})(y_{ij}-\mu_{Y})}{\sigma_{X}\sigma_{Y}}
cosθ=∑ij(σXxij−μX)2∑ij(σYyij−μY)2∑ijσXxij−μXσYyij−μY=MN1ij∑σXxij−μXσYyij−μY=σXσYMN1∑ij(xij−μX)(yij−μY)
对应与概率统计中,两个随机变量X、Y的相关系数
ρ
=
E
[
(
X
−
μ
X
)
(
Y
−
μ
Y
)
]
σ
X
σ
Y
\rho =\frac{E[(X-\mu_X)(Y-\mu_Y)]}{\sigma_X \sigma_Y}
ρ=σXσYE[(X−μX)(Y−μY)]
相关系数代表了当随机变量X变化时,随机变量Y的变化趋势。当
ρ
=
1
\rho=1
ρ=1说明X与Y的变化趋势完全一致,当
ρ
=
−
1
\rho=-1
ρ=−1说明X与Y的变化趋势完全相反。在图像处理中,如果将两张图先归一化,然后计算余弦距离,即将对应像素点相乘后求均值,则当两张图完全一样时取值为1,两张图黑白互补时取值为-1,其它情况取值(0,1)。
当图片中有清晰且规则的周期性的纹理,那么计算图片与其平移周期个像素的图片的相关性应该为1,而当平移非周期个单位时,相关性应该小于1。通过在自相关矩阵中找取值接近1的点,计算其距离,即可得到纹理的周期。为了计算图片的自相关矩阵,需要将图片与其自身做卷积(准确地说应该是相关,卷积和相关的区别在于,卷积时需要将滤波器模板旋转180°)。根据卷积定理,通过计算图片的傅里叶变换,在频域完成这一过程,可大幅降低计算量。
偶函数的傅里叶正变换与反变换相等
KaTeX parse error: No such environment: align at position 8: \begin{̲a̲l̲i̲g̲n̲}̲ F\{f(t)\} & =\…