短時距傅立葉變換

维基百科,自由的百科全书
跳转至: 导航搜索


短時距傅立葉變換傅立葉變換的一種變形,為時頻分析中其中一個重要的工具。

傅立葉轉換在概念上的區別[编辑]

將訊號做傅立葉變換後得到的結果,並不能給予關於信號頻率隨時間改變的任何資訊。以下的例子作為說明:

x(t)=\begin{cases}
\cos(440  \pi t);  & t < 0.5 \\
\cos(660 \pi t);  & 0.5 \leq t < 1 \\
\cos(524 \pi t);  & t \ge 1 
\end{cases}

傅立葉變換後的頻譜和短時距傅立葉轉換後的結果如下:

傅立葉轉換後, 橫軸為頻率(赫茲)
短時距傅立葉轉換, 橫軸為時間(秒),縱軸為頻率(赫茲)

由上圖可發現,傅立葉轉換只提供了有哪些頻率成份的資訊,卻沒有提供時間資訊;而短時傅立葉轉換則清楚的提供這兩種資訊。這種時頻分析的方法有利於頻率會隨著時間改變的信號(例如:音樂信號、語音信號等)分析。

定義[编辑]

數學定義[编辑]

簡單來說,在連續時間的例子,一個函數可以先乘上僅在一段時間不為零的窗函數再進行一維的傅立葉變換。再將這個窗函數沿著時間軸挪移,所得到一系列的傅立葉變換結果排開則成為二維表象。數學上,這樣的操作可寫為:

 X(t, f) = \int_{-\infty}^{\infty} w(t-\tau)x(\tau)  e^{-j 2 \pi f \tau} \, d\tau

另外也可用角頻率來表示:

 X(t, \omega) = \int_{-\infty}^{\infty} w(t-\tau)x(\tau)  e^{-j \omega \tau} \, d\tau

其中w(t)窗函數,窗函數種類有很多種,會在稍後再做仔細討論。x(t)是待變換的訊號。X(t,\omega)w(t-\tau)x(\tau)的傅立葉變換。 隨著t的改變,窗函數在時間軸上會有位移。w(t-\tau)x(\tau)後,信號只留下了窗函數截取的部分做最後的傅立葉轉換。

而反短時距傅立葉轉換,其數學類似傅立葉轉換,但利用 x(t)=w^{-1}(t_1-t)須消除窗函數的作用:

 x(t)=w^{-1}(t_1-t) \int_{-\infty}^{\infty} X(t_1, f) e^{j 2 \pi f t}\, df ; w(t_1-t)\ne 0

窗函數[编辑]

窗函數通常滿足下列特性:

  1. w(t) = w(-t) \,,即為偶函數。
  2. max(w(t))=w(0) \,,即窗函數的中央通常是最大值的位置。
  3. w(t_1)\ge w(t_2), |t_2| \ge |t_1|,即窗函數的值由中央開始向兩側單調遞減。
  4. w(t)\cong 0 , |t|\to \infty,即窗函數的值向兩側遞減為零。

常見的窗函數有:方形、三角形、高斯函數等,而短時距傅立葉轉換也因窗函數的不同而有不同的名稱。而加伯轉換,即為窗函數是高斯函數的短時距傅立葉轉換,通常沒有特別說明的短時距傅立葉轉換,即為加伯轉換


方形窗函數的短時距傅立葉轉換[编辑]

概念[编辑]

方形窗函數,B = 50,橫軸為時間(秒)

右圖即為方形窗函數的一個例子,其數學定義:  w(t) =\begin{cases}
\ 1; & |t|\leq B \\
\ 0; & |t|>B
\end{cases}

可以隨要分析的信號,來調整B的大小(即調整方形窗函數的寬度)。至於B的選擇,將會在下面探討。

短時傅立葉轉換可以簡化為

 X(t, f) = \int_{t-B}^{t+B} x(\tau)  e^{-j 2 \pi f \tau} \, d\tau

反短時傅立葉轉換可簡化為

 x(t)=\int_{-\infty}^{\infty} X(t_1, f) e^{j 2 \pi f t}\, df ;   t-B<t_1<t+B

特性[编辑]

其大部分的特性都與傅立葉轉換的特性相對應

  • 積分特性
