本發(fā)明涉及語音信號(hào)增強(qiáng)技術(shù)領(lǐng)域,尤其涉及到基于新閾值函數(shù)小波閾值處理的語音去噪方法。
背景技術(shù):
目前,信息技術(shù)高速發(fā)展,語音信號(hào)處理作為信息技術(shù)的一門關(guān)鍵技術(shù),逐漸成為國際熱門研究課題。語音信號(hào)處理主要包括語音編碼,語音合成,語音識(shí)別以及語音增強(qiáng)。語音增強(qiáng)作為語音信號(hào)處理的重要組成部分,經(jīng)過幾十年的發(fā)展,出現(xiàn)了許多經(jīng)典算法,得到許多科研人員的重視和研究。
語音增強(qiáng)主要目的是去除帶噪語音中噪聲信號(hào)的同時(shí)保留有用的語音信號(hào),提高語音信號(hào)的可懂度和整體質(zhì)量。傳統(tǒng)的去噪方法有減譜法、維納濾波、子空間方法等。這些方法的不足在于信號(hào)變換的熵增高、無法刻畫信號(hào)的非平穩(wěn)特性且無法得到信號(hào)的相關(guān)性,為克服上述缺點(diǎn),人們開始使用小波變換解決信號(hào)去噪問題。小波變換可以對(duì)語音信號(hào)進(jìn)行多尺度的分析,特別適合分析像語音這種非平穩(wěn)信號(hào)。目前小波去噪主要有三種方法:模極大值去噪法、空域相關(guān)去噪法和小波閾值去噪法,其中,小波閾值去噪法由于計(jì)算量小,去噪效果好而被廣泛研究和使用。
小波變換是一種信號(hào)的時(shí)頻分析,小波變換具有多辨率的特點(diǎn),可以很方便的從帶噪語音中提取出原始語音成分。小波閾值去噪的關(guān)鍵是選取適當(dāng)?shù)男〔ɑ头纸鈱訑?shù),確定合適的小波閾值和閾值函數(shù),其中,閾值函數(shù)的選取是關(guān)鍵的一步。
donoho和johnston提出了硬閾值去噪法和軟閾值去噪法。但這兩種方法都有其自身的缺陷:硬閾值法連續(xù)性差,重構(gòu)可能會(huì)產(chǎn)生振蕩;軟閾值法雖然連續(xù)性好,但會(huì)給重構(gòu)信號(hào)帶來一定的偏差,帶來信號(hào)的失真。近年來,人們對(duì)于小波閾值函數(shù)的選取一直做著深入研究,許多學(xué)者在軟硬閾值函數(shù)的基礎(chǔ)上做了一些改進(jìn),如多項(xiàng)式差值法、軟硬函數(shù)折衷法以及模平方處理法。這些閾值函數(shù)雖然比傳統(tǒng)軟硬函數(shù)有所改善,但是它們并沒有考慮小波變換模值的衰減符合指數(shù)這一規(guī)律。同時(shí),在小波系數(shù)小于閾值時(shí)如果做置零處理,這樣會(huì)損失部分清音信息。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明目的在于解決了傳統(tǒng)小波閾值去噪法中硬閾值函數(shù)不連續(xù)導(dǎo)致處理后信號(hào)產(chǎn)生振蕩、軟閾值函數(shù)處理信號(hào)后失真較大的問題,提出了一種基于新閾值函數(shù)的小波語音去噪方法,該方法的新閾值函數(shù)去噪法能對(duì)語音信號(hào)進(jìn)行平滑處理,加強(qiáng)對(duì)語音分量的保護(hù),從而減少失真。該方法的新閾值函數(shù)處理后的語音信號(hào)更加平滑,可以獲得更加清晰的語音信號(hào),減少語音信號(hào)失真。
本發(fā)明解決其技術(shù)問題所采取的技術(shù)方案是:一種基于新閾值函數(shù)的小波語音去噪方法,該方法包括如下步驟:
步驟1、帶噪語音產(chǎn)生;
步驟2、對(duì)帶噪語音進(jìn)行小波分解;
步驟3、對(duì)帶噪語音進(jìn)行小波閾值處理;
步驟4、對(duì)處理后的語音進(jìn)行小波重構(gòu);
步驟5、得到降噪后語音信號(hào)。
進(jìn)一步地,本發(fā)明上述步驟1所用原始語音數(shù)據(jù)是在實(shí)驗(yàn)室環(huán)境下采集,音頻格式為pcm編碼,采樣頻率為8000hz,采樣精度為16bit,音頻格式以wav格式保存,添加的噪聲為加性高斯白噪聲,將原始語音數(shù)據(jù)與不同強(qiáng)度的白噪聲混合產(chǎn)生帶噪語音信號(hào)。
進(jìn)一步地,本發(fā)明上述步驟2對(duì)信號(hào)進(jìn)行離散小波變換,離散小波定義為:
其中f(x)為帶噪語音信號(hào),wf(2j,2jk)為第j層第k個(gè)點(diǎn)得到的小波系數(shù),ψ(x)為小波母函數(shù)。
進(jìn)一步地,本發(fā)明步驟3中采用的新閾值函數(shù)為:
其中w為小波分解后的小波系數(shù),wλ為采用新閾值函數(shù)處理的小波系數(shù),sgn(w)為符號(hào)函數(shù),w大于或等于0時(shí),sgn(w)=1,w小于0時(shí),sgn(w)=-1。a∈[0,1],b為正常數(shù),p<λ,λ為閾值。當(dāng)a為零時(shí),該函數(shù)是硬閾值函數(shù);當(dāng)b為0并且a為1時(shí)是軟閾值函數(shù),并且在閾值處都等于同一個(gè)數(shù),表明該閾值函數(shù)在閾值處是連續(xù)的。通過調(diào)節(jié)這三個(gè)參數(shù)可以獲得更好的去噪效果。改進(jìn)的閾值函數(shù)繼承了傳統(tǒng)軟硬閾值函數(shù)的優(yōu)點(diǎn),同時(shí)又結(jié)合了噪聲小波變換模值的衰減符合指數(shù)這一特點(diǎn),并且在小波系數(shù)小于閾值時(shí)沒有簡單做置零處理,故其去噪效果會(huì)有所提高。
進(jìn)一步地,本發(fā)明上述步驟4中離散的小波逆變換定義為:
其中c是一個(gè)與信號(hào)無關(guān)的常數(shù),f(t)為小波逆變換得到的重構(gòu)信號(hào),對(duì)閾值處理后的小波系數(shù)進(jìn)行小波逆變換,就得到小波去噪后信號(hào)。
進(jìn)一步地,本發(fā)明上述方法引入信噪比和均方誤差,信號(hào)輸出信噪比與均方誤差計(jì)算公式分別為:
式中n為信號(hào)采樣點(diǎn)數(shù),s(n)為原始語音信號(hào),y(n)為去噪后的語音信號(hào)。
有益效果:
1.相比傳統(tǒng)的軟硬閾值函數(shù),新的閾值函數(shù)在閾值處連續(xù),并且小波系數(shù)小于零時(shí)沒有簡單做置零處理。
2.新的閾值函數(shù)結(jié)合了噪聲小波變換模值衰減符合指數(shù)這一特點(diǎn)。
3.新的閾值函數(shù)結(jié)構(gòu)簡單,可以通過改變a、b以及p的值來調(diào)節(jié)閾值函數(shù),能提高信噪比和獲得最佳去噪效果。
4、本發(fā)明的新閾值函數(shù)能對(duì)信號(hào)進(jìn)行更好的平滑處理,加強(qiáng)對(duì)語音分量的保護(hù),從而獲得更好的去噪效果。
附圖說明
圖1為本發(fā)明所述小波閾值去噪流程圖。
圖2為本發(fā)明提出的新閾值函數(shù)在設(shè)定范圍內(nèi)的示意圖。
具體實(shí)施方式
下面結(jié)合說明書附圖對(duì)本發(fā)明的具體實(shí)施方式做進(jìn)一步的具體說明。圖1是小波閾值去噪方法的基本原理圖。
如圖1和圖2所示,本發(fā)明提供了一種基于新閾值函數(shù)的小波語音去噪方法,該方法包括如下步驟:
步驟一:獲得帶噪語音信號(hào)
本發(fā)明所用原始語音數(shù)據(jù)是在實(shí)驗(yàn)室環(huán)境下采集,音頻格式為pcm編碼,采樣頻率為8000hz,采樣精度為16bit,音頻格式以wav格式保存。添加的噪聲為加性高斯白噪聲,將原始語音數(shù)據(jù)與不同強(qiáng)度的白噪聲混合產(chǎn)生帶噪語音信號(hào)。
步驟二:對(duì)帶噪語音進(jìn)行小波分解
對(duì)信號(hào)進(jìn)行離散小波變換,離散小波定義為:
其中f(x)為帶噪語音信號(hào),wf(2j,2jk)為第j層第k個(gè)點(diǎn)得到的小波系數(shù),ψ(x)為小波母函數(shù)。
小波變換具有很強(qiáng)去數(shù)據(jù)相關(guān)性,經(jīng)小波分解后,原始語音信號(hào)的小波系數(shù)幅值要大于噪聲的系數(shù)幅值,幅值比較大的小波系數(shù)通常是原始語音信號(hào),而幅值比較小系數(shù)在很大程度上是噪聲。常用于去噪的小波有dbn小波系、symn小波系和coifn小波系,小波分解層數(shù)一般選擇3-5層。本發(fā)明經(jīng)過大量實(shí)驗(yàn),最終選擇小波分解層數(shù)為三層,選用sym6小波基。小波分解后得到第三層小波低頻系數(shù)以及第一、二、三層小波高頻系數(shù)。
步驟三:對(duì)帶噪語音進(jìn)行小波閾值處理
步驟三是對(duì)步驟二中小波高頻系數(shù)進(jìn)行閾值量化,閾值公式為:
其中j為小波分解層數(shù),n為語音信號(hào)的長度,σ為噪聲方差,其常用估計(jì)公式為σj=median(wj)/0.6745,wj為第j層小波系數(shù)。所述的新閾值函數(shù)為:
其中w為小波分解后的小波系數(shù),wλ為采用新閾值函數(shù)處理的小波系數(shù),sgn(w)為符號(hào)函數(shù),w大于或等于0時(shí),sgn(w)=1,w小于0時(shí),sgn(w)=-1。a∈[0,1],b為正常數(shù),p<λ,λ為閾值。圖2是閾值函數(shù)在某個(gè)設(shè)定范圍內(nèi)的示意圖。
根據(jù)高頻小波系數(shù)與閾值的比較,對(duì)高頻小波系數(shù)做閾值處理。
步驟四:對(duì)處理后的語音進(jìn)行小波重構(gòu)
離散小波逆變換定義為:
其中c是一個(gè)與信號(hào)無關(guān)的常數(shù),f(t)為小波逆變換得到的重構(gòu)信號(hào)。
對(duì)閾值處理后的小波系數(shù)進(jìn)行小波逆變換,就得到小波去噪后信號(hào)。
為了對(duì)比去噪效果,引入信噪比和均方誤差。信號(hào)輸出信噪比與均方誤差計(jì)算公式分別為:
式中n為信號(hào)采樣點(diǎn)數(shù),s(n)為原始語音信號(hào),y(n)為去噪后的語音信號(hào)。
在輸入帶噪語音信噪比為-5db、0db、5db、10db以及15db五種情況下,分別采用本發(fā)明去噪方法與傳統(tǒng)軟硬閾值去噪方法,得到本發(fā)明與傳統(tǒng)軟硬閾值去噪方法的輸出信噪比和均方誤差。
表1為本發(fā)明與傳統(tǒng)軟硬閾值去噪后的輸出信噪比,表2為本發(fā)明與傳統(tǒng)軟硬閾值去噪后的均方誤差。
表1
表2
從表1和表2可以看出,無論在低輸入信噪比還是高輸入信噪比下,本發(fā)明方法比傳統(tǒng)軟硬閾值方法輸出信噪比高、均方誤差更小。