大家好,我是小小的電子之路,這是我的第38篇原創文章,很高興與大家一起分享~
原文出自微信公眾號【小小的電子之路】
自然界中的模擬信號大部分都是無限長的,或者說對計算機而言可以說是無限長的,而計算機只能處理有限長的信號,怎么辦呢?以快速傅里葉變換為例,我們通常是截取目標信號中有限長的一小段數據進行分析,那么問題來了,FFT在分析的時候是怎么通過那一小段輸入數據來推斷原始目標信號波形的呢?
以正弦信號為例,該信號是一個無限長的模擬信號,我們在FFT分析的時候只會截取其中有限長的數據,以兩個周期為例,這段有限長的數據是FFT分析時實際輸入的數據,稱之為主值序列,那么FFT是如何推斷原始正弦信號波形的呢?這就涉及到數字信號處理領域一個經常出現的名詞了--周期延拓。FFT分析時真正處理的信號實際是主值序列的周期延拓,即我們所輸入數據的周期延拓。
上圖是整周期截取時周期延拓的結果,與原始目標信號沒有任何區別,不會對FFT結果帶來不利影響。但是,非整周期截取時情況就不一樣了,下圖是非整周期截取時周期延拓的結果,波形出現了十分陡峭的邊沿,該邊沿包含非常豐富的頻率信息,這將導致頻譜泄漏與頻譜混疊。對于其中滿足采樣定理,但不在FFT輸出頻點的頻率分量,將發生頻譜泄漏現象。對于其中不滿足采樣定理的頻率分量,將發生頻譜混疊現象。
通過上面的分析我們了解到,非整周期截取信號對FFT分析的不利影響關鍵在其陡峭的邊沿,因此,只要能使其邊沿變緩,就能減弱其帶來的不利影響,這就涉及到數字信號處理領域另一個經常出現的名詞了--窗函數。不同窗函數的一個主要區別就在于邊沿的陡峭程度不同。
對非整周期截取的信號進行加窗處理,明顯看出其邊沿變緩,周期延拓后將不會出現十分陡峭的邊沿,加窗前后的頻域分析結果參考文章--什么是頻譜泄漏?如何降低頻譜泄漏?--頻譜泄漏與窗函數。