範例:FIR 濾波器設計
低通濾波器窗比較
使用不同的矩形窗及 Blackman 窗計算低通濾波器的係數。
1. 設定常態化的截止頻率及係數數目。
2. 使用 lowpass 函數透過矩形與 Blackman 視窗計算係數。
3. 定義顯示係數及計算頻率回應的範圍。
4. 繪製此二係數集。
7. 繪製頻率回應的量值。使用水平標記標示截止頻率的量值。
兩個繪線都會通過截止頻率點,但 M1 的轉移較清晰。截止頻率的任一頻率回應的量值均為 0.5。
8. 繪製頻率回應的相角。使用水平標記標示截止頻率的相角。
兩個繪線都會通過截止頻率點。截止頻率的任一頻率回應的相角均為 -18.85。
9. 繪製頻率回應的 dB 量值。使用水平標記標示截止頻率的 dB 量值。
兩個繪線都會通過截止頻率點。截止頻率的 dB 量值為 -0.304。
使用迴旋積分進行濾波
使用迴旋積分套用這些 FIR 係數。
1. 使用
sin 函數定義根據取樣頻率常態化的低頻、中頻及高頻信號。
2. 繪製信號 x。
3. 使用 lowpass、highpass、bandpass 與 bandstop 函數來產生使用漢明窗 (編號 5) 與常態化濾波器截止頻率的濾波器係數。
4. 欲對信號進行濾波,請迴旋積分具有
x 的濾波器脈衝回應,對前兩項使用
convolve 函數,對後兩項使用
response 函數進行回應,展示兩種執行方式。
5. 顯示 convolve 的輸出具有等於 1 但小於 x 長度及係數陣列總和的長度。
6. 繪製低通輸出以及信號的低頻元件。
正弦波右移 25,以容納濾波器所引發的延遲。通過的濾波基本上僅有低頻,且有部分衰減。
7. 繪製高通輸出以及信號的高頻元件。
正弦波右移 25,以容納濾波器所引發的延遲。通過的濾波基本上僅有高頻,且有部分衰減。
檢查濾波器的效率
1. 使用
dft 函數比較原始信號的頻譜與濾波後的頻譜,以檢查 bandstop 濾波器的效率。
2. 繪製濾波之前和之後的第一個 60 頻譜的值。
中間頻率已成功衰減。
3. 使用 dft 函數比較原始信號的頻譜與濾波後的頻譜,以檢查 bandpass 濾波器的效率。
大多數的低頻及所有高頻皆已成功衰減。