音訊降噪-fir濾波器

迷霧綠洲發表於2019-03-16

最近遇到問題,在室外使用的攝像機的音訊輸入噪聲太大,直接將資料取出來進行分析
時域
在看看頻域情況:
頻域
可以看到在100hz以下的能量分佈很大,其實對於人聲來說20hz-20K 都有,但是一般把響應做到300hz到4kz的頻率區間也是可以的,這個就可以嘗試將200hz以下的頻率分量直接抹掉。
直接選用最簡單的fir 濾波器來做,在matlab中去定下階數和引數,matlab 可直接生成歸一化的引數,省去了自己運算。

步驟

  1. 在matlab 的命令列輸入filterbuild
    輸入命令
    2.彈出來一個濾波器型別選擇的視窗:
    濾波器型別選擇
    3.想要去除的是低頻200hz,所以選擇highpass,雙擊後有新的介面彈出:

介面
4.這個是選擇最最佳的結果,不認為的設定濾波器階數,頻率通帶阻帶的設定都是歸一化的引數設定,還是改成頻率值的設定還一點,取樣率設定成8khz。
配置
5.點選apply可以點view filter response 看一下效果:
效果圖
6.使用濾波器處理後的聲音:
時域:
時域
頻域:
頻域
結論:
可以看到200hz 部分能量確實小了很多。

相關文章