專利名稱:一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及語音信號(hào)處理領(lǐng)域,特別是一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法。
背景技術(shù):
譜減法是歷史上最早被提出來用于噪聲消除的語音增強(qiáng)算法(參考文獻(xiàn)1:S. F. Boll,“Suppression of the acoustic noise in speech using spectralsubtraction”,IEEE Tran. Acoust. Speech Signal Process. 27 (2), 113-120,1979),也是應(yīng)用最為廣泛的算法之一。它基于一個(gè)基本的理論對(duì)于加性噪聲,我們可以從帶噪語音的離散傅里葉變換(Discrete Fourier Transform, DFT)的頻譜中減去噪聲頻譜來獲得語音頻 譜的估計(jì)。噪聲頻譜可以通過無聲段來估計(jì)和更新。對(duì)估計(jì)的語音頻譜進(jìn)行離散傅里葉逆變換(Inverse Discrete Fourier Transform, IDFT)就可以得到增強(qiáng)后語音時(shí)域波形。譜減法只需要進(jìn)行DFT和IDFT,計(jì)算復(fù)雜度低,實(shí)現(xiàn)簡(jiǎn)單。譜減法主要分為一階譜減(即幅值譜減)和二階譜減(即功率譜減)。無論哪種形式的譜減法,在設(shè)計(jì)時(shí)都應(yīng)當(dāng)非常小心,以避免引入語音畸變。如果被減去部分大于噪聲,語音信息將會(huì)丟失;反之,如果被減去部分小于噪聲,就會(huì)有過多的噪聲殘留。研究者們相繼提出了許多改進(jìn)算法來削弱(乃至消除)譜減過程中引入的語音畸變。與譜減法實(shí)現(xiàn)簡(jiǎn)單的特點(diǎn)相對(duì)應(yīng)的是它也有不少缺陷。其中,最主要的缺陷來自音樂噪聲。由于噪聲估計(jì)誤差和頻譜擾動(dòng)的存在,帶噪信號(hào)在某些頻帶上的幅值會(huì)小于噪聲的估計(jì)幅值,從而使相減之后的估計(jì)語音頻譜出現(xiàn)負(fù)值。最簡(jiǎn)單的辦法是將這些小于零的值置零,從而使全頻帶的頻譜幅值都為非負(fù)數(shù)。然而,這種對(duì)負(fù)值的非線性操作會(huì)在頻帶上制造出許多的孤立峰。這些孤立峰在時(shí)域和頻域都表現(xiàn)出極強(qiáng)的隨機(jī)性,盡管其幅值不大,但影響卻很嚴(yán)重。在時(shí)域,這些孤立峰聽起來像是單音調(diào)的樂音,而且其音調(diào)(頻率)在幀與幀之間隨機(jī)變化,從而產(chǎn)生一種新型的噪聲,其經(jīng)常被稱為音樂噪聲(musicalnoise)。在很多時(shí)候,音樂噪聲比原始噪聲更加讓人討厭。產(chǎn)生音樂噪聲的另一個(gè)重要因素是帶噪語音和噪聲的頻譜在估計(jì)時(shí)的大方差,及不同時(shí)頻點(diǎn)上譜減規(guī)則的巨大差異。語音噪聲之所以在傳統(tǒng)譜減法中難以克服,是因?yàn)樽V減法基于這樣一個(gè)規(guī)則由語音信號(hào)頻譜與噪聲頻譜產(chǎn)生的交叉項(xiàng)可以被忽略。這個(gè)規(guī)則符合長(zhǎng)時(shí)統(tǒng)計(jì)的觀點(diǎn)由于語音和噪聲是相互獨(dú)立的隨機(jī)過程,所以其交叉項(xiàng)的期望值應(yīng)該等于零。然而,在語音增強(qiáng)算法實(shí)現(xiàn)中,每一幀的長(zhǎng)度只有20-30ms左右,在如此短的時(shí)間里,這個(gè)規(guī)則難以成立(參考文獻(xiàn) 2 :N. Evans, J. Mason, ff. Liu, and B.Fauve,“An assessment on the fundamentallimitations of spectral subtraction,,· Proc.1EEE Internat. Conf. on Acoustics,Speech, Signal Processing (ICASSP), 2006)。所以,譜減法的公式只是一種近似而非準(zhǔn)確。研究者們已經(jīng)做了許多努力來調(diào)查交叉項(xiàng)的影響,但這些研究主要面向如何提高自動(dòng)語音識(shí)別(Automatic Speech Recognition, ASR)的性能,而不是語音質(zhì)量。
發(fā)明內(nèi)容
(一 )要解決的技術(shù)問題譜減法中音樂噪聲的根本來源是交叉項(xiàng)誤差,本發(fā)明的目的在于克服交叉項(xiàng)誤差的不利影響,提出零誤差下的幅值譜減方法,以徹底消除音樂噪聲。( 二 )技術(shù)方案本發(fā)明為解決上述技術(shù)問題,提出了一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法,該方法包括下列步驟步驟a :采集帶噪語音信號(hào)y(k),獲得所述帶噪語 音信號(hào)y(k)的幅值譜a y( ),其中,k表示離散時(shí)間點(diǎn),ω表示離散頻點(diǎn);步驟b :利用相位調(diào)整算法對(duì)帶噪語音的幅值譜進(jìn)行微距最大值搜索,獲得純凈語音信號(hào)與加性噪聲信號(hào)之間的相位差為O時(shí)的帶噪語音幅值譜.步驟c :利用噪聲估計(jì)算法更新加性噪聲幅值譜么(W).步驟d :利用過減規(guī)則系數(shù)和加性噪聲幅值譜<(>)對(duì)所述帶噪語音幅值譜%,(^7)進(jìn)行幅值譜減,得到純凈語音幅值譜 Λ.(&).步驟e :利用二階幅值補(bǔ)償因子和預(yù)設(shè)的一階幅值補(bǔ)償因子,對(duì)純凈語音幅值譜 進(jìn)行補(bǔ)償,得到增強(qiáng)后的純凈語音幅值譜之(O,進(jìn)而得到增強(qiáng)后的純凈語音信號(hào)
m
O(三)有益效果針對(duì)傳統(tǒng)譜減法中由語音信號(hào)頻譜與噪聲頻譜產(chǎn)生的交叉項(xiàng),我們摒棄了忽略交叉項(xiàng)誤差的不合理假設(shè)。在本發(fā)明中,我們使用空間幾何原理,充分利用語音和噪聲信號(hào)的差異性,提出了基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法。實(shí)踐證明,本發(fā)明可以很好的克服交叉項(xiàng)的影響,有效地消除頻譜中隨機(jī)出現(xiàn)的孤立峰,從而有效地抑制音樂噪聲。
圖1是本發(fā)明的基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法流程圖;圖2是本發(fā)明的所述語音增強(qiáng)方法中的相位調(diào)整算法的流程圖;圖3是本發(fā)明的所述語音增強(qiáng)方法中的劃分多個(gè)子頻帶并計(jì)算相應(yīng)SNR的流程圖;圖4是本發(fā)明的所述語音增強(qiáng)方法中的子頻帶譜減的流程圖;圖5是本發(fā)明的所述語音增強(qiáng)方法中的幅值補(bǔ)償算法的流程圖。
具體實(shí)施例方式為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合具體實(shí)施例,并參照附圖,對(duì)本發(fā)明作進(jìn)一步的詳細(xì)說明。如圖1所示,本發(fā)明公開了一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法,該方法包括如下步驟步驟101 :通過麥克風(fēng)采集帶噪語音信號(hào)y(k)。下面是對(duì)步驟101的詳細(xì)說明。假設(shè)麥克風(fēng)在時(shí)刻k采集到的帶噪語音信號(hào)y (k)為X (k)與V (k)之和,即y (k) =g*s(k)+v(k) = x (k)+v (k)(I)其中,g是聲源s (k)到麥克風(fēng)的沖擊響應(yīng),X (k)是麥克風(fēng)采集到的純凈語音,V (k)是加性噪聲。步驟102對(duì)帶噪語音進(jìn)行截短,并做快速離散傅里葉變換(FastFourierTransform, FFT),得到帶噪語音信號(hào)的幅值譜和相位譜。下面對(duì)步驟102進(jìn)行詳細(xì)說明。本實(shí)例中我們利用32ms的漢寧窗對(duì)信號(hào)進(jìn)行截短,并進(jìn)行FFT,得到信號(hào)的頻域表示Υ(ω) = χ(ω)+ν(ω)(2)其中,X表示純凈語音頻譜,Y表示帶噪語音的頻譜,V表示加性噪聲的頻譜,ω表示離散頻點(diǎn)。將⑵式寫為極坐標(biāo)形式,
權(quán)利要求
1.一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法,其特征在于,包括下列步驟 步驟a:采集帶噪語音信號(hào)y(k),獲得所述帶噪語音信號(hào)y(k)的幅值譜a y (ω),其中,k表示離散時(shí)間點(diǎn),ω表示離散頻點(diǎn); 步驟b :利用相位調(diào)整算法對(duì)帶噪語音的幅值譜進(jìn)行微距最大值搜索,獲得純凈語音信號(hào)與加性噪聲信號(hào)之間的相位差為O時(shí)的帶噪語音幅值譜&.(仍); 步驟c :利用噪聲估計(jì)算法更新加性噪聲幅值譜; 步驟d:利用過減規(guī)則系數(shù)和加性噪聲幅值譜對(duì)所述帶噪語音幅值譜進(jìn)行幅值譜減,得到純凈語音幅值譜泛㈨).9 步驟e :利用二階幅值補(bǔ)償因子和預(yù)設(shè)的一階幅值補(bǔ)償因子,對(duì)純凈語音幅值譜毛O)進(jìn)行補(bǔ)償,得到增強(qiáng)后的純凈語音幅值譜元W),進(jìn)而得到增強(qiáng)后的純凈語音信號(hào) O
2.如權(quán)利要求1所述的方法,其特征在于,所述步驟b中對(duì)帶噪語音的幅值譜進(jìn)行微距最大值搜索具體包括 第ω頻點(diǎn)上,在連續(xù)的Μ(ω)個(gè)時(shí)刻里搜索帶噪語音信號(hào)幅值的最大值作為相位調(diào)整后的帶噪語音幅值譜,即找到純凈語音信號(hào)與加性噪聲信號(hào)之間的相位差為O時(shí)的帶噪語音幅值譜
3.如權(quán)利要求1所述的方法,其特征在于,所述步驟c中更新加性噪聲幅值譜么(扮)進(jìn)一步包括 步驟Cl :計(jì)算全頻帶的信噪比SNR
4.如權(quán)利要求1所述的方法,其特征在于,所述步驟d前還包括將全頻帶劃分成多個(gè)子頻帶,并在每個(gè)子頻帶上計(jì)算信噪比的步驟,其具體包括如下步驟步驟1:將全頻帶劃分成多個(gè)子頻帶,并計(jì)算子頻帶帶寬fd, fd = fs/2R其中,fs是采樣率,R是子頻帶個(gè)數(shù);步驟2 :計(jì)算各個(gè)子頻帶的起始頻點(diǎn)和截止頻點(diǎn)
5.如權(quán)利要求4所述的方法,其特征在于,所述步驟d中過減規(guī)則系數(shù)如下計(jì)算
6.如權(quán)利要求5所述的方法,其特征在于,步驟d中所述幅值譜減如下在第r個(gè)子頻帶上進(jìn)行譜減得到當(dāng)前巾貞k的純凈語音幅值譜
7.如權(quán)利要求4所述的方法,其特征在于,步驟e中計(jì)算二階幅值補(bǔ)償因子具體如下 計(jì)算各個(gè)子頻帶上二階幅值補(bǔ)償因子μ&;
8.如權(quán)利要求7所述的方法,其特征在于,步驟e中所述對(duì)純凈語音幅值譜進(jìn)行補(bǔ)償具體如下 在第r個(gè)子頻帶上進(jìn)行幅值補(bǔ)償,得到增強(qiáng)后的純凈語音幅值譜
9.如權(quán)利要求5所述的方法,其特征在于,所述步驟d中還對(duì)所述譜減得到的當(dāng)前幀k的純凈語音幅值譜進(jìn)行半波整流
10.如權(quán)利要求1所述的方法,其特征在于,所述步驟e中通過對(duì)增強(qiáng)后的純凈語音幅值譜 ,.(ω)進(jìn)行快速傅里葉逆變換得到時(shí)域短時(shí)純凈語音信號(hào),并對(duì)其按照75%的重疊率進(jìn)行疊加,得到增強(qiáng)后的純凈語音信號(hào)乳A。
全文摘要
本發(fā)明公開了一種基于相位調(diào)整和幅值補(bǔ)償?shù)亩嘧訋ёV減法的語音增強(qiáng)方法。該方法主要包括對(duì)麥克風(fēng)采集到的信號(hào)進(jìn)行截短,并進(jìn)行快速傅里葉變換;利用相位調(diào)整算法對(duì)幅值譜進(jìn)行微距最大值搜索,獲得調(diào)整后的帶噪語音的幅值譜;估計(jì)噪聲的幅值譜;將全頻帶劃分成多個(gè)子頻帶,并計(jì)算各個(gè)子頻帶上的信噪比;在各子頻帶上進(jìn)行過減規(guī)則的幅值譜減法;對(duì)譜減后的語音譜進(jìn)行幅值補(bǔ)償;利用快速傅里葉反變換和信號(hào)重疊,得到信號(hào)的時(shí)域波形。
文檔編號(hào)G10L21/0232GK103021420SQ20121051307
公開日2013年4月3日 申請(qǐng)日期2012年12月4日 優(yōu)先權(quán)日2012年12月4日
發(fā)明者劉文舉, 李超 申請(qǐng)人:中國(guó)科學(xué)院自動(dòng)化研究所