基于Matlab的FIR帶通濾波器設計及DSP實現(xiàn)
本文采用第二種方法。選擇菜單File→Export打開Export對話框,選擇Coefficient File(ASCII),指定輸出文件名,生成*fcf文件,就可以直接把生成的*fcf文件中的系數(shù)添加到DSP程序的變量中了。
在Matlab軟件平臺下,利用wavread函數(shù)對語音信號進行采樣,記住采樣頻率和采樣點數(shù)。采樣值放在向量y中,fS表示采樣頻率(單位:Hz),bits表示采樣位數(shù)。根據(jù)語音信號的特點給出數(shù)字帶通FIR濾波器的性能指標:設置通帶頻率fp1=1 200 Hz,fp2=3 000 Hz,阻帶頻率fs1=1 000 Hz,fs2=3 200 Hz,抽樣頻率fs=8 000 Hz,阻帶最小衰減As=50 dB,通帶最大衰減Ap=1 dB。這里采用窗函數(shù)設計法設計FIR帶通濾波器。首先根據(jù)阻帶衰減選擇窗形狀,海明窗和布萊克曼窗等窗函數(shù)均可提供大于50 dB的衰減。由于海明窗可提供較小的過渡帶,所以選擇海明窗。根據(jù)ωp1=2fp1/fs;ωs1=2fs1/fs,B(帶寬)=ωp1-ωs1,N(窗口長度)=ceil(6.6/B),n(階數(shù))=N-1;算出階數(shù)為132。在FDATo ol設計界面,按要求填寫以上參數(shù),得到FIR數(shù)字帶通濾波器的仿真圖像,如圖1所示。本文引用地址:http://butianyuan.cn/article/186064.htm
然后再用設計的FIR數(shù)字帶通濾波器對加噪的語音信號進行濾波。在Matlab中,F(xiàn)IR濾波器利用函數(shù)fftfilt對信號進行濾波。編寫Matlab程序如下,實現(xiàn)上述功能。
程序中“quzao”為錄制的波形音頻文件(.wav),對加噪的語音信號進行濾波仿真處理后,輸出結果如圖2所示。
評論