正交变换(傅里叶变换、Z变换)
信号分解方法多种多样,我们可将信号分解为直流分量+交流分量、偶分量+奇分量、实部分量+虚部分量、脉冲分量、正交分量等多种形式。其中一个较复杂而又有重要意义的分解方法便是将信号分解为正交分量,我们把这个过程称作:信号的正交分解(正交变换)。
将信号正交分解之后,可以用于:
- 方便处理
- 便于抽取特性
- 数据压缩
首先有一个问题——什么是正交?
在线性代数中我们了解过,向量的正交指的是 a ⃗ ⋅ b ⃗ = 0 \vec{a}\cdot\vec{b} = 0 a⋅b=0——两个向量的内积为0,意味着两个向量在对方上的投影为0,即可认为这两个向量互不相关互不影响。显然,向量的正交对应的是正交的离散形式 ∑ i = 0 n a i ∗ b i = 0 \sum_{i=0}^n a_i * b_i = 0 i=0∑nai∗bi=0。
然而,从信号的角度,许多信号其实是连续的,由连续的函数所表示,那么我们又该如何定义正交的连续形式呢?由此,我们引入连续函数的概念:如果在区间 (
t
1
,
t
2
t_1, t_2
t1,t2) 上,函数
f
1
f_1
f1(t) 和
f
2
f_2
f2(t) 互不含有对方的分量,则称
f
1
f_1
f1(t) 与
f
2
f_2
f2(t) 在(
t
1
,
t
2
t_1, t_2
t1,t2)上正交。 即:
<
f
1
,
f
2
>
=
∫
t
1
t
2
f
1
(
t
)
f
2
(
t
)
d
t
=
0
<f_1 , f_2> = \int_{t_1}^{t_2}f_1(t)f_2(t)dt = 0
<f1,f2>=∫t1t2f1(t)f2(t)dt=0
并有定理:
任一函数 f (t)在 ( t 1 , t 2 t_1, t_2 t1,t2) 上可表示为正交函数集内函数 的线性组合。
f ( t ) ≈ ∑ n = 1 N c n g n ( t ) f(t) \approx \sum_{n=1}^Nc_ng_n(t) f(t)≈n=1∑Ncngn(t)
同时,用于正交变换的方法也多种多样:
傅里叶变换 Fourier Transform
离散余弦变换 Discrete Cosine Transform
沃尔希-哈德玛变换 Walsh-Hadamard Transform
斜变换 Slant Transform
哈尔变换 Haar Transform
离散小波变换 Discrete Wavelet Transform
离散K-L变换 Discrete Karhunen-Leave Transform
奇异值分解SVD变换 Singular-Value Decomposition
Z变换
本次学习心得中,我将主要介绍自主学习了解的傅里叶变换及其衍生Z变换这两种正交变换方法。
傅里叶变换
对傅里叶变换的理解
法国数学家让·巴普蒂斯·约瑟夫·傅里叶男爵发现,任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示:
f
(
t
)
=
a
0
2
+
∑
n
=
1
∞
[
a
n
cos
(
n
w
0
t
)
+
b
n
sin
(
n
w
0
t
)
]
f(t) = \frac{a_0}{2} + \sum_{n=1}^{\infty}[a_n\cos(nw_0t) + b_n\sin(nw_0t)]
f(t)=2a0+n=1∑∞[ancos(nw0t)+bnsin(nw0t)]
可以将*f(x)*理解为由如下正交基表示成的向量:
{
1
,
cos
(
2
π
n
T
x
)
,
sin
(
2
π
n
T
x
)
}
\{1,\cos(\frac{2\pi n}{T}x),\sin(\frac{2\pi n}{T}x)\}
{1,cos(T2πnx),sin(T2πnx)}
那么上面的式子就可以解读为:
令 w n = 2 π n T w_n = \frac{2\pi n}{T} wn=T2πn ,从三角函数的意义来说, w n w_n wn就对应着该三角函数的角频率,对于信号,则可看作是一个正弦波对应的角频率。
我们将x(通常代表时间t)作为自变量可以画出信号f(x)在时域上的函数图像:
而将频率 w n w_n wn作为自变量我们同样也可以画出信号f(x)在频域上的函数图像:
将二者综合我们可以看到这样一个图像:
那么,我们从信号的角度可以这么认为——傅里叶级数展开的核心意义在于:将一个周期信号(时域上看只有一个)分解为了多个不同频率下的相互正交(相互独立、互不干扰)的信号。傅里叶级数展开的本质是信号由时域到频域
我们注意到,傅里叶级数展开有一个前提条件:函数(信号)必须是周期的!但在生活研究中,许多信号显然都无法符合具有周期性这个要求。那么,对于非周期函数(信号),我们该如何实现时域到频域的分解变化呢?
例如:下图这个函数,由于并非一个周期函数,无法写出它的傅里叶级数。
然而,我们可以拓宽一下思路,没有多个连续周期,但我们可以将函数的整个定义域(
−
∞
,
∞
-\infty , \infty
−∞,∞)看作是唯一的一个周期T:
T
⟶
∞
T \longrightarrow \infty
T⟶∞
将T慢慢变大我们可以观察到:
频域上看,这些频率就会变得稠密,直至连续,变为一条频域曲线:
傅立叶变换就是,让 T = ∞ T=\infty T=∞,求出上面这根频域曲线的过程。即傅里叶变换是傅里叶级数展开对应非周期函数(信号)的拓展延伸。
下面是傅里叶变换的数学公式推导:
前面所述的傅里叶级数:
f
(
t
)
=
a
0
2
+
∑
n
=
1
∞
[
a
n
cos
(
n
w
0
t
)
+
b
n
sin
(
n
w
0
t
)
]
,
a
0
∈
R
f(t) = \frac{a_0}{2} + \sum_{n=1}^{\infty}[a_n\cos(nw_0t) + b_n\sin(nw_0t)],a_0\in\mathbb{R}
f(t)=2a0+n=1∑∞[ancos(nw0t)+bnsin(nw0t)],a0∈R
通过欧拉公式可以将其等价变换为复数形式:
f
(
x
)
=
∑
n
=
−
∞
∞
c
n
⋅
e
i
2
π
n
x
T
f(x) = \sum_{n = -\infty}^{\infty}c_n\cdot e^{i\frac{2\pi nx}{T}}
f(x)=n=−∞∑∞cn⋅eiT2πnx
复数形式下,将其看作向量的话正交基则为:
{
e
i
2
π
n
x
T
}
\{e^{i\frac{2\pi nx}{T}}\}
{eiT2πnx}
将周期T推向无穷时:
{
f
(
x
)
=
∑
n
=
−
∞
∞
c
n
⋅
e
−
i
2
π
n
x
T
T
=
∞
⟹
f
(
x
)
=
∫
−
∞
∞
F
(
ω
)
e
i
ω
x
d
x
\begin{cases} f(x) = \sum_{n=-\infty}^{\infty}c_n\cdot e^{-i\frac{2\pi nx}{T}} \\ T=\infty \end{cases}\Longrightarrow f(x) = \int_{-\infty}^{\infty}F(\omega)e^{i\omega x}dx
{f(x)=∑n=−∞∞cn⋅e−iT2πnxT=∞⟹f(x)=∫−∞∞F(ω)eiωxdx
由此可推出
F
(
ω
)
F(\omega)
F(ω):
{
c
n
=
1
T
∫
x
0
x
0
+
T
f
(
x
)
⋅
e
−
i
2
π
n
x
T
d
x
T
=
∞
⟹
F
(
ω
)
=
1
2
π
∫
−
∞
∞
f
(
x
)
e
−
i
ω
x
d
x
\begin{cases} c_n = \frac{1}{T}\int_{x_0}^{x_0+T}f(x)\cdot e^{-i\frac{2\pi nx}{T}}dx \\ T = \infty \end{cases} \Longrightarrow F(\omega) = \frac{1}{2\pi}\int_{-\infty}^{\infty}f(x)e^{-i\omega x}dx
{cn=T1∫x0x0+Tf(x)⋅e−iT2πnxdxT=∞⟹F(ω)=2π1∫−∞∞f(x)e−iωxdx
F
(
ω
)
F(\omega)
F(ω)就是傅里叶变换,得到的就是频域曲线。
f
(
x
)
f(x)
f(x)与
F
(
ω
)
F(\omega)
F(ω)二者成为傅里叶变换对,可以相互转换:
F
(
ω
)
=
∫
−
∞
∞
f
(
t
)
e
−
j
ω
t
d
t
⟺
f
(
t
)
=
1
2
π
∫
−
∞
∞
F
(
ω
)
e
j
ω
t
d
ω
F(\omega)=\int_{-\infty}^{\infty}f(t)e^{-j\omega t}dt \iff f(t) = \frac{1}{2\pi}\int_{-\infty}^{\infty}F(\omega)e^{j\omega t}d\omega
F(ω)=∫−∞∞f(t)e−jωtdt⟺f(t)=2π1∫−∞∞F(ω)ejωtdω
可以这么说,二者是同一个数学对象的两种形式,一个是函数,一个是向量。
傅里叶变换的性质及其应用举例
连续傅里叶变换的一些性质
- 模、幅度函数、相角
F ( u ) = R ( u ) + j I ( u ) = ∣ F ( u ) ∣ e j ϕ ( u ) F(u) = R(u)+jI(u)=|F(u)|e^{j\phi(u)} F(u)=R(u)+jI(u)=∣F(u)∣ejϕ(u)
模: F ( u ) = R 2 ( u ) + I 2 ( u ) F(u)=\sqrt{R^2(u)+I^2(u)} F(u)=R2(u)+I2(u) (也称为幅度函数,傅里叶谱,频谱)相角: ϕ ( u ) = t a n − 1 [ I ( u ) R ( u ) ] \phi(u)=tan^{-1}[\frac{I(u)}{R(u)}] ϕ(u)=tan−1[R(u)I(u)]
函数 f ( x ) f(x) f(x):
幅度函数:
双变量函数 f ( x , y ) f(x,y) f(x,y)的傅里叶变换
ℑ { f ( x , y ) } = F ( u , v ) ℑ − 1 { F ( u , v ) } = f ( x , y ) \Im\{f(x,y)\} = F(u,v)\\ \Im^{-1}\{F(u,v)\} = f(x,y) ℑ{f(x,y)}=F(u,v)ℑ−1{F(u,v)}=f(x,y)对称性
傅里叶变换后得到实奇部与虚偶部: F ( u ) = F e ( u ) − j F o ( u ) F(u) = F_e(u)-jF_o(u) F(u)=Fe(u)−jFo(u)
故 F ( u ) F(u) F(u)具有共轭对称性: F ( u ) = F ∗ ( − u ) F(u) = F^*(-u) F(u)=F∗(−u)
- 加法原理
ℑ { f ( x ) + g ( x ) } = F ( u ) + G ( u ) \Im\{f(x)+g(x)\} = F(u)+G(u) ℑ{f(x)+g(x)}=F(u)+G(u)
且由加法定义可推出:
ℑ { c f ( x ) } = c F ( u ) \Im\{cf(x)\} = cF(u) ℑ{cf(x)}=cF(u)
图像展示:
平移原理
ℑ { f ( x − a ) } = e j 2 π u a F ( u ) \Im\{f(x-a)\}=e^{j2\pi ua}F(u) ℑ{f(x−a)}=ej2πuaF(u)相似性原理(展缩性质)
ℑ { f ( a x } = 1 ∣ a ∣ F ( u a ) \Im\{f(ax\}=\frac{1}{|a|}F(\frac{u}{a}) ℑ{f(ax}=∣a∣1F(au)
图像展示:
- Rayleigh’s原理
e n e r g y = ∫ − ∞ ∞ ∣ f ( x ) ∣ 2 d x = ∫ − ∞ ∞ ∣ F ( u ) ∣ 2 d u energy = \int_{-\infty}^{\infty}|f(x)|^{2}dx = \int_{-\infty}^{\infty}|F(u)|^2du energy=∫−∞∞∣f(x)∣2dx=∫−∞∞∣F(u)∣2du
离散傅里叶变换的一些性质
可分离性
F ( u , v ) = 1 N ∑ x = 0 N − 1 e − j 2 π u x / N ⋅ ∑ y = 0 N − 1 f ( x , y ) e − j 2 π v y / N f ( x , y ) = 1 N ∑ u = 0 N − 1 e − j 2 π u x / N ⋅ ∑ v = 0 N − 1 F ( u , v ) e − j 2 π v y / N F(u,v) = \frac{1}{N}\sum_{x=0}^{N-1}e^{-j2\pi ux/N}\cdot\sum_{y=0}^{N-1}f(x,y)e^{-j2\pi vy/N}\\f(x,y) = \frac{1}{N}\sum_{u=0}^{N-1}e^{-j2\pi ux/N}\cdot\sum_{v=0}^{N-1}F(u,v)e^{-j2\pi vy/N} F(u,v)=N1x=0∑N−1e−j2πux/N⋅y=0∑N−1f(x,y)e−j2πvy/Nf(x,y)=N1u=0∑N−1e−j2πux/N⋅v=0∑N−1F(u,v)e−j2πvy/N线性性质
ℑ { a f ( x , y ) + b g ( x , y ) } = a ℑ { f ( x , y ) } + b ℑ { g ( x , y ) } \Im\{af(x,y)+bg(x,y)\} = a\Im\{f(x,y)\}+b\Im\{g(x,y)\} ℑ{af(x,y)+bg(x,y)}=aℑ{f(x,y)}+bℑ{g(x,y)}比例性
ℑ { f ( a x , b y ) } = 1 ∣ a b ∣ F ( u a , v b ) \Im\{f(ax,by)\} = \frac{1}{|ab|}F(\frac{u}{a},\frac{v}{b}) ℑ{f(ax,by)}=∣ab∣1F(au,bv)周期性
F ( u ) = F ( u + N ) F(u) = F(u+N) F(u)=F(u+N)
快速傅里叶变换
利用共轭性质将逆离散傅里叶变换变为其共轭数的正离散傅里叶变换。
傅里叶变换应用举例
图(a)为一幅受正弦干扰模式覆盖的图像。 图(b)是(a)的傅立叶频谱幅度图, 其上有一对较明显的脉冲白点(正交分解后便于处理)。利用带阻滤波器除掉亮点。然后取傅立叶反变换,就可得到图(d)和 (f)所示的恢复效果。
Z变换
Z变换的引入原因及其定义
首先,我们先来看看Z变换的定义:
序列
x
(
n
)
x(n)
x(n)的
z
z
z变换
X
(
z
)
X(z)
X(z)定义为:
X
(
z
)
=
∑
n
=
−
∞
∞
x
(
n
)
z
−
n
X(z) = \sum_{n = -\infty}^{\infty}x(n)z^{-n}
X(z)=n=−∞∑∞x(n)z−n
表达式中的
z
z
z是可由我们自由选取的,因此,通过改变
z
z
z的值,我们总能够找到一个
z
z
z使得
∑
n
=
−
∞
∞
∣
x
(
n
)
∣
z
−
n
<
∞
\sum_{n = -\infty}^{\infty}|x(n)|z^{-n}<\infty
∑n=−∞∞∣x(n)∣z−n<∞成立,即使
X
(
z
)
X(z)
X(z)这个级数收敛。对给定的序列,使z变换收敛的那些
z
z
z值就称为z变换的收敛域,缩写ROC。
同理我们可以知道,无穷项之和不可能总是有限的,因此傅里叶变换的幂级数不是对所以序列都收敛。这也就是我们引入Z变换的原因——傅里叶变换不是对所有序列都收敛,因此我们需要一个能包括更广泛信号的傅里叶变换的推广形式——Z变换。
下面来介绍一些常见的基本Z变换:
离散冲激信号: δ ( n ) \delta(n) δ(n)
X ( z ) = ∑ n = 0 ∞ δ ( n ) z − n = 1 X(z)=\sum_{n=0}^{\infty}\delta(n)z^{-n}=1 X(z)=n=0∑∞δ(n)z−n=1阶跃信号: u ( n ) u(n) u(n)( ∣ z ∣ > 1 |z|>1 ∣z∣>1才能收敛)
X ( z ) = ∑ n = 0 ∞ u ( n ) z − n = z z − 1 X(z) = \sum_{n=0}^{\infty}u(n)z^{-n} = \frac{z}{z-1} X(z)=n=0∑∞u(n)z−n=z−1z斜线信号: x ( n ) = n u ( n ) x(n) = n u(n) x(n)=nu(n)
X ( z ) = ∑ n = 0 ∞ n z − n = z ( z − 1 ) 2 X(z) = \sum_{n=0}^{\infty}nz^{-n}=\frac{z}{(z-1)^2} X(z)=n=0∑∞nz−n=(z−1)2z指数序列: x ( n ) = a n u ( n ) x(n) = a^nu(n) x(n)=anu(n)( ∣ z ∣ > ∣ a ∣ |z|>|a| ∣z∣>∣a∣才能收敛)
X ( z ) = ∑ n = 0 ∞ a n z − n = z z − a X(z) = \sum_{n=0}^{\infty}a^nz^{-n} = \frac{z}{z-a} X(z)=n=0∑∞anz−n=z−az
Z变换的性质及其应用
Z变换的一些性质
线性
若 x ( n ) x(n) x(n)的Z变换为 X ( z ) X(z) X(z), y ( n ) y(n) y(n)的Z变换为 Y ( z ) Y(z) Y(z)
则 a ⋅ x ( n ) + b ⋅ y ( n ) a\cdot x(n) + b\cdot y(n) a⋅x(n)+b⋅y(n)的Z变换为 a ⋅ X ( z ) + b ⋅ Y ( z ) a\cdot X(z) + b\cdot Y(z) a⋅X(z)+b⋅Y(z)
时移
若 x ( n ) x(n) x(n)的Z变换为 X ( z ) X(z) X(z)
则 x ( n − m ) x(n-m) x(n−m)的Z变换为 z − m ∗ X ( z ) z^{-m}*X(z) z−m∗X(z)
初值定理
若 x ( n ) x(n) x(n)的Z变换为 X ( z ) X(z) X(z)
则 x ( 0 ) = lim z → ∞ X ( z ) x(0) = \lim_{z\to \infty}X(z) x(0)=limz→∞X(z)
Z域微分
若 x ( n ) x(n) x(n)的Z变换为 X ( z ) X(z) X(z)
则 n x ( n ) nx(n) nx(n)的Z变换为 − z d [ X ( z ) ] d z -z\frac{d[X(z)]}{dz} −zdzd[X(z)]
终值定理
若 x ( n ) x(n) x(n)的Z变换为 X ( z ) X(z) X(z)
则:
lim n → ∞ x ( n ) = lim z → 1 [ ( z − 1 ) X ( z ) ] \lim_{n\to \infty}x(n) = \lim_{z\to1}[(z-1)X(z)] n→∞limx(n)=z→1lim[(z−1)X(z)]
Z变换应用举例——消除匀速直线运动
最终效果: