張洪濤,裴 浩,周 航
(1湖北工業(yè)大學(xué)電氣與電子工程學(xué)院,湖北 武漢430068;2許繼集團(tuán)有限公司,河南 許昌461000)
語音通信過程中經(jīng)常會受到各種噪聲的影響而導(dǎo)致通信質(zhì)量的下降.語音增強(qiáng)一直是人們研究的熱點(diǎn),并且不斷有新的方法出現(xiàn),但是由于噪聲的性質(zhì)各有不同,至今尚未找到一種能對各種噪聲都具有較好的抗噪效果的算法.只能根據(jù)噪聲特性的不同,使用有針對性的增強(qiáng)方法.根據(jù)加性寬帶噪聲的特性,各國學(xué)者經(jīng)過多年的研究得到了很多種增強(qiáng)算法,目前比較成熟的方法主要有維納濾波法、譜減法、卡爾曼濾波法、FIR自適應(yīng)濾波法等[1].近年來一些新的語音增強(qiáng)算法也不斷被提出來,例如基于小波變換的語音增強(qiáng)方法、基于聽覺掩蔽效應(yīng)的語音增強(qiáng)方法、基于盲源分離的語音增強(qiáng)算法等[2].本文根據(jù)算法降噪效果和復(fù)雜度綜合考慮,采用成熟的譜減法和新興的小波變換聯(lián)合降噪方法對加性寬帶噪聲進(jìn)行降噪以達(dá)到語音增強(qiáng)的目的.
譜減法:根據(jù)帶噪的語音信號頻域的功率譜減去噪聲的估計功率譜的差值,從而得到原始純凈語音頻域的功率譜的估計值,然后開平方運(yùn)算獲得純凈語音的幅度值的估計,由于人耳對相位信息不敏感,所以可以根據(jù)原帶噪語音的相位信息直接恢復(fù)出估計的純語音相位,再采用傅里葉的逆變換獲得語音的時域信號[3].
設(shè)y(n)表示時域帶噪語音信號,s(n)表示時域純凈語音信號,d(n)表示時域噪聲信號,由于是加性噪聲,所以有
其中,n為每一幀上的采樣數(shù)據(jù)點(diǎn)序號,n的取值為n=0,1,…N-1,N是每一幀的數(shù)據(jù)點(diǎn)數(shù),在這里取N=256.假設(shè)語音s(n)和噪聲d(n)統(tǒng)計獨(dú)立或不相關(guān),用Y(k)、S(k)、D(k)分別表示y(n)、s(n)、d(n)的傅里葉變換,則有
計算功率譜后有
其中 *代表共軛復(fù)數(shù).由于s(n)與d(n)具有統(tǒng)計獨(dú)立假設(shè)條件,所以它們的互譜就統(tǒng)計獨(dú)立,即有
根據(jù)上面的推導(dǎo)得到純凈語音的功率譜估計值
從上式中可以看出譜減法的關(guān)鍵是如何實(shí)時準(zhǔn)確地從帶噪語音中估計出噪聲功率譜.Rainer Martin經(jīng)過研究提出了一種噪聲的估計算法[4].該算法首先將帶噪語音信號的短時功率譜用一個最優(yōu)信號平滑濾波器進(jìn)行濾波處理,得到一個粗略的噪聲功率譜的估計值,然后在一定的數(shù)據(jù)幀中找出這個估計值的最小值,再根據(jù)這個最小值采用修正算法進(jìn)行噪聲功率譜的偏差修正,從而獲得需要的噪聲的功率譜估計最終值[5].這種算法具有能快速跟蹤噪聲的變化的優(yōu)點(diǎn)并且不需要進(jìn)行語音斷點(diǎn)檢測.
設(shè)P(λ,k)表示噪聲功率譜,其中λ表示數(shù)據(jù)幀號,k表示頻率點(diǎn)號.噪聲功率譜平滑估計公式表示為
恢復(fù)的語音可以根據(jù)下面的式子得到
其中arg(Y(k))是帶噪語音的相位值.
小波(wavelet)是一種均值為零,長度為有限值的小區(qū)域波[9].它的準(zhǔn)確函數(shù)定義為:設(shè)函數(shù)Ψ(t)∈L2(R),即是一個平方可積的函數(shù),如果其傅里葉變換滿足下面的條件[10]
那么就可以稱Ψ(t)是一個小波基或母小波函數(shù),稱式(2)是小波函數(shù)的完全重構(gòu)條件或恒等分辨條件.將基小波函數(shù)Ψ(t)進(jìn)行伸縮和平移運(yùn)算,就可以得到
稱上式為一個小波序列,其中a稱作伸縮因子,b稱作平移因子,將伸縮因子a和平移因子b離散化就得到了離散化小波序列[11].一般情況下的離散化分別取其中m∈Z,a0是一個不等于1的固定值[12].由此可以得到離散小波序列
對應(yīng)的離散小波變換類似于傅里葉變換,其表達(dá)式為
同樣類似于離散傅里葉逆變換,其逆變換可以表示為
其中C是一個常數(shù).
小波語音信號降噪通常采用閾值降噪方法,一般可以分解為以下三個步驟[13]:(1)選擇一個合適的小波基函數(shù),然后將信號進(jìn)行適當(dāng)層次的小波分解.(2)對各個分解層高頻系數(shù)選擇一種合適的閾值策略,然后再利用軟閾值處理方法分別對各層高頻系數(shù)進(jìn)行量化處理[14].(3)依據(jù)量化處理后的各層高頻系數(shù)與信號的小波分解后最后一層的低頻系數(shù)進(jìn)行小波逆變換.
筆者首先將經(jīng)過麥克風(fēng)采集到的一段(5s)帶噪語音信號在MATLAB仿真平臺上使用其自帶的小波降噪函數(shù)wden對錄取的帶噪語音進(jìn)行自動降噪.選取小波分解層數(shù)為lev=5,經(jīng)過反復(fù)的降噪效果試聽對比,最后選取聽覺質(zhì)量和降噪效果都相對較好的sym5小波和heursure啟發(fā)式閾值規(guī)則,但是降噪后仍然有較嚴(yán)重的高頻失真(圖1).采用譜減法對帶噪語音進(jìn)行降噪處理得到圖2所示的波形.
圖1 小波變換語音降噪
然后經(jīng)過試聽可以發(fā)現(xiàn)采用譜減法降噪后語音信號幾乎不存在失真,但是降噪后有明顯的“音樂噪聲”存在.我們對譜減法降噪后的語音采取上面所述的小波自動降噪,得到聯(lián)合降噪波形(圖3).
經(jīng)過試聽發(fā)現(xiàn)經(jīng)過小波再次降噪后,“音樂噪聲”明顯減少,降噪程度進(jìn)一步提高,并且只存在少量高頻失真.
從上面的降噪實(shí)驗(yàn)可以發(fā)現(xiàn)采用譜減法和小波變換聯(lián)合降噪可以在很大程度上克服兩種方法單獨(dú)降噪存在的不足之處.
[1]劉 鈺,馬艷麗,董蓓蓓.語音增強(qiáng)技術(shù)及算法綜述[J].電腦編程技術(shù)與維護(hù),2010(16):88-90.
[2]劉淑華.低信噪比下的語音增強(qiáng)技術(shù)研究[D].南寧:廣西大學(xué)圖書館,2006.
[3]索忠偉.語音增強(qiáng)技術(shù)研究及其DSP實(shí)現(xiàn)[D].成都:西南交通大學(xué)圖書館,2006.
[4]劉 靜.機(jī)載環(huán)境下語音噪聲抑制技術(shù)研究及實(shí)現(xiàn)[D].成都:電子科技大學(xué)圖書館,2008.
[5]劉玉軍,孔 洲,徐萬里,等.基于譜減法的裝甲車輛語音降噪研究[J].計算機(jī)工程與設(shè)計,2010,31(2):4 657-4 660.
[6]丁曉敏.強(qiáng)噪聲環(huán)境下語音增強(qiáng)算法的研究及其DSP實(shí)現(xiàn)[D].南京:南京航空航天大學(xué)圖書館,2010.
[7]Abdallah I,Montresor S,Baudry M.Robust Speech/non-speech Detection in Adverse Conditions Using an Entropy Based Estinator[C].International Conference on Digital Signal Processing,1997:757-760.
[8]張 俊.基于譜減算法語音增強(qiáng)的研究[J].信息技術(shù),2009(3):74-76.
[9]成禮智,郭漢偉.小波與離散變換理論及工程實(shí)踐[M].北京:清華大學(xué)出版社,2005:9-13.
[10]戴春風(fēng).基于小波變換的語音降噪分析與實(shí)現(xiàn)[J].南通職業(yè)大學(xué)學(xué)報,2006,20(4):95-97.
[11]張林林.基于DSP實(shí)現(xiàn)的語音聯(lián)合降噪方法的研究[D].焦作:河南理工大學(xué)圖書館,2011.
[12]盛 英.基于小波變換的語音信號降噪研究[D].哈爾濱:哈爾濱工程大學(xué)圖書館,2007.
[13]陳新銳.基于小波語音去噪的FPGA系統(tǒng)設(shè)計與實(shí)現(xiàn)[D].桂林:廣西師范大學(xué)圖書館,2010.
[14]馬建倉,陳 靜,劉小龍.小波降噪與BSS在航空發(fā)動機(jī)故障診斷中的應(yīng)用[J].計算機(jī)測量與控制,2009,17(11):2 115-2 117.