數(shù)學(xué)實現(xiàn)信號分析 [6]: 窗口傅里葉變換WFT

之前的專欄討論了連續(xù)傅里葉變換和離散傅里葉變換
我們可以發(fā)現(xiàn)傅里葉變換有一個缺點:? 那就是必須對全部的已有數(shù)據(jù)進行分析,? 并且單獨一個數(shù)據(jù)的改變也會影響整個傅里葉變換的結(jié)果
為了可以對一小部分的數(shù)據(jù)進行分析, 于是就出現(xiàn)了窗口傅里葉變換(Window FT), 或者叫做短時傅里葉變換(Short Time FT,?STFT) 或 Gabor變換

時窗函數(shù)
為了實現(xiàn)WFT的短時性, 最直接的方法就是把需要分析的那一段信號單獨拿出來,? 而且既然是分析頻率, 那么也不可能只單獨拿一個點進行分析, 而需要持續(xù)一段時間的信號
提取信號的方法就是構(gòu)造一個函數(shù), 在趨向無窮時快速收斂或直接等于零,? ?把原信號函數(shù)跟這個函數(shù)相乘, 就得到了一個僅限于局部的信號函數(shù), 然后再對這個新函數(shù)進行分析就好了,? 而這個構(gòu)造出來的函數(shù)就叫做時窗函數(shù)
那么WFT的表達式為:

其中, GF(ω, t) 為WFT的變換方法,? w(τ-t) 是向右平移了 t 的窗函數(shù),? ω是頻率,? ?而 f(τ)w(τ-t)? 是原信號函數(shù)在 時刻t 被時窗函數(shù)w截取出來部分
其表達式也是非常直接的,? 以下使用原函數(shù)??f(t) = sin(t^2)?, 而窗函數(shù)? w(t) = { |t| < 1:?1+cos(t),? others: 0}? 為例子:

紅色為原函數(shù), 橙色為原函數(shù)的傅里葉變換, 可以看到非?;靵y, 完全看不出有什么規(guī)律, 綠色為窗函數(shù),?藍色為b0=5時原函數(shù)被時窗截取的信號,?紫色就是信號作傅里葉變換的結(jié)果, 可以看到剛好在w=5處有一個尖峰, 也就是說我們的窗口傅里葉變換表現(xiàn)得非常好

頻窗函數(shù)
與時窗函數(shù)相同,?有的時候我們需要把一部分頻率范圍進行逆變換得到這個頻率對應(yīng)的信號
頻窗函數(shù)與時窗函數(shù)只有兩點不一樣,??第一, 時窗函數(shù)必須是實函數(shù) (即在時間t內(nèi)全部為實數(shù)的函數(shù)), 而頻窗函數(shù)可以為復(fù)函數(shù) (即在頻率ω內(nèi)可以為復(fù)數(shù)的函數(shù)),? 第二, 時窗函數(shù)與其自身的內(nèi)積必須為1, 而頻窗函數(shù)沒有這個要求

高斯窗
在通常WFT中, 數(shù)學(xué)家們?yōu)榱俗非髽O致(lan duo), 提出了綜合時窗和頻窗的窗函數(shù),?對窗函數(shù)有以下幾點要求:
1. 窗函數(shù)在時域中與自身內(nèi)積為1, 且在時域中為實函數(shù).? 2. 窗函數(shù)在時域里的定義函數(shù)經(jīng)過傅里葉變換后得到頻域定義函數(shù).? 3. 窗函數(shù)在時域和頻域中都具有特定的開窗半徑
在符合以上要求的窗函數(shù)里, 最簡單的就是高斯窗, 也就是用高斯函數(shù)作窗,? 高斯窗的定義如下***? 這個函數(shù)貌似是教材里寫錯了, 這里我自己擅自進行了更改, 詳情見下面?zhèn)渥?***?

高斯窗有一個非常美妙的性質(zhì)就是: 在經(jīng)過傅里葉變換后也是實高斯函數(shù)

這就意味著高斯窗在通常的情況里是一個非常好的窗函數(shù)

時頻圖
在WFT中我們可以看到有兩個變量: 頻率ω和時間t,?
如果我們把x軸作為時間, y軸作為頻率, 那么就可以對任意一個信號作WFT并記錄在圖像上
這里使用一首歌作一個例子:


iWFT (逆窗口傅里葉變換)??*********
不知道哪個人說過:? 沒有逆變換的變換是不存在意義的
所以我這里直接給出逆變換 (雖然我一開始以為是沒有逆變換的 = = )


在教材里使用的窗函數(shù)是標準高斯函數(shù)

這個函數(shù)有一個問題, 就是它并不滿足窗函數(shù)的一個條件:? (在時域內(nèi)的內(nèi)積為1),? 這個函數(shù)在時域內(nèi)與自身的內(nèi)積的數(shù)值與a有關(guān), 也就是說并不是一個定值
但是這個函數(shù)在實數(shù)內(nèi)積分等于一 (當(dāng)然, 高斯函數(shù)嘛),??
如果使用這個函數(shù)作窗函數(shù)的話, 除了上述這點, 其他地方表現(xiàn)得跟我修正的那個一樣好, 除了逆變換
逆窗口傅里葉變換是建立在一個基礎(chǔ)上的, 那就是?(在時域內(nèi)的內(nèi)積為1), 那么針對這個高斯函數(shù), 逆變換就需要更改為

使用這個式子計算是可以得到準確答案的,? 但是!!!? 但是!!! 在這個教材里使用標準高斯函數(shù), 但是逆變換是含有w的那個,? 我:????
關(guān)于逆變換的證明:
窗口傅里葉變換可以看作以下過程:

那么就有:

兩端同乘一個w再對τ積分有:

右邊的式子稍微把F^-1寫出來就是逆窗口傅里葉變換的式子了,? 而左邊我們化簡一下得:

Q.E.D.
彩蛋:? 下期預(yù)告: 不確定性原理