貴州大學(xué)大數(shù)據(jù)與信息工程學(xué)院 盧錦濤 羅楊川云
基于db3小波閾值法的語(yǔ)音信號(hào)降噪研究
貴州大學(xué)大數(shù)據(jù)與信息工程學(xué)院 盧錦濤 羅楊川云
語(yǔ)音信號(hào)是一維非平穩(wěn)準(zhǔn)周期信號(hào),在產(chǎn)生和傳播過(guò)程中易混入各種噪聲,導(dǎo)致對(duì)其語(yǔ)音效果造成影響。為了對(duì)信號(hào)進(jìn)行降噪,本文對(duì)語(yǔ)音信號(hào)降噪進(jìn)行研究,給出小波語(yǔ)音信號(hào)降噪的基本方法,并在matlab環(huán)境下應(yīng)用db3小波對(duì)攜帶噪聲的語(yǔ)音信號(hào)進(jìn)行處理。文中采用硬閾值法、軟閾值法以及軟硬閾值法結(jié)合對(duì)信號(hào)處理,并在降噪算法的自適應(yīng)性上進(jìn)行研究結(jié)果對(duì)比分析顯示,軟硬閾值結(jié)合的方法降噪效果最佳,可以既保證信號(hào)不失真,同時(shí)達(dá)到較好的信噪比。
語(yǔ)音降噪;matlab;db3小波;閾值算法
移動(dòng)互聯(lián)網(wǎng)使語(yǔ)音識(shí)別技術(shù)越來(lái)越重要。語(yǔ)音音質(zhì)問(wèn)題,語(yǔ)音識(shí)別技術(shù)發(fā)展尚未達(dá)到智能化,完全識(shí)語(yǔ)音讓用戶感到困擾。其中最主要的是語(yǔ)音噪聲對(duì)其的干擾。在移動(dòng)通信中,語(yǔ)音端點(diǎn)檢測(cè)順利完成后,保證良好的音質(zhì)的關(guān)鍵就是對(duì)噪聲的抑制和處理,即語(yǔ)音降噪,是保證良好音質(zhì)的基礎(chǔ)。語(yǔ)音降噪是降低噪聲,突顯有用信號(hào)的技術(shù),目的是提高信噪比,提高語(yǔ)音質(zhì)量,提高自然語(yǔ)音的可辨度。語(yǔ)音信號(hào)是一種一維準(zhǔn)周期信號(hào),信號(hào)容易獲取,但是由于在發(fā)生過(guò)程中和聲音傳遞過(guò)程中不可避免的會(huì)受到噪聲的干擾,混入其中,稱(chēng)為加性噪聲,記為式y(tǒng)(n)=X(n)+s(n)其中,X(n)是純凈的語(yǔ)音信號(hào),s(n)是加入的高斯白噪聲。
高斯白噪聲頻帶寬,與語(yǔ)音信號(hào)相互重疊,沒(méi)有規(guī)律性,無(wú)法區(qū)分語(yǔ)音信號(hào)和白噪聲,所以語(yǔ)音降噪很難達(dá)到令人滿意的效果。再加上濾波去的濾波參數(shù)在設(shè)計(jì)的時(shí)候就已固定,不能根據(jù)信號(hào)的實(shí)時(shí)特點(diǎn)來(lái)自行調(diào)整濾波參數(shù)對(duì)降噪結(jié)果有很大影響。因?yàn)楦道锶~變換沒(méi)有局部性,不具有多分辨率,如果將信號(hào)用傅里葉變換,頻域觀察再采取措施進(jìn)行降噪,不能對(duì)信號(hào)的微弱變化進(jìn)行提取,達(dá)不到降噪的效果[3]。因此針對(duì)高斯白噪聲的這些特征提出一種基于小波分解和重構(gòu)的閾值降噪。
本文獲取的語(yǔ)音信號(hào)源是通過(guò)使用Cool Edit Pro下的錄音機(jī)錄音后存儲(chǔ)為16k采樣的.wav格式。在原始語(yǔ)音信號(hào)的基礎(chǔ)上加入隨機(jī)噪聲,改變其攜帶噪聲的程度得到不同信噪比的信源。
根據(jù)小波理論和matlab仿真,白噪聲的小波系數(shù)和有用信號(hào)的小波系數(shù)在幅值上有明顯不同的表現(xiàn)特征,據(jù)此可選擇適當(dāng)?shù)拈撝祵⑺鼈冞M(jìn)行分離。為達(dá)到良好的降噪效果,保證信號(hào)的完整識(shí)別,選取合適的小波函數(shù)作為小波基,對(duì)小波進(jìn)行適當(dāng)層數(shù)的分解和設(shè)置適當(dāng)?shù)拈撝凳切〔ㄩ撝到翟腩I(lǐng)域的關(guān)鍵設(shè)計(jì)環(huán)節(jié)[2]。另外為了提高可靠性和降噪系統(tǒng)的可移植性和適應(yīng)性,實(shí)現(xiàn)對(duì)不通信號(hào)達(dá)到基本相同的降噪效果,通過(guò)反饋提高降噪的適應(yīng)性和穩(wěn)定性,最大程度保證信號(hào)的不失真和有效提取。
小波閾值降噪算法直觀有效,對(duì)語(yǔ)音這樣的非平穩(wěn)信號(hào),小波的多分辨率特性可以描繪出噪聲出現(xiàn)時(shí)的邊緣和尖峰等突變點(diǎn)。小波分解采用db3小波函數(shù)對(duì)信號(hào)進(jìn)行分解,再根據(jù)小波的高頻系數(shù)進(jìn)行閾值量化,不同分解尺度下選擇合適的閾值進(jìn)行閾值處理。小波閾值降噪的閾值函數(shù)主要以硬閾值和軟閾值兩種函數(shù)。硬閾值可以很好的保留信號(hào)邊緣等的局部特征,但相對(duì)平滑會(huì)造成邊緣模糊等失真現(xiàn)象。
2.1分幀加窗
加hamming窗可使每幀語(yǔ)音信號(hào)的時(shí)域波形兩端變化趨于線性,緩慢的降為零,降低語(yǔ)音幀的截?cái)嘈?yīng)。通過(guò)可以改變位置的有限長(zhǎng)度hamming窗進(jìn)行加權(quán)的方法來(lái)實(shí)現(xiàn),即使用一定的窗函數(shù)w(t)來(lái)乘y(t),從而形成加窗后的語(yǔ)音信號(hào)式:
2.2小波分解
信號(hào)的小波分解情況如下:
已知式的fN,確定fN-M及gj,j=N-1,…,N-M。
cj,k和dj,k分別為j尺度空間的剩余系數(shù)和小波系數(shù)。
db3小波為緊支正交基,滿足精確重構(gòu)的條件。其小波函數(shù)與尺度函數(shù)的有效支撐長(zhǎng)度為5,小波函數(shù)的消失矩為3。db3小波函數(shù)表達(dá)式如式:
緊支區(qū)間內(nèi)迭代1次得到的db3小波函數(shù)和尺度函數(shù)。
2.3小波閾值降噪
小波降噪的核心是根據(jù)噪聲信號(hào)與原始有效信號(hào)在各尺度上的小波譜不同的特點(diǎn),將各尺度上由噪聲產(chǎn)生的小波譜分量以及噪聲小波譜占主導(dǎo)地位的尺度上的譜分量去掉同時(shí)保留并適當(dāng)?shù)卦鰪?qiáng)有效信號(hào)的小波譜,利用小波變換重構(gòu)算法重構(gòu)信號(hào)。具體方法:將攜帶噪聲的語(yǔ)音信號(hào)分幀處理,對(duì)各幀信號(hào)在db3小波函數(shù)下進(jìn)行小波分解,得到各層的分解系數(shù)?;诿繉影挠行盘?hào)區(qū)別成分,采用硬閾值、軟閾值以及軟硬閾值結(jié)合的方法對(duì)系數(shù)處理的,各層系數(shù)采用不同的閾值進(jìn)行處理;在信號(hào)中起重要作用的分量作適當(dāng)?shù)脑鰪?qiáng)處理對(duì)噪聲譜分量作抑制處理提高信噪比達(dá)到更好的降噪效果。
輸出信噪比snr作為降噪的重要指標(biāo),它通過(guò)下式得出。
Pf和Py分別為純信號(hào)功率和處理后信號(hào)的噪聲功率。若輸出信噪比越大,則表面降噪效果越明顯。
采用不同的閾值函數(shù)對(duì)不同信噪比的一系列輸入信號(hào)“wavebbt.wav” (語(yǔ)音信號(hào)采樣頻率為16k,量化16比特)等分別進(jìn)行降噪處理。將一段不同信噪比的語(yǔ)音信“wavebbt.wav”(輸入信號(hào)信噪比通過(guò)改變?cè)肼暤姆讲顚?shí)現(xiàn))的時(shí)域波形載入matlab 7.10;分幀加窗,將“wavebbt.wav”采用每幀為25ms,10ms的重疊方式的分幀處理,并加以hamming窗;小波分解:對(duì)帶噪信號(hào)進(jìn)行一維小波多尺度分解,對(duì)信號(hào)進(jìn)行6層分解后進(jìn)行對(duì)每幀信號(hào)采取不同的閾值處理后在基于相同小波進(jìn)行重構(gòu)還原信號(hào);分幀處理后的語(yǔ)音片段連接成連續(xù)語(yǔ)音;改變輸入信號(hào)噪聲方差,反復(fù)研究。
仿真及結(jié)果:
[c,l] = wavedec(zl1,6,’db3’);
a6 = appcoef(c,l,’db3’,6);
d6 = detcoef(c,l,6);
d5 = detcoef(c,l,5);
d4 = detcoef(c,l,4);
d3 = detcoef(c,l,3);
d2 = detcoef(c,l,2);
d1 = detcoef(c,l,1);
ythard1 = wthresh(d1,’h’,0);
ythard2 = wthresh(d2,’h’,0.1);
ythard3 = wthresh(d3,’h’,0.4);
ythard4 = wthresh(d4,’h’,0.3);
ythard5 = wthresh(d5,’h’,0.2);
ythard6 = wthresh(d6,’h’,0.05);
c2 = [a6 ythard6 ythard5 ythard4 ythard3 ythard2 ythard1];
s3 = waverec(c2,l,’db3’);
在不同噪聲方差的輸入信號(hào)下,得到對(duì)信號(hào)處理后的結(jié)果。根據(jù)仿真結(jié)果分析顯示:在硬閾值法下數(shù)值大于T的小波系數(shù)保留,其余系數(shù)全為0;軟閾值法先將小波系數(shù)與閾值T進(jìn)行比較,然后根據(jù)比較結(jié)果再向0進(jìn)行收縮。軟硬閾值結(jié)合的方法能使降噪結(jié)果得到最高的信噪比。從聽(tīng)覺(jué)看來(lái):硬閾值法得到的語(yǔ)音較生硬,而軟硬閾值結(jié)合法聽(tīng)覺(jué)效果達(dá)到最佳。
小波閾值處理應(yīng)采取軟硬閾值結(jié)合的方法處理,軟閾值次之,硬閾值的效果最差。為了增強(qiáng)降噪效果和算法的自適應(yīng)性,打算在后期研究中對(duì)輸出的反饋信號(hào)進(jìn)行分析。本文在閾值的選取方法需要優(yōu)化,降噪閾值過(guò)大或過(guò)小都影響最終的降噪效果,閾值過(guò)大會(huì)造成語(yǔ)音的細(xì)節(jié)部分丟失,得到很空曠的語(yǔ)音;閾值過(guò)小則影響降噪效果。在下一步的算法降噪時(shí),主要考慮閾值降噪的自適應(yīng)性,達(dá)到更好的效果說(shuō)。
[1]蔡鐵,朱杰.小波閾值降噪算法中最優(yōu)分解層數(shù)的自適應(yīng)選擇[J].控制與決策,2006,21(02):217-220.
[2]趙力.語(yǔ)音信號(hào)處理(第2版)[M].北京:機(jī)械工程出版社,2010:34-36.
[3]趙文忠.基于小波變換的語(yǔ)音降噪處理[D].合肥工業(yè)大學(xué),2002.