本页使用了标题或全文手工转换

短時距傅立葉變換

维基百科,自由的百科全书
跳到导航 跳到搜索

短時距傅立葉變換傅立葉變換的一種變形,也稱作windowed Fourier transform或time-dependent Fourier transform,用於決定隨時間變化的信號局部部分的正弦頻率和相位。實際上,計算短時距傅立葉變換(STFT)的過程是將長時間信號分成數個較短的等長信號,然後再分別計算每個較短段的傅立葉轉換。通常拿來描繪頻域與時域上的變化,為時頻分析中其中一個重要的工具。

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

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

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

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

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

定義[编辑]

連續短時傅立葉轉換[编辑]

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

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

其中窗函數,窗函數種類有很多種,會在稍後再做仔細討論。是待變換的訊號。的傅立葉變換。 隨著的改變,窗函數在時間軸上會有位移。经後,信號只留下了窗函數截取的部分做最後的傅立葉轉換,所得到的結果為一複數函數,代表著信號隨時間與頻率變化的大小與相位。

離散短時傅立葉轉換[编辑]

在離散時間的例子,資料會被切割成數個大量的帧,而每組帧通常會互相重疊,避免因切割方式造成邊界的誤差。而每組帧在各自進行傅立葉轉換後所得的複數結果會再進行相加,可得到每個點時間與頻率變化的大小與相位。數學上,這樣的操作可寫為:

相同地,其中窗函數是待變換的訊號。在這個例子裡,m是離散的且ω是連續的,但大部分實際的應用當中,短時距傅立葉轉換在電腦中都是以快速傅立葉轉換進行計算(見實現方法的快速傅立葉變換),而此時這兩個參數都是離散且被量化的。

Sliding 離散傅立葉轉換[编辑]

當只想要得知特定少數的ω,或是短時距傅立葉轉換每次窗函數移動m的值,則短時距傅立葉轉換可以利用sliding DFT演算法更有效地計算出來。

反短時距傅立葉轉換[编辑]

短時距傅立葉轉換是可逆的,也就是說原本的信號可以藉由反短時距傅立葉轉換將短時距傅立葉轉換後的信號還原。

其中最廣為接受的反短時距傅立葉轉換方法是重疊-相加之摺積法,此方法也促成了更多樣的信號處理方法。

反短時距傅立葉轉換,其數學類似傅立葉轉換,但須消除窗函數的作用,首先必須先將窗函數的總面積規模化使得

而從上也可輕易地得出

連續傅立葉轉換公式如下:

進行上述的替換:

將積分順序進行交換:

因此傅立葉轉換可以視為某種將所有的短時距傅立葉轉換的相位同調部分進行相加。

而反傅立葉轉換公式如下:

因此 可以從被復原

與上面所列的窗函數的式子進行比較,可得

對反傅立葉轉換公式中的來說是不變的

另外用角頻率來表示:

窗函數[编辑]

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

  1. ,即為偶函數。
  2. ,即窗函數的中央通常是最大值的位置。
  3. ,即窗函數的值由中央開始向兩側單調遞減。
  4. ,即窗函數的值向兩側遞減為零。

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

非對稱窗函數[编辑]

當在特殊應用時,窗函數特性的第一點可以不滿足,如下圖的非對稱窗函數,其中。左圖為窗函數原本的圖形,而在計算短時距傅立葉變換時,需將窗函數轉到軸上得出,換言之,欲得到的短時距傅立葉變換的結果需在的時間點才能算出,因此若愈小,即可愈快得結果,此種非對稱窗函數可應用在地震波、碰撞偵測...等,需要即時處理的應用。Asymmetric window.png

優缺點[编辑]

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

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

概念[编辑]

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

右圖即為方形窗函數的一個例子,其數學定義:

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

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

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

特性[编辑]

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

  • 積分特性
  • 位移特性(時間軸方向的移動)
  • 調變特性(頻率軸方向的移動)
  • 線性特性
若有一信號分別為做方形窗函數短時 距傅立葉轉換的結果,則
  • 能量積分特性
  • 特殊信號
