短时傅里叶变换

时间分辨率和频率分辨率

    时间分辨率:信号频率随时间变化,要将这种频率变化分辨出来。自然,窗越短越好,以使得在窗内信号频率近似不变。

    频率分辨率:同一时间段有两个(或更多)不同频率的信号叠加在一起,要将这两个信号分辨出来。那么,窗越长越好,以使得窗内两个不同频率的信号能展现出明显差异:

    例如,100Hz的信号和100.1Hz的信号叠加,一两个周期恐怕看不出来,必须要足够多的周期才能区别开。

短时傅里叶变换可以看做移位信号x[n+m]通过窗w[m]的傅里叶变换。当n改变时,信号x[m]滑动着通过窗w[m]。对每一个n,可以看到信号的一段不同部分。

当然,也可以看做将窗平移,而保持傅里叶分析的时间原点固定不变,由此可以得出稍许不同的另一个短时傅里叶变换定义式。

当窗对于所有m均为1,即不加窗时,X[n, λ)=Σx[n+m]e-jλm=Σx[n+m]e-jλ(n+m)ejλn=X(e)ejλn

因为短时傅里叶变换包含信号的平移,所以上式也就可以理解了:平移带来相位的变化,于是X[n, λ)=X(e)ejλn。(点n附近的序列移动到原点附近)

另外,若设m'=n+m,短时傅里叶变换还可以写成下面的形式:

X[n, λ)=Σx[m']w[-(n-m')]ejλ(n-m')

若设hλ[n]=w[-n]ejλn,那么短时傅里叶变换就是x[n]和hλ[n]的卷积(固定λ):

傅里叶变换本身就满足交换性质和线性性质,短时傅里叶变换恰好又具备类似卷积的滑动过程。 

对不同的λ(频率),hλ[n]相当于对w[n]乘以不同频率的复指数信号(施加不同频率的复指数权),以便能够将x[m]的相应频率成分提取出来。

我们固定n时,信号和窗没有相对滑动,这样信号和窗的乘积在频域就相当于两者频谱的卷积。在做这样的卷积时,我们滑动W(e)得到Hλ(e)=W(ej(λ-ω)),得到一个通带中心位于ω=λ的带通滤波器,这个滤波器的通带宽度(近似?)等于窗的傅里叶变换之主瓣的宽度。

在窗或信号的滑动过程中,对某一特定的n0,x[n0]可能会参与多个时间点的X[n, λ)计算。例如,若窗长度为5(w[0]~w[4]),那么计算X[0, λ]需要x[0:4],计算X[1, λ]需要x[1:5]……这样,x[1]同时参与从X[-3, λ]直到X[1, λ)的计算过程。所以,STDTFT的计算结果在时间维度上是包含有冗余信息的。同样,连续变量λ也可以离散化。这样得到抽取后的X[rR, k]=X[rR, 2kπ/N),R为时间维度上的抽取间隔。当然,R不能大于窗的长度L。若DFT长度为N,那么只要满足N≥L≥R[注],就可以重构信号。特殊情况就是N=L=R。

[注]实际上应该是L≥R,N≥R。

原文地址:https://www.cnblogs.com/byeyear/p/6129385.html