最近复习图像和视频处理课,好多基础推导都不能得心应手,复习进度相当缓慢,过程异常痛苦。图像的二维傅里叶变换的公式始终没成功推出来,执着地僵持了很久,于是成此文。
数字图像(M行*N列)是二维离散信号,可以认为是从一维离散时间信号(也就是 序列)的推广。
(一)二维脉冲阵列信号的FT
考虑二维脉冲阵列信号:
(1)
p
(
x
,
y
)
=
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
δ
(
x
−
k
Δ
x
,
y
−
l
Δ
y
)
p(x,y)=\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}\delta(x-k\Delta x, y-l\Delta y)\tag1
p(x,y)=k=0∑M−1l=0∑N−1δ(x−kΔx,y−lΔy)(1)
k,l只是序号,实际上
x
x
x只能取离散值
k
Δ
x
k\Delta x
kΔx,
y
y
y只能取
l
Δ
y
l\Delta y
lΔy.
Δ
x
,
Δ
y
\Delta x,\Delta y
Δx,Δy分别是图像在空域x和y方向的采样间隔。而
1
Δ
x
,
1
Δ
y
\frac{1}{\Delta x},\frac{1}{\Delta y}
Δx1,Δy1是频域u和v方向的采样率.
显然,
p
(
x
,
y
)
=
δ
(
x
,
y
)
+
δ
(
x
,
y
−
Δ
y
)
+
⋯
+
δ
(
x
,
y
−
(
N
−
1
)
Δ
y
)
p(x,y)=\delta(x,y)+\delta(x,y-\Delta y)+\cdots+\delta(x,y-(N-1)\Delta y)
p(x,y)=δ(x,y)+δ(x,y−Δy)+⋯+δ(x,y−(N−1)Δy)
+
δ
(
x
−
Δ
x
,
y
)
+
δ
(
x
−
Δ
x
,
y
−
Δ
y
)
+
⋯
+
δ
(
x
−
Δ
x
,
y
−
(
N
−
1
)
Δ
y
)
+
+\delta(x-\Delta x,y)+\delta (x-\Delta x,y-\Delta y)+\cdots+\delta(x-\Delta x,y-(N-1)\Delta y)+
+δ(x−Δx,y)+δ(x−Δx,y−Δy)+⋯+δ(x−Δx,y−(N−1)Δy)+
⋯
\cdots
⋯
(2)
+
δ
(
x
−
(
M
−
1
)
Δ
x
,
y
−
(
N
−
1
)
Δ
y
)
+\delta(x-(M-1)\Delta x,y-(N-1)\Delta y)\tag2
+δ(x−(M−1)Δx,y−(N−1)Δy)(2)
所以它是M*N的阵列,每个点的值都是1 .
对(1)做二维FT:(关于二维傅里叶变换公式,移步这里.)
(3)
P
(
u
,
v
)
=
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
p
(
x
,
y
)
e
−
j
2
π
(
u
k
Δ
x
+
v
l
Δ
y
)
=
P(u,v)=\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}p(x,y)e^{-j2\pi(uk\Delta x+vl\Delta y)}=\tag3
P(u,v)=Δx1Δy1k=0∑M−1l=0∑N−1p(x,y)e−j2π(ukΔx+vlΔy)=(3)
直接把(1)进来:
(4) 1 Δ x 1 Δ y ∑ k = 0 M − 1 ∑ l = 0 N − 1 ∑ k = 0 M − 1 ∑ l = 0 N − 1 δ ( x − k Δ x , y − l Δ y ) e − j 2 π ( u k Δ x + v l Δ y ) = \frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}\delta(x-k\Delta x, y-l\Delta y)e^{-j2\pi(uk\Delta x+vl\Delta y)}=\tag4 Δx1Δy1k=0∑M−1l=0∑N−1k=0∑M−1l=0∑N−1δ(x−kΔx,y−lΔy)e−j2π(ukΔx+vlΔy)=(4)
由冲激函数的抽样性,只有当
x
=
k
Δ
x
,
y
=
l
Δ
y
x=k\Delta x,y=l\Delta y
x=kΔx,y=lΔy时冲激函数取值为1,则:
(5)
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
e
−
j
2
π
(
x
u
+
y
v
)
=
\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}e^{-j2\pi(xu+yv)}=\tag5
Δx1Δy1k=0∑M−1l=0∑N−1e−j2π(xu+yv)=(5)
由于
x
=
k
Δ
x
,
y
=
l
Δ
y
x=k\Delta x,y=l\Delta y
x=kΔx,y=lΔy,所以:
(6)
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
e
−
j
2
π
(
k
Δ
x
u
+
l
Δ
y
v
)
=
\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}e^{-j2\pi(k\Delta xu+l\Delta yv)}=\tag6
Δx1Δy1k=0∑M−1l=0∑N−1e−j2π(kΔxu+lΔyv)=(6)
由于指数的括号里面的值一定是整数 ,所以
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
e
−
j
2
π
(
k
Δ
x
u
+
l
Δ
y
v
)
\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}e^{-j2\pi(k\Delta xu+l\Delta yv)}
∑k=0M−1∑l=0N−1e−j2π(kΔxu+lΔyv)就是M*N个1,于是可以写成:
(7)
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
δ
(
u
−
k
Δ
x
,
v
−
l
Δ
y
)
\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}\delta(u-\frac{k}{\Delta x},v-\frac{l}{\Delta y})\tag7
Δx1Δy1k=0∑M−1l=0∑N−1δ(u−Δxk,v−Δyl)(7)
其实(6)—(7) 的过程我不是特别明白,没完全想清楚,如有读者清楚欢迎在评论区说明,谢谢啦。
(二)图像的采样和重建
对图像采样就是原始信号
f
(
x
,
y
)
f(x,y)
f(x,y)与采样脉冲序列
p
(
x
,
y
)
p(x,y)
p(x,y)相乘。
f
s
(
x
,
y
)
=
f
(
x
,
y
)
p
(
x
,
y
)
f_s(x,y)=f(x,y)p(x,y)
fs(x,y)=f(x,y)p(x,y)
那么在频域就有:
F
s
(
u
,
v
)
=
1
2
π
F
(
u
,
v
)
∗
P
(
u
,
v
)
=
F_s(u,v)=\frac{1}{2\pi}F(u,v)*P(u,v)=
Fs(u,v)=2π1F(u,v)∗P(u,v)=
1
2
π
F
(
u
,
v
)
∗
[
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
δ
(
u
−
k
Δ
x
,
v
−
l
Δ
y
)
]
=
\frac{1}{2\pi}F(u,v)*[\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}\delta(u-\frac{k}{\Delta x},v-\frac{l}{\Delta y})]=
2π1F(u,v)∗[Δx1Δy1k=0∑M−1l=0∑N−1δ(u−Δxk,v−Δyl)]=
1
2
π
1
Δ
x
1
Δ
y
∑
k
=
0
M
−
1
∑
l
=
0
N
−
1
F
(
u
−
k
Δ
x
,
v
−
l
Δ
y
)
\frac{1}{2\pi}\frac{1}{\Delta x}\frac{1}{\Delta y}\sum_{k=0}^{M-1}\sum_{l=0}^{N-1}F(u-\frac{k}{\Delta x},v-\frac{l}{\Delta y})
2π1Δx1Δy1k=0∑M−1l=0∑N−1F(u−Δxk,v−Δyl)
根据Nyquist定理,只要有
1
Δ
x
≥
2
U
m
a
x
,
1
Δ
y
≥
2
V
m
a
x
\frac{1}{\Delta x}\geq2U_{max},\frac{1}{\Delta y}\geq2V_{max}
Δx1≥2Umax,Δy1≥2Vmax
原始的模拟信号就可以从采样得到的数字图像中完美重建。
而在实际中,重构是利用低通滤波器实现的。如下图,原始模拟信号经过采样,频谱延拓并周期性重复,用LowPass filter滤出一个完整频谱即可。