1. 當
2. 當

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

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

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

上述也是其中一個小波轉換及多解析度分析作為改進的方向,其中多解析度分析能在高頻時有較好的時間軸解析,而在低頻時能有較好的頻率軸解析,此種組合較契合許多實際的應用。

時間軸與頻率軸的解析度無法同時提升也與海森堡不確定性原理有關,即時間與頻率的標準差乘積有所限制,而高斯函數恰好能符合不確定性原理的極值,也就是兩者同時達到最好的解析度,而應用高斯函數的時頻分析方法即為加伯轉換,而在經過修改及多解析度分析後,成為了莫萊小波

優缺點[编辑]

  • 優點:方形窗函數的短時距傅立葉轉換有許多可應用的數學特性,在數位的應用上所需的計算時間較少。
  • 缺點:時頻分析的表現較差

瑞利頻率[编辑]

當Nyquist頻率是能被有意義分析的頻率最大值的限制,而瑞利頻率則是能被有限頻寬頻的窗函數解析的頻率最小值的限制。若給定一窗函數的長度是T秒,最低能被解析的頻率即為1/T Hz。

瑞利頻率在短時距傅立葉變化的應用中扮演重要的腳色,像是在分析神經信號時。

頻譜(Spectrogram)[编辑]

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

短時距傅立葉變換實現方法[编辑]

從連續短時距傅立葉變化的定義出發


,則上述式子時域可從連續轉為離散

若當

上式可改寫為



直接運算[编辑]

限制條件[编辑]

(1)要滿足Nyquist criterion

推導[编辑]

轉換到離散形式()

for

時間複雜度[编辑]



使用快速傅立葉變換[编辑]

限制條件[编辑]

(1)要滿足Nyquist criterion

(2)

(3)


推導[编辑]

其中

時間複雜度[编辑]

利用FFT計算,其中每次FFT的時間複雜度為

總時間複雜度為



使用快速傅立葉變換加上遞迴關係式[编辑]

限制條件[编辑]

(1)要滿足Nyquist criterion

(2)

(3)

(4)需為方形窗函數的短時距傅立葉轉換


推導[编辑]


(1)以FFT計算

其中


(2)利用遞迴關係式計算算


時間複雜度[编辑]

(1)FFT計算一次

(2)利用遞迴關係,計算時的數值

總時間複雜度



使用Chirp-Z 轉換[编辑]

限制條件[编辑]

(1)要滿足Nyquist criterion


推導[编辑]


時間複雜度[编辑]

當n為定值時

(1) 相乘時間複雜度為2Q+1

(2) convolution時間複雜度為

(3)相乘時間複雜度為 F

總時間複雜度為


雖然此實現方法和使用FFT計算的時間複雜度相同,但因為convolution相當於做三次FFT,因此實際操作時運算時間約為使用FFT計算的2~3倍

Unbalanced Sampling for STFT and WDF[编辑]

將直接法和快速傅立葉轉換方法做修正

1.直接法[编辑]

修正後 :

其中,

(假設 for ),

註:(輸入訊號的取樣間隔)

(在t軸上的輸出訊號的取樣間隔)

然而,是整數會是比較好的。

2.快速傅立葉轉換[编辑]

限制條件[编辑]

(1)

(2)  : (只要是整數的倒數即可)

(3) 的頻寬是

i.e. ,當

過程[编辑]

for

for

修正後:

Non-Uniform [编辑]

(1) 先用比較大的

(2) 如果發現 之間有很大的差異,則在 之間選用比較小的取樣區間

(皆為整數)

再用Unbalanced Sampling for STFT and WDF 中修正後的快速傅立葉轉換方法算出

(3) 以此類推,如果 的差距還是太大,則再選用更小的取樣間隔

(皆為整數)

参见[编辑]

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

  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
  3. Jian-Jiun Ding, Time frequency analysis and wavelet transform class notes, Graduate Institute of Communication Engineering, National Taiwan University (NTU), Taipei, Taiwan, 2017.