看了很多傅里葉變換(連續信號和離散信號)的博客,都寫的不是很清楚,有些地方可能有誤,我在查閱了書籍和大量資料以後,爭取能用前後標註一致的公式把相關內容(帕斯瓦爾公式,能量信號,功率信號,能量譜,功率譜等)講清楚,說正確。最好先看連續信號再看離散信號哦
連續信號的請看語音識別MFCC系列(一)——連續信號、傅里葉變換
離散信號的請看語音識別MFCC系列(二)——離散信號、離散傅里葉變換
耐不住的話直接看第五部分也行。下面將講述:
- 不連續 週期 信號的傅里葉 級數
- 不連續 非週期 信號的傅里葉 變換
- 離散傅里葉變換
一、不連續週期信號的傅里葉級數(DFS)
對一個連續週期信號的一個週期進行點採樣,得到離散序列,則,,爲採樣週期,爲採樣頻率。
重現連續週期信號的傅里葉級數:
記爲離散域的基本頻率,就是頻率分辨率啦,就是最小的頻率單元啦,各個頻率分量的頻率都是他的整數倍,是次諧波的數字頻率(下面會有例子解釋哦)。因,則:
在序列表示中,可僅用表示,用表示,則上式爲:
當週期信號從連續域變換到離散域以後,它的頻率從映射到數字頻率從。離散信號被分爲個頻率分量,頻率分辨率爲,根據連續信號的傅里葉級數同理,離散信號的傅里葉級數也有複共軛的性質,即。
二、離散信號的帕斯瓦爾公式
推導就不寫了,就是用上面那些式子推出來的(猜測對於週期信號,上式代表的是功率,對於長度有限的離散信號,上式代表的是能量)。
三、不連續非週期信號的傅里葉變換(DTFT)
哎呀這裏和連續信號處理類似啦,所以連續信號一定要理解好哦!將長度有限的非週期信號,以爲週期,將延拓爲週期信號,這裏要大於信號長度哦,那當時,爲連續量,,,且這時趨於0,則乘個,採用頻譜密度表示頻譜。
四、離散傅里葉變換(DFT)
因DTFT在頻域是連續的,我們需要在時域和頻域都是離散的離散傅里葉變換,將長度有限的非週期信號,長度爲,以爲週期,將延拓爲週期信號,則DFS爲:
當和都取主值區間,則:
將上式乘以,用頻譜密度來表示,簡稱頻譜:
因爲是頻譜密度,所以,當時,對應的頻率分量的波形峯值是,當時,對應的頻率分量的波形峯值是。因爲負頻率的和正頻率共軛,所以當爲偶數時,只給個點的頻譜,最後一個點的頻率爲二分之一的採樣頻率,當爲奇數時,只給個點的頻譜,最後一個點的頻率稍小於二分之一的採樣頻率。
五、奈奎斯特頻率,頻譜混疊和泄露
採樣信號爲
對其做傅里葉變換得:
可知採樣信號的傅里葉變換爲原連續信號傅里葉變換週期延拓到以爲中心的頻譜,爲採樣角頻率,奈奎斯特頻率(Nyquist頻率)是採樣頻率的一半,原信號傅里葉變換頻譜的邊緣是它本身的最高頻率,容易看出來當纔不會發生頻譜混疊,也就是說奈奎斯特頻率大於即可。
頻譜泄露,就是比如本來只有頻率爲的分量,但是頻譜中出現了和相近的分量。舉個例子說明吧。
比如說有一段連續的週期信號,週期爲2s,那麼這段連續週期信號的傅里葉變換的基頻(就是上一篇博客的基本角頻率,其他頻率分量的角頻率都爲的倍數,),也就是說其他頻率分量的頻率都是的整數倍,如果我們就截斷2s的信號,那截斷以後就是連續非週期信號了,那就要先週期延拓再做傅里葉變換,週期延拓後和截斷前的信號一致,傅里葉變換也一致,頻譜爲一條線(在基頻處有個分量)。如果截斷4s的信號,週期延拓後和截斷前的信號一致,傅里葉變換的基頻爲,那麼頻譜爲一條線(在二倍頻處有個分量),幅值與原來相同。但是如果截斷3s的信號,週期延拓後在3s處有跳躍,容易產生高頻分量,而且重要的是,傅里葉變換的基頻爲,按道理說頻譜應該在1.5倍頻處有個幅值,但是頻譜中沒有1.5倍頻,只有1倍頻,2倍頻,那麼頻譜就會以1.5爲中心的其他整數倍頻處有分量,越靠近1.5幅值越大,和原來的不一致了!這就是頻譜泄露!如下圖所示:
根本解決方法是必須取自一個基本週期或基本週期的整數倍爲宜。但有的時候我們截斷的時候不知道基本週期,這時可以加長截取時間段,信號多一點能多代表一下整段信號吧,也可以加漢明窗等等窗函數,窗函數主要是減少旁瓣。可以參考下面幾個網址看細緻的分析和圖,內容都類似,總有一個能打開:
http://www.ni.com/white-paper/4844/zhs/
https://zhuanlan.zhihu.com/p/24318554
http://zhangzhenyuan163.blog.163.com/blog/static/85819389201410112942281/
http://www.ilovematlab.cn/thread-30099-1-1.html
http://www.chinaaet.com/article/15991
六、舉個DFT的例子吧,通俗解釋一下
1. 採樣得到一段離散的信號,用包含100個數字的數字序列表示,其中前12個數字如下所示:
1.00, 0.62, -0.07, -0.87, -1.51, -1.81, -1.70, -1.24, -0.64, -0.15, 0.05, -0.10
我們將上述數字序列用表示,爲某個數字在序列中的下標,如,等。這裏我們期待使用的信號是零均值信號,即數字序列的平均值爲0,相當於每個數字減去了數字序列的平均值(下文會解釋爲什麼這樣做)。
我們希望求得一系列頻率分量,將信號從時域轉化到頻域,使得上述數字序列爲一系列頻率分量之和。
2. 其次,什麼是信號相關性?
下面這個公式不是嚴格意義上的相關性計算公式,只能說是在信號是零均值的情況下,一定程度上能反應相關性。
有兩個信號和,在信號是零均值的情況下,一定程度上他們越相關(比如同正同負),所求的和越大,但不絕對。例如下面的圖a相關性大,和大,圖b相關性小,和小。
3. 下面來解釋離散傅里葉變換的公式!
代表的是某個頻率分量的係數,這個式子很想上面求相關性的式子呀,求得是和的相關性,那到底是什麼意思呢?先引入歐拉公式:
令,則:
可以看到是個複數,被分爲兩部分,實軸爲和某個頻率的餘弦函數的相關性,虛軸爲和某個頻率的正弦函數的相關性。
4. 當變化的時候,上述相關性的意義到底是什麼呢?
,
意味着當分量頻率爲0的時候(即爲一條直線),該分量的係數爲數字序列中所有數字之和。
,
代表什麼?當從到的時候,從0到呀!這代表了所有的採樣點僅代表一個週期!看下圖a,正弦波是不是隻有一個週期。圖b代表上式的實數部分,圖c代表上式的虛數部分。
,
代表什麼?當從到的時候,從0到呀!這代表了所有的採樣點僅代表三個週期(可不就是三個週期嗎)!看下圖a,正弦波是不是隻有三個週期。
,所有的個採樣點代表了個週期,約等於1個採樣點代表一個週期,那麼這個分量的週期是不是等於約採樣週期了!這個分量的頻率是不是約等於採樣頻率了!
這時你再回看一下,,,有沒有發現,當從0到時,頻率分量的頻率從0到了!並且對應的分量頻率爲,均勻分佈哦!這個結論很重要哦!在求MFCC特徵時會用到!
5.能量密度譜
能量密度譜爲
看上面的帕斯瓦爾公式。
上面已經解釋過(具體的證明類似連續信號中的證明),當均爲實數時,負頻率的(對應的到,或者說到0)是正頻率(對應的0到)的共軛,即,基於成軸對稱。比如說做一個的DFT,因爲負頻率的和正頻率共軛,所以只給個點的頻譜,即257,因爲多給沒有意義啊,共軛的模是一樣的。
六、總結
最後總結一句,信號可以分爲多個頻率分量的和,那麼做離散傅里葉變換時,某個頻率分量的幅值就是看信號和這個頻率的正弦、餘弦波形的相關性,如果信號中包含這個頻率分量比較大,即幅值大,那肯定和這個頻率的正弦、餘弦波形的相關性更高呀,好好理解下這句話,就能大概記住傅里葉變換的求法了。
參考網址: