頻譜洩露與窗函式

2021-10-24 21:58:59 字數 2344 閱讀 3779

今天,我想談的是數字訊號處理中的兩個重要的問題,什麼是頻譜洩露,以及什麼是窗函式,為什麼使用窗函式。

我想大部分人和我一樣,在學習數字訊號處理或者從事相關工作時,會遇到相關的問題,那麼今天,就給大家分析頻譜洩露這個問題。

大家在其他地方也經常聽見頻譜洩露這個概念,那麼頻譜洩露究竟是什麼呢?

頻譜洩露,來自於對於原訊號序列的截斷,大家可能會問:為什麼有時候頻譜沒有洩露,有時候頻譜又洩露了?今天我們就來談談這個問題,是真的頻譜沒有洩露嗎?

我們大家知道對於理論分析來說,序列都是無限長的,而對於實際的離散時間訊號,我們都是有限長的,那麼想想,通過理論分析我們得出的頻譜,和我們利用fft計算得到的頻譜區別在哪呢?區別就在於,我們在不知不覺中使用了矩形窗對原無限長序列進行了截斷,其實按道理來說,頻譜已經不再是我們理想的訊號了,而是被矩形窗截斷之後的訊號。我們都知道,矩形窗的時域和頻域對應關係是這樣的:

;%取樣頻率1000hz

w=boxcar

(100);

%生成長度為100的矩形窗t=0

:1/fs:1-

1/fs;

%假設訊號持續期為1s,矩形窗持續0.1s

x=[w',

zeros(1

,length

(t)-

100)];

%生成訊號f=0

:fs/n:

(fs-fs/n)

;%頻率刻度

f=f-fs/2;

%頻率刻度

y=abs

(fft

(x));y=

fftshift

(y);

plot

(f,y)

%在這裡沒有考慮幅度譜修正的問題

首先我在這裡想提示大家的是,matlab中的fft是dft的快速計算,正如大家在這裡看到的矩形窗的時域和頻域的對應這樣,洩露都是存在的。對於乙個單頻訊號來說,在頻域表現為衝擊,而這樣的矩形窗,與無限長訊號相乘,相當於為頻域做卷積,單頻訊號被擴散成了這樣類似sa函式的表示形式。那麼,我們怎麼才能避免頻譜洩露呢?

在這裡,我首先想解釋這樣乙個問題為什麼洩露一直存在,但是有時看不到,有時候看得到?為什麼我們看不到的原因,是因為在柵欄效應中,我們在頻率域取樣點,除了在0頻率點處取到1的樣值,其餘地方,我們都取到的是0的樣值,所以在我們看來,「沒有洩露」。而一旦我們非週期取樣,我們會在sa函式的非零點處取得樣值,從而導致洩露。上面的原理我引用宋知用《matlab數字訊號處理85個案例精講-從入門當高階》中的一幅圖

引入窗函式的目的,就是為了減小由於訊號頻譜洩露對臨近頻率的影響。下面我給出窗函式的型別及相關引數。

窗函式旁瓣峰值db

近似過渡頻寬

精確過渡頻寬

阻帶最小衰減/db

matlab函式

矩形窗-13

4 πn

\frac

n4π​

1.8 πn

\frac

n1.8π​

21boxcar(n)

三角形窗

-258πn

\frac

n8π​

6.1 πn

\frac

n6.1π​

25triang(n)

漢寧窗-31

8 πn

\frac

n8π​

6.2 πn

\frac

n6.2π​

44hanning(n)

哈明窗-41

8 πn

\frac

n8π​

6.6 πn

\frac

n6.6π​

53hamming(n)

布萊克曼窗

-5712πn

\frac

n12π​11πn

\frac

n11π​74

blackman(n)

凱賽窗-57—10πn

\frac

n10π​80

blackman(n)

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

這只是我個人的理解,錯誤之處還請指正。如果原始訊號中有頻率成分處於兩個基本函式的頻率之間,會怎麼樣呢?fig.1 a 解釋了答案,原始訊號包含兩路不同頻率的正弦波,一路頻率與基本函式匹配,一路頻率不匹配。前者用乙個點就能表示峰值,而後者則會出現乙個峰值伴隨著兩個尾巴的頻譜,即發生了譜洩露 拖尾 可以...

關於MATLAB FFT頻譜洩露和加窗

我們分析的訊號,如果只含整數次諧波的話,用fft分析訊號的頻譜和相位是非常準確的,如果訊號含有確定的間諧波,比如訊號含有60hz和65hz的頻率,那我們也可以準確的分析出訊號的頻譜和相位,我們只要用矩形窗擷取10個周波的訊號就可以分析出50hz 10 5hz以及5hz的整數倍的訊號的頻譜和相位了,分...

FFT頻譜洩露和加窗 (一)

我們分析的訊號,如果只含整數次諧波的話,用fft分析訊號的頻譜和相位是非常準確的,如果訊號含有確定的間諧波,比如訊號含有60hz和65hz的頻率,那我們也可以準確的分析出訊號的頻譜和相位,我們只要用矩形窗擷取10個周波的訊號就可以分析出50hz 10 5hz以及5hz的整數倍的訊號的頻譜和相位了,分...