建议直接观看YouTube时频Wavelets: a mathematical microscope
傅里叶变换
傅里叶变换将周期性信号从时域
t
t
t转换到频域
ω
\omega
ω:
F
(
ω
)
=
∫
f
(
t
)
e
−
j
ω
t
d
t
F(\omega) = \int f(t)e^{-j{\omega}t}dt
F(ω)=∫f(t)e−jωtdt
时域信号中不包括频率信息,而转到频域后又丢失了时间信息,也就是在频域中不知道某个频率是在时域中哪个时间出现的,例如以下两个非平稳信号的傅里叶变换结果,无法体现每个频率的信号在原时域中出现的位置(时间):
为了克服这个缺点,就需要变换结果同时包含时间和频率信息——时频域(time-frequency domain)。
短时傅里叶变换
短时傅里叶变换(STFT)通过加窗口(
w
(
t
−
τ
)
w(t-\tau)
w(t−τ), 将信号切为固定长度的信号)来为变换结果提供时间信息:
F
(
τ
,
w
)
=
∫
f
(
t
)
w
(
t
−
τ
)
e
−
j
ω
t
d
t
F(\tau, w) = \int f(t)w(t-\tau)e^{-j\omega t}dt
F(τ,w)=∫f(t)w(t−τ)e−jωtdt
如上图的转换结果,在时频域中,时间轴上相同位置的频率有了对应关系。但STFT的缺点在于难以在时间和频率的精度上达到平衡。由于频率信号具有一些规律,例如低频信息一般占据更长的时间周期,高频信号多占用很短的时间周期。小波变换就很好的利用了这些信息。
连续小波变换
Continuous wavelet transform(CWT)将函数
f
(
t
)
f(t)
f(t)分解为一些列基函数
Ψ
s
,
τ
(
t
)
\Psi_{s,\tau}(t)
Ψs,τ(t), 即 the wavelets:
ψ
(
s
,
τ
)
=
∫
f
(
t
)
Ψ
s
,
τ
(
t
)
d
t
\psi(s, \tau) = \int f(t)\Psi_{s,\tau}(t)dt
ψ(s,τ)=∫f(t)Ψs,τ(t)dt其中,
s
s
s表示scale(尺度),
τ
\tau
τ表示translation(平移)。直观来讲,和傅里叶变换只转到频率域一个维度相比,小波变换则转换到尺度和平移两个维度。小波
Ψ
s
,
τ
(
t
)
\Psi_{s,\tau}(t)
Ψs,τ(t)都是从mother wavelet(母小波)函数
Ψ
(
t
)
\Psi(t)
Ψ(t)通过平移和缩放产生的:
Ψ
s
,
τ
(
t
)
=
1
s
Ψ
(
t
−
τ
s
)
\Psi_{s, \tau}(t) = \frac{1}{\sqrt s}\Psi \left(\frac{t-\tau}{s}\right)
Ψs,τ(t)=s1Ψ(st−τ)
s
s
s是尺度因子,
τ
\tau
τ是平移因子,
s
\sqrt s
s是为了在不同尺度下energy normalization(能量归一化)。
从上述几个公式可以看出,与傅里叶变换确定的基函数不同的是,小波变换仅仅是给了基函数集。平方可积函数
Ψ
(
t
)
\Psi(t)
Ψ(t)需要积分为0:
∫
Ψ
(
t
)
d
t
=
0
\int \Psi(t)dt = 0
∫Ψ(t)dt=0
Morlet Wavelets
Ψ ( t ) = k e i ω t ⋅ e − t 2 2 \Psi(t) = k\ e^{i\omega t}\cdot e^{-\frac{t^2}{2}} Ψ(t)=k eiωt⋅e−2t2