matlab窗函式的頻譜 如何理解頻譜洩露?

2021-10-11 15:18:12 字數 1158 閱讀 9274

這只是我個人的理解,錯誤之處還請指正。

如果原始訊號中有頻率成分處於兩個基本函式的頻率之間,會怎麼樣呢?fig.1(a)解釋了答案,原始訊號包含兩路不同頻率的正弦波,一路頻率與基本函式匹配,一路頻率不匹配。前者用乙個點就能表示峰值,而後者則會出現乙個峰值伴隨著兩個尾巴的頻譜,即發生了譜洩露(拖尾)。可以理解峰值被相鄰的基本函式「分攤」了。怎麼解決這個問題呢?答案就是加窗,fig.1(b)展示了漢明窗以後的頻譜表現,發現兩路正弦波的峰值形狀更相似了,拖尾減少了,但是峰值的寬度變大了,也就是說加窗是譜洩露(拖尾)和頻率解析度(峰值寬度)之間的平衡

我們從另乙個角度來解釋圖(a)的拖尾效應。

假設有乙個頻率為

fig.1(a)的就是fig.2抽樣的結果,如果抽樣在波谷(訊號頻率與基本函式頻率匹配),則可消除拖尾,如果抽樣在波峰和波谷的某一點(訊號頻率在基本函式頻率之間),則會形成各種形式的拖尾。

總結一下,現實中對訊號片段做dft,相當理論中對無限長的訊號加窗,求dtft,再抽樣。也就是說,只要你求乙個訊號片段的dft就會有洩露,洩露無法避免。

用matlab驗證一下,對於乙個頻率為41.4的正弦波做128點fft。

fs=128;

t=1;

n=fs*t;

t=(0:n-1)/fs;

a=20*sin(2*pi*41.4*t);

b=fft(a);

plot(abs(b)/n*2);axis([0,75,0,20]);

可以看到頻率為41.4,幅值為20的正弦波的頻譜的幅值並不是20,因為發生了洩露。

頻譜洩露與窗函式

今天,我想談的是數字訊號處理中的兩個重要的問題,什麼是頻譜洩露,以及什麼是窗函式,為什麼使用窗函式。我想大部分人和我一樣,在學習數字訊號處理或者從事相關工作時,會遇到相關的問題,那麼今天,就給大家分析頻譜洩露這個問題。大家在其他地方也經常聽見頻譜洩露這個概念,那麼頻譜洩露究竟是什麼呢?頻譜洩露,來自...

頻譜分析中如何選擇合適的窗函式

加窗是為了減小洩漏 1 訊號截斷及能量洩漏效應 數字訊號處理的主要數學工具是傅利葉變換。應注意到,傅利葉變換是研究整個時間域和頻率域的關係。然而,當運用計算機實現工程測試訊號處理時,不可能對無限長的訊號進行測量和運算,而是取其有限的時間片段進行分析。做法是從訊號中擷取乙個時間片段,然後用觀察的訊號時...

mysql分窗函式 頻譜分析中如何選擇合適的窗函式

加窗是為了減小洩漏 1 訊號截斷及能量洩漏效應 數字訊號處理的主要數學工具是傅利葉變換。應注意到,傅利葉變換是研究整個時間域和頻率域的關係。然而,當運用計算機實現工程測試訊號處理時,不可能對無限長的訊號進行測量和運算,而是取其有限的時間片段進行分析。做法是從訊號中擷取乙個時間片段,然後用觀察的訊號時...