申 艷,陳后金,薛 健,郝曉莉,周 航
(北京交通大學(xué)電子信息工程學(xué)院,北京 100044)
基于Matlab加噪語音的FIR濾波器設(shè)計(jì)
申 艷,陳后金,薛 健,郝曉莉,周 航
(北京交通大學(xué)電子信息工程學(xué)院,北京 100044)
傳統(tǒng)的FIR濾波器設(shè)計(jì)是根據(jù)給定的頻率指標(biāo),設(shè)計(jì)出滿足指標(biāo)的系統(tǒng)函數(shù)。本文提出一種基于Matlab加噪語音的FIR濾波器設(shè)計(jì)方法。該方法首先通過Matlab產(chǎn)生單頻噪聲,加入到語音信號(hào)中,并改變單頻噪聲的頻率來調(diào)整FIR濾波器設(shè)計(jì)的難度;然后,根據(jù)混入噪聲信號(hào)的頻譜,設(shè)計(jì)出所需要的濾波頻率指標(biāo);選擇合適的窗函數(shù),設(shè)計(jì)滿足該頻率指標(biāo)的 FIR濾波器;最后,利用FIR濾波器對(duì)混入噪聲的信號(hào)濾波,得到濾波后的語音信號(hào)。
有限沖激相應(yīng);濾波器;噪聲;語音
有限沖激響應(yīng)FIR數(shù)字濾波器在數(shù)字信號(hào)處理領(lǐng)域應(yīng)用廣泛,是“數(shù)字信號(hào)處理”課程一個(gè)重要的內(nèi)容[1-3]。傳統(tǒng)的FIR濾波器設(shè)計(jì)的學(xué)習(xí),一般是根據(jù)給定的頻率特性,設(shè)計(jì)出濾波器的系統(tǒng)函數(shù),并畫出頻率特性曲線和濾波器的格形結(jié)構(gòu)。學(xué)生在學(xué)習(xí)這一部分內(nèi)容時(shí)感到不易理解。
Matlab軟件為FIR濾波器的學(xué)習(xí)和研究提供了直觀便捷的途徑[4-7]。結(jié)合我校研究型學(xué)習(xí)項(xiàng)目,本文提出一個(gè)結(jié)合加入噪聲的語音信號(hào)作為輸入的FIR濾波器設(shè)計(jì)題目。結(jié)果表明這種FIR濾波器設(shè)計(jì)學(xué)習(xí)非常有效,有助于學(xué)生對(duì)FIR濾波器設(shè)計(jì)知識(shí)的掌握。
FIR數(shù)字濾波器的設(shè)計(jì)通常是根據(jù)理想濾波器的頻率響應(yīng) Hd(ejΨ),采用窗函數(shù)法、頻率取樣法或優(yōu)化設(shè)計(jì)等方法使所設(shè)計(jì)濾波器頻率響應(yīng)H(ejΨ)逼近H d(ejΨ),這里僅討論窗函數(shù)法。
窗函數(shù)法設(shè)計(jì)FIR濾波器的基本思想是在時(shí)域逼近理想濾波器的單位脈沖響應(yīng)[1]。首先根據(jù)待逼近的理想濾波器的頻率響應(yīng)Hd(ejΨ),加入線性相位因子ej(-0.5MΨ+β),實(shí)現(xiàn)因果化處理。其中 ,Ψ表示數(shù)字角頻率,M表示FIR濾波器的階數(shù),β是與Ψ無關(guān)的常數(shù)。對(duì)I型和II型線性相位FIR濾波器β=0,對(duì)III型和IV型線性相位濾波器,β=π/2。其次,由IDTFT求出理想濾波器的單位脈沖響應(yīng)h d[k],最后,將無限長的h d[k]加窗截?cái)嗟玫接邢揲L序列h[k],實(shí)現(xiàn)一個(gè)穩(wěn)定系統(tǒng)。
按照傳統(tǒng)的FIR濾波器設(shè)計(jì),給出低通濾波器指標(biāo)如下:
通帶截頻 Ψp=0.15π,阻帶截頻 Ψs=0.2π,通帶衰減A p=1dB,阻帶衰減A s=44dB。
根據(jù)上述指標(biāo),可采用Hanning窗、Hamming窗或Blackman窗設(shè)計(jì)。利用Matlab軟件編程,得到的設(shè)計(jì)結(jié)果如圖1所示。
圖1 三種窗函數(shù)設(shè)計(jì)的FIR濾波器
根據(jù)設(shè)計(jì)指標(biāo),這三種窗函數(shù)設(shè)計(jì)的濾波器的階數(shù)分別是:Hanning窗125階,H amming窗141階,Blackman窗是229階。由圖1可見,Hanning窗的過渡帶最窄,階數(shù)最少,Hamming窗的過渡帶和Hanning窗近似,階數(shù)比Hanning窗大,阻帶衰減最小;Blackman窗的過渡帶最寬,階數(shù)和阻帶衰減最大。Hamming窗和 Blackm an的設(shè)計(jì)都存在裕量。傳統(tǒng)的FIR濾波器設(shè)計(jì)到這里就結(jié)束了。
通過以上分析可以看出,傳統(tǒng)的FIR濾波器僅僅給出了設(shè)計(jì)的階數(shù)、過渡帶和阻帶衰減等設(shè)計(jì)結(jié)果,以這些數(shù)據(jù)來比較它們的優(yōu)劣,無法從語音或者圖像直觀地感受到所設(shè)計(jì)的濾波器的效果。本文據(jù)此提出一種基于Matlab語音加噪聲作為輸入的窗函數(shù)FIR濾波器設(shè)計(jì)方法。
在“數(shù)字信號(hào)處理”課程的學(xué)習(xí)中,經(jīng)常采用一維信號(hào)進(jìn)行舉例實(shí)驗(yàn),比如心電圖信號(hào)和語音信號(hào)等。這里利用Matlab生成一維的語音信號(hào),以語音“你好”為例,其時(shí)域波型和頻域頻譜如圖2所示。
圖2 “你好”語音信號(hào)時(shí)域和頻域圖像
圖2(a)是“你好”的語音信號(hào)時(shí)域圖像,在時(shí)間上持續(xù)了0.453秒。圖2(b)是其對(duì)應(yīng)的頻譜,主要頻率范圍在0到4400Hz之間。為了敘述方便,這里頻譜圖的橫軸均以模擬頻率表示。
接著,將一單頻噪聲疊加到“你好”語音信號(hào)中,我們可以根據(jù)加入噪聲的位置設(shè)計(jì)頻率特性,通過窗函數(shù)法設(shè)計(jì)的FIR濾波器進(jìn)行實(shí)驗(yàn),檢驗(yàn)其能否有效濾除噪聲。
加入的單頻噪聲的位置應(yīng)當(dāng)高于語音信號(hào)“你好”的最高頻率4400Hz,噪聲頻率越高,濾波器設(shè)計(jì)的指標(biāo)就越寬松。因?yàn)樵肼暱梢院苋菀妆粸V除,從聽覺上,很明顯地感覺到噪聲已經(jīng)濾除,和沒有加入噪聲的語音信號(hào)完全一致。但對(duì)學(xué)生學(xué)習(xí)FIR濾波器的設(shè)計(jì)水平提高度不大,因?yàn)閷?shí)際情況是噪聲會(huì)很靠近信號(hào)。
本文加入單頻噪聲在4500Hz到6600H z之間,由此就需要謹(jǐn)慎選擇濾波器的參數(shù)。否則噪聲很難濾除干凈,我們還是能夠聽到單頻噪聲產(chǎn)生的“嗞嗞”聲。然而,即使所選擇的參數(shù)能夠?qū)⒃肼暈V除干凈,也會(huì)導(dǎo)致所選擇的階數(shù)太大,而難以實(shí)現(xiàn)。因此如何設(shè)計(jì)單頻噪聲的頻譜位置很重要,它決定了FIR濾波器設(shè)計(jì)的難易程度。圖3給出了Matlab產(chǎn)生的4500Hz和6600H z噪聲的時(shí)域和頻域圖像。
圖中虛線為4500Hz的噪聲,實(shí)線為6600Hz噪聲。如能在這兩個(gè)頻率之間加入單頻噪聲,就可以設(shè)計(jì)難度比較合適的FIR濾波器。
圖3 4500H z和6600Hz單頻噪聲
FIR濾波器的設(shè)計(jì)指標(biāo)是由所選擇的窗函數(shù)決定的。窗函數(shù)選定后,過渡帶寬度、通帶衰減和阻帶衰減等參數(shù)就確定了。通帶截頻和阻帶截頻是由語音信號(hào)和噪聲信號(hào)的頻譜決定的。濾波器的階數(shù)是由過渡帶寬度、通帶截頻和阻帶截頻決定的。根據(jù)頻譜特性提出如下濾波指標(biāo):通帶截頻 Ψp=0.15π,阻帶截頻 Ψs=0.2π,通帶衰減 A p=0.5dB,阻帶衰減 A s=44dB。若采用Hanning窗,計(jì)算得到FIR濾波器的截頻和階數(shù)分別為:Ψc=(Ψp+Ψs)/2=0.175π,N ≥6.2π/(Ψs-Ψp)=124。采用I型濾波器,取 N=125。則理想低通濾波器的單位脈沖響應(yīng)是
用Hanning窗截?cái)?h d[k]使得到滿足要求的FIR低通濾波器的單位脈沖響應(yīng)h[k]=h d[k]·w[k]。加入單頻噪聲的語音信號(hào)和h[k]卷積后,即可得到濾波后的語音信號(hào)。
首先,我們加入4500Hz的余弦單頻噪聲。通過頻譜分析和計(jì)算,阻帶衰減至少應(yīng)為30dB,因此選擇Hanning窗、H amming窗和 Blackm an均可滿足設(shè)計(jì)要求。以Hanning窗為例,將單頻的余弦信號(hào)疊加到“你好”語音信號(hào)中,得到的混噪信號(hào)如圖4(a)所示。
圖4(b)表示通過設(shè)計(jì)的FIR濾波器濾波后的語音信號(hào)。從頻譜圖中可以看出,噪聲已經(jīng)濾除。聽覺上也能夠直接感受到濾波后的語音信號(hào),但是需要140階的FIR濾波器。
在這種FIR濾波器參數(shù)指標(biāo)下,將噪聲移動(dòng)到高于4500H z的頻率位置,濾波后的效果將會(huì)更好。因?yàn)榇藭r(shí)噪聲頻率落在濾波器的高頻阻帶范圍,抑制度更大。為了節(jié)省設(shè)計(jì)成本,從聽覺上感受到濾波效果良好的情況下,需要降低濾波器的階數(shù)。
圖4 FIR濾波前后語音信號(hào)頻譜
濾波器階數(shù)的降低可通過選擇Kaiser窗函數(shù)實(shí)現(xiàn)。針對(duì)該實(shí)驗(yàn),阻帶衰減30dB即可,用Kaiser窗設(shè)計(jì)的濾波器可以滿足該指標(biāo)。設(shè)計(jì)得到的階數(shù)是48階,比Hanning窗減少了92階。
濾波器階數(shù)的降低還可以通過增大過渡帶寬度實(shí)現(xiàn),增大過渡帶的寬度包含了降低通帶截頻和提高阻帶截止頻率。如果降低通帶截止頻率,信號(hào)有效頻率成分會(huì)損失,濾波后的語音信號(hào)失真,聽起來顯得低沉;如果提高阻帶截止頻率,將無法完全濾除單頻噪聲,濾波后的語音信號(hào)依然能夠聽到噪聲。
如果在語音信號(hào)中加入6600Hz的單頻余弦噪聲,那么前述140階濾波器的指標(biāo)完全可以滿足要求。為了降低階數(shù),可以更改濾波器的指標(biāo),將阻帶截頻增大到 Ψs=0.3π,這時(shí)只需要32階濾波器就可以實(shí)現(xiàn)濾除噪聲的良好效果。
綜上所述,基于Matlab語音的FIR濾波器設(shè)計(jì)改善了傳統(tǒng)的設(shè)計(jì)方式,能夠從聽覺上直接感受到FIR濾波器的濾波效果,隨時(shí)驗(yàn)證濾波器設(shè)計(jì)是否有效。通過調(diào)整加入語音信號(hào)的噪聲頻率,可改變FIR濾波器設(shè)計(jì)的難易程度。這就需要學(xué)生自主設(shè)計(jì)濾波器指標(biāo),并選擇合適的窗函數(shù)來達(dá)到FIR濾波器的設(shè)計(jì)目的。
通過2010年“數(shù)字信號(hào)處理”課程研究型學(xué)習(xí)的檢驗(yàn),說明該方法是成功有效的。在沒有采用本文所提出的方法之前,學(xué)生通過計(jì)算得到FIR濾波器設(shè)計(jì)的參數(shù),采用Matlab畫出濾波器的頻率響應(yīng),這種方式僅讓學(xué)生掌握了FIR濾波器設(shè)計(jì)的計(jì)算過程。而采用了本文的方法之后,學(xué)生動(dòng)手錄制實(shí)際的語音信號(hào),加入噪聲,進(jìn)行FIR濾波器設(shè)計(jì),從聽覺上直觀的感受到濾波器設(shè)計(jì)的效果,隨時(shí)修改濾波器參數(shù),以達(dá)到滿足聽覺感受的指標(biāo)。
語音信號(hào)對(duì)相位的敏感性不高,該方法也可以應(yīng)用于IIR濾波器設(shè)計(jì)。IIR濾波器實(shí)現(xiàn)的階數(shù)比FIR濾波器少,可節(jié)省成本。在噪聲頻譜位置的設(shè)計(jì)方面,和FIR濾波器的設(shè)計(jì)類似。進(jìn)一步的工作可以在語音信號(hào)中加入多頻率噪聲,或者帶限噪聲,并考慮加入噪聲的類型和位置。在加入相同的噪聲頻譜的情況下,比較不同的濾波器方法。與實(shí)際通信系統(tǒng)和雷達(dá)系統(tǒng)的噪聲情況結(jié)合起來,增大FIR濾波器的設(shè)計(jì)難度,讓學(xué)生能將理論知識(shí)更好地運(yùn)用到實(shí)際情況。
[1] 陳后金,薛健,胡健.數(shù)字信號(hào)處理[M].北京:高等教育出版社,2007
[2] 胡廣書.數(shù)字信號(hào)處理——理論、算法與實(shí)現(xiàn)[M].北京:清華大學(xué)出版社,2003
[3] 程佩青.數(shù)字信號(hào)處理教程[M].北京:清華大學(xué)出版社,2007
[4] Sanjit K.M itra,Digital Signal Processing[M].M cg raw-Hill companies,2004
[5] 劉興釗,李力利.對(duì)FIR數(shù)字濾波器頻域?qū)崿F(xiàn)錯(cuò)誤觀點(diǎn)的討論[J].南京:電氣電子教學(xué)學(xué)報(bào).2007:29(2)
[6] 鐘國梁.淺談學(xué)習(xí)窗函數(shù)法設(shè)計(jì)FIR數(shù)字濾波器體會(huì)[J].南京:電氣電子教學(xué)學(xué)報(bào).2009:31(3)
[7] 王玉德.“數(shù)字信號(hào)處理”課程的教與學(xué)的探討[J].南京:電氣電子教學(xué)學(xué)報(bào).2008:30(6)
FIR Filter Design of Noisy Audio Signals Based on Matlab
SHEN Yan,CHEN Hou-jin,XUE Jian,HAO X iao-li,ZHOU Hang
(Schoolo f E lectronic and In formation Eng ineering,Beijing Jiaotong Un iversity,Beij ing 100044,China)
The objectof conventional FIR filter is to design the system function from thegiven design index.An audio signalmethod based on Matlab is presented to improve the convertional design.Firstly,a noise of single frequency is generated and added to the audio signal recorded by the Matlab so ftware.A range of frequency of the noise is designed to adjust the difficulty of the FIR design.Secondly,according to the frequency of the noisy audio signal,frequency parameters satisfying the given design index are com puted.Selecting properw indow function and designing the FIR filter are com plated.A t last,filtering the noisy audio signal,the audio signal isobtained from the output.
FIR;Filter;noise;audio
TN 713+.7
A
1008-0686(2011)02-0041-04
2010-06-23;
2010-09-16
電工電子基礎(chǔ)課程國家級(jí)教學(xué)團(tuán)隊(duì)項(xiàng)目(244033529);電工電子國家級(jí)實(shí)驗(yàn)教學(xué)示范中心項(xiàng)目(351003535)
申 艷(1979-),女,博士,講師,主要從事信號(hào)處理的研究,E-mail:sheny@bjtu.edu.cn