2017-06-13 45 views
0

我想創建一個帶通濾波器,將我的音頻信號濾波爲任意數量的等大小的子帶。現在我正在嘗試使用巴特沃斯濾波器來實現這一點(對於這種性質的問題,這是一個很好的解決方案嗎?)。瞭解巴特沃思濾波器

比方說,我有一個採樣頻率爲1200Hz,因此奈奎斯特頻率爲600Hz的信號。現在我想將這個信號分解成三個不同的子帶,每個子帶的長度都是200Hz。我如何實現這一目標?

我試過的文檔閱讀,但我還是需要一些清理起來:因爲我的理解,我想用下面的重載黃油() - 功能:

butter(#order, [min_freq, max_freq]/nyq_freq) 

是這正確嗎?它說最小和最大頻率必須在區間(0,1) - 我如何去創建第一個和最後一個子頻帶?只要選擇任意的小/大值(0.0001和0.9999)? #order有什麼作用?確實,更高的次序給出了更精確的信號截止點,但它需要更廣泛的計算?

回答

0

根據文檔,用於Wn

值必須位於0和1,其中1對應於奈奎斯特速率的一半之間 採樣率或π弧度/樣品

Nyquist rate是不一樣的Nyquist frequency(你可以在這裏閱讀https://dsp.stackexchange.com/questions/26721/difference-between-nyquist-rate-and-nyquist-frequency

基本上,Nyquist rate是您的帶寬的兩倍。

該順序是過濾器的結果多項式的程度。如果n = 1,則信號衰減20dB /十倍頻程。如果n = 2,那麼它將衰減40 dB /十倍頻程等等。對於某些用途,低階濾波器將不可能實現,因爲信號在給定頻率下無法衰減到所需的值。理論上講,階數越高,截止越精確(並且需要更多的計算),但在實際的濾波器中,可能很難實現非常高階的濾波器。