\int_{-\infty}^{\infty} X(t, f)\, df = \int_{t-B}^{t+B} x(\tau)\int_{-\infty}^{\infty} e^{-j 2 \pi f \tau}\, df \, d\tau = \begin{cases}
\ x(0); & |t|\leq B \\
\ 0; & |t|>B
\end{cases}
  • 位移特性(時間軸方向的移動)
\int_{t-B}^{t+B} x(\tau+\tau_0) e^{-j 2 \pi f \tau}\, d\tau = X(t+\tau_0,f)e^{j 2 \pi f \tau_0}
  • 調變特性(頻率軸方向的移動)
\int_{t-B}^{t+B} [x(\tau) e^{j 2 \pi f_0 \tau}\, d\tau = X(t,f-f_0)
  • 線性特性
若有一信號h(t)=\alpha x(t)+\beta y(t) \, H(t,f), X(t,f), Y(t,f) \,分別為h(t),x(t),y(t) \,做方形窗函數短時 距傅立葉轉換的結果,則H(t,f)=\alpha X(t,f)+\beta Y(t,f) \,
  • 能量積分特性
\int_{-\infty}^{\infty} |X(t, f)|^2\, df = \int_{t-B}^{t+B} |x(\tau)|^2\,d\tau
\int_{-\infty}^{\infty} X(t,f)Y^*(t,f)\,df =  \int_{t-B}^{t+B} x(\tau)y^*(\tau)\,d\tau
  • 特殊信號
1. 當x(t) =\delta(t) \,
X(t,f)=\begin{cases}
\ 1; & |t| \leq B \\ 
\ 0; & |t| > B 
\end{cases}
2. 當x(t) = 1 \,
X(t,f)=2Bsinc(2Bf)e^{-j2\pi ft} \,

方形窗函數寬度(B)的選取[编辑]

方形窗函數短時距傅立葉轉換用不同窗函數寬度(B)的比較,橫軸為時間(秒),縱軸為頻率(赫茲)
  • 由上述特性中的特殊信號x(t) =\delta(t)來分析,信號只有在t=0的時候有值;若短時距傅立葉轉換是理想的話,X(t,f)應該只有在t=0的時候有能量。但由上面的特性可發現,能量會出現在\begin{smallmatrix}|t| \leq B \end{smallmatrix}中間。因此,若我們取較小的 B,則可使結果趨近理想。
  • 接著我們來分析x(t) = 1 ,信號因為沒有改變,應該為DC。若短時距傅立葉轉換是理想的話,X(t,f)應該只有在f=0的時候有能量。但由上面的特性可發現,能量會沿著頻率軸呈現sinc函數。若我們取較大的 B,可使sinc函數沿著頻率軸變窄,使得結果趨近理想。
  • 綜合以上說明,若我們使用較大的方形窗函數寬度(B),則X(t,f)時間軸的解析度會下降;頻率軸的解析度上升。若使用較小的B,則X(t,f)時間軸的解析度會上升;頻率軸的解析度下降。我們以下面做為例子說明:
x(t)=\begin{cases}
\cos(2  \pi t);  & t < 10 \\
\cos(6 \pi t);  & 10 \leq t < 20 \\
\cos(4 \pi t);  & t \ge 20 
\end{cases}

結果如右圖所示,B越大則在頻率變化處(t = 10, 20)附近的頻率越不準確,即可能會有多個頻率成分出現。但同時,其他時間點的能量則較集中;沒有如B較小時,頻率散開或模糊的情形。

優缺點[编辑]

  • 優點:比起傅立葉轉換更能觀察出信號瞬時頻率的資訊。
  • 缺點:計算複雜度高

頻譜(Spectrogram)[编辑]

Spectrogram即短時傅立葉轉換後結果的絕對值平方,兩者本質上是相同的,在文獻上也常出現spectrogram這個名詞。

SP_x(t,f) = |X(t,f)|^2 = | \int_{-\infty}^{\infty} w(t-\tau)x(\tau)  e^{-j 2 \pi f \tau} \, d\tau |^2

參考書目、資料來源[编辑]

  1. Jian-Jiun Ding, Time frequency analysis and wavelet transform class notes, the Department of Electrical Engineering, National Taiwan University (NTU), Taipei, Taiwan, 2011.
  2. Alan V. Oppenheim, Ronald W. Schafer, John R. Buck : Discrete-Time Signal Processing, Prentice Hall, ISBN 0-13-754920-2