傅里叶变换
傅氏变换的目的是讲函数整体从空域变换到频域,以便于作分析。它本身是一种线性变换。
F
(
μ
)
=
∫
−
∞
+
∞
f
(
t
)
∗
e
−
2
π
μ
t
d
t
F(\mu)=\int_{-\infty}^{+\infty} f(t)*e^{-2\pi\mu t}dt
F(μ)=∫−∞+∞f(t)∗e−2πμtdt
或者说
F
(
μ
)
=
∫
−
∞
+
∞
f
(
t
)
e
2
π
μ
t
d
t
F(\mu)=\int_{-\infty}^{+\infty} \frac{f(t)}{e^{2\pi\mu t}}dt
F(μ)=∫−∞+∞e2πμtf(t)dt
很形象的说明了是讲函数整体,积分区域
(
−
∞
,
+
∞
)
(-\infty ,+\infty)
(−∞,+∞),分配到了频域上的单位圆
e
2
π
μ
t
e^{2\pi\mu t}
e2πμt
傅里叶反变换就很容易得出是
f
(
t
)
=
∫
−
∞
+
∞
F
(
μ
)
∗
e
2
π
μ
t
d
μ
f(t)=\int _{-\infty}^{+\infty} F(\mu)*e^{2\pi \mu t}d \mu
f(t)=∫−∞+∞F(μ)∗e2πμtdμ
二维的傅里叶变换通过控制变量将二维空间的计算转化为一维的傅里叶变换。
在计算机中只能使用离散的傅里叶变换。通常离散傅里叶变换都通过信号采样引入,而信号采样的原理又迈不开冲激函数和香浓定理。
冲激函数
冲击函数是一个无限长而又无限窄的函数,它只在
f
(
0
)
f(0)
f(0)处不等于
0
0
0而在其他地方为
0
0
0
它具有
∫
−
∞
+
∞
f
(
x
)
d
x
=
1
\int _{-\infty}^{+\infty}f(x)dx=1
∫−∞+∞f(x)dx=1的特性。很显然用冲击函数去对一个函数做内积只会得到函数在冲击点的值。
冲击串
关于函数的取样,使用一个冲激函数获取一个冲击点的函数值。要对整个函数进行取样自然要采用一系列的冲激函数。通过对冲激函数进行一系列的等间隔平移操作,我们可以得到一个冲击串。
对函数取样时需要遵循香农定理,否则不能保证取样的函数能进行复原。对于没有周期的函数可以看做该函数的周期为无限大
离散傅里叶变换
离散傅里叶变换处理的是经过冲击串处理的一系列离散值,此刻积分符号不再适用应该改为累加符号。
F
(
μ
)
=
∑
i
=
0
N
−
1
f
(
i
)
∗
e
−
2
π
μ
i
F(\mu)=\sum _{i=0}^{N-1}f(i)*e^{-2\pi \mu i}
F(μ)=∑i=0N−1f(i)∗e−2πμi
二维离散傅里叶变换的处理思路与二维连续傅里叶变换相同,不再赘述。
卷积公式
一维连续:
f
⋆
h
(
x
)
=
∫
−
∞
∞
f
(
τ
)
h
(
τ
−
x
)
d
τ
f\star h(x)=\int_{-\infty}^{\infty}f(\tau)h(\tau-x)d\tau
f⋆h(x)=∫−∞∞f(τ)h(τ−x)dτ
一维离散:
f
⋆
h
(
x
)
=
∑
m
=
0
M
−
1
f
(
m
)
h
(
x
−
m
)
,
x
=
0
,
1
,
2
,
.
.
.
M
−
1
f\star h(x)=\sum_{m=0}^{M-1}f(m)h(x-m),\quad x=0,1,2,...M-1
f⋆h(x)=m=0∑M−1f(m)h(x−m),x=0,1,2,...M−1
二维离散:
f
⋆
h
(
x
,
y
)
=
∑
m
=
0
M
−
1
∑
n
=
0
N
−
1
f
(
m
,
n
)
h
(
x
−
m
,
y
−
n
)
f\star h(x,y)=\sum_{m=0}^{M-1}\sum_{n=0}^{N-1}f(m,n)h(x-m,y-n)
f⋆h(x,y)=m=0∑M−1n=0∑N−1f(m,n)h(x−m,y−n)
x
=
0
,
1
,
2...
M
−
1
x=0,1,2...M-1
x=0,1,2...M−1
y
=
0
,
1
,
2...
N
−
1
y=0,1,2...N-1
y=0,1,2...N−1
这里补充一下卷积定理,以及部分的推导。
卷积定理
连续 | 离散 |
---|---|
f ⋆ h ( t ) ↔ F ∗ H ( μ ) f\star h(t) \leftrightarrow F*H(\mu) f⋆h(t)↔F∗H(μ) | f ⋆ h ( t ) ↔ F ∗ H ( μ ) f\star h(t) \leftrightarrow F*H(\mu) f⋆h(t)↔F∗H(μ) |
F ⋆ H ( μ ) ↔ f ∗ h ( t ) F\star H(\mu) \leftrightarrow f*h(t) F⋆H(μ)↔f∗h(t) | f ∗ h ( t ) ↔ F ⋆ H ( μ ) 1 M f*h(t) \leftrightarrow F\star H(\mu)\frac{1}{M} f∗h(t)↔F⋆H(μ)M1 |
f ⋆ h ( x , y ) ↔ F ∗ H ( u , v ) f\star h(x,y)\leftrightarrow F*H(u,v) f⋆h(x,y)↔F∗H(u,v) | f ⋆ h ( x , y ) ↔ F ∗ H ( u , v ) f\star h(x,y) \leftrightarrow F*H(u,v) f⋆h(x,y)↔F∗H(u,v) |
F ⋆ H ( u , v ) ↔ f ∗ h ( x , y ) F\star H(u,v) \leftrightarrow f*h(x,y) F⋆H(u,v)↔f∗h(x,y) | f ∗ h ( x , y ) ↔ F ⋆ H ( u , v ) 1 M N f*h(x,y) \leftrightarrow F\star H(u,v)\frac{1}{MN} f∗h(x,y)↔F⋆H(u,v)MN1 |
F
{
f
⋆
h
(
x
)
}
\mathfrak{F}\lbrace f\star h(x)\rbrace
F{f⋆h(x)}
=
∑
x
=
0
M
−
1
∑
t
=
0
M
−
1
f
(
t
)
h
(
x
−
t
)
e
−
j
2
π
x
/
m
=\sum_{x=0}^{M-1}\sum_{t=0}^{M-1}f(t)h(x-t)e^{-j2\pi x/m}
=∑x=0M−1∑t=0M−1f(t)h(x−t)e−j2πx/m
=
∑
t
=
0
M
−
1
f
(
t
)
H
(
u
)
e
−
j
2
π
t
/
m
=\sum_{t=0}^{M-1}f(t)H(u)e^{-j2\pi t/m}
=∑t=0M−1f(t)H(u)e−j2πt/m
=
F
(
u
)
H
(
u
)
=F(u)H(u)
=F(u)H(u)