版權(quán)聲明:本文來自于icoolmedia,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明出處,相關(guān)的音視頻算法討論請加群(374737122)一起交流!
上次關(guān)于語音增強(qiáng)的原理講說了噪聲估計問題,這次打算說下增益因子如何確定,也就是當(dāng)噪聲已知后,如何進(jìn)行去噪的問題(把增益因子與帶噪語音相乘即可)。這里主要說下MMSE濾波,順帶說下譜減法、維納濾波。當(dāng)然也有其它方式來實(shí)現(xiàn)語音增強(qiáng)的,比如基于矩陣分解原理的子空間法、基于自適應(yīng)濾波器的降噪,有的方法icoolmedia比較清楚,有的也還在學(xué)習(xí)之中,同時也歡迎各位朋友就不足之處批評指正。
先說下經(jīng)典的譜減法。我們還是假設(shè)帶噪語音y(n)由純凈語音x(n)和加性噪聲d(n)組成,其時域表示與頻域表示為
在語音增強(qiáng)領(lǐng)域中,最常使用的是頻域功率譜形式,那么,帶噪語音的功率譜可以表示為Y與其共軛相乘,展開可得
展開式的第三項被稱為交叉項,當(dāng)純凈語音與加性噪聲不相關(guān)時,交叉項為0,那么,當(dāng)我們已經(jīng)估計出噪聲信號的功率譜時,純凈語音信號的估值就可以表示為
根據(jù)線性濾波理論,可以將這個濾波過程建模為
綜合以上兩式,H可以表示為
這里的H,就是線性濾波系統(tǒng)的傳遞函數(shù),在語音增強(qiáng)領(lǐng)域,通常也稱為增益函數(shù)/抑制函數(shù)、或者增益因子/抑制因子,都是是同一個意思。另外,要注意,上面的這個增益因子表示只是一個理想的過程。因?yàn)楫?dāng)從帶噪語音中減去估計噪聲后,總會遺留一些或長或短的小譜峰,這些譜峰比較影響聽感。這種現(xiàn)象就是出現(xiàn)了音樂噪聲。因此,如果譜減法要實(shí)際使用時,必須做如下改變。
當(dāng)對噪聲估計過高時,就出現(xiàn)了過估計現(xiàn)象,很可能估計出來的噪聲功率大于帶噪語音的功率,這時,不能簡單的把純凈語音的功率置0,而應(yīng)該設(shè)置與噪聲相關(guān)的一個譜下限值。設(shè)置譜下限的目的在于縮小遺留的小譜峰的差異,控制殘留噪聲的多少和音樂噪聲的大小人為的對噪聲多減去一部分,這樣做的目的是為了盡可能的減少小譜峰的遺留,避免音樂噪聲。經(jīng)過這兩方面的改變,譜減法具有如下形式:
這里當(dāng)存在語音時,用第一個式子,當(dāng)沒有語音存在時,就用下面的式子,其中,alpha就是過減因子,取為一個大于1的值,beta為一個遠(yuǎn)小于1的值,具體取值范圍請參考Berouti等人的論文:Enhancement of speech corrupted by acoustic noise,這里不再詳加敘述。
這時,當(dāng)存在語音時譜減法的增益因子就變?yōu)?/p>
這里的gamma是后驗(yàn)信噪比,為帶噪語音與噪聲的功率之比。譜減法增益因子就說完了。頻域維納濾波的增益因子可以參考我以前寫的博客一個頻域語音降噪算法實(shí)現(xiàn)及改進(jìn)方法中的內(nèi)容,里面有詳細(xì)的推導(dǎo)過程,這里就不詳加敘述了。下面重點(diǎn)說下MMSE降噪算法是如何確定增益因子的。
MMSE估計器用在語音增強(qiáng)之中,就是在貝葉斯準(zhǔn)則下估計出來的純凈語音頻幅度與實(shí)際幅度的均方誤差最小,因此,也可以稱為貝葉斯MSE。而要做到這一點(diǎn),我們可以充分利用帶噪語音的先驗(yàn)信息來提高估計的準(zhǔn)確性。即,假定我們已知信號的噪聲DFT系數(shù)的概率密度,在此基本上,充分利用這種已知的先驗(yàn)信息,提高估計的準(zhǔn)確性。因此,貝葉斯MSE用公式表示如下:
我們來推導(dǎo)下使貝葉斯MSE最小的估計量,首先應(yīng)用貝葉斯原理,聯(lián)合概率密度可以寫為:
所以
對中括號中的積分求導(dǎo)
令等式等于0,得
在此我們假設(shè)傅里葉變換系數(shù)之音是統(tǒng)計獨(dú)立的。因此上式可以表示為
可以看到,要想得到MMSE估計器,我們首先需要計算純凈語音第k個分量的后驗(yàn)概率密度函數(shù),它可以通過貝葉斯準(zhǔn)則得到:
這里xk是隨機(jī)變量Xk的實(shí)際值。把上面這個后驗(yàn)概率密度函數(shù)表達(dá)式代入我們推導(dǎo)出來的MMSE估計器中
其中
代入MMSE估計器中,我們最終得到MMSE幅度譜估計器(推導(dǎo)過程請參考:語音增強(qiáng)-理論與實(shí)踐中的附錄B)
其中,Γ(.)為伽馬函數(shù),Φ(a,b;c)為合流超幾何函數(shù),ξ為先驗(yàn)信噪比、最后一個式子為后驗(yàn)信噪比。
最后,把合流超幾何函數(shù)寫成貝塞爾函數(shù)的形式,我們就得到了最終的MMSE估計器的表達(dá)式:
如果我們定義:
的話,這里G就是我們要求的MMSE幅度估計器的增益。
另外想說一下,MMSE估計的推導(dǎo)思路我弄明白了,主要是通過參考《語音增強(qiáng)-理論與實(shí)踐》、《統(tǒng)計信號處理基礎(chǔ)-估計與檢測理論》這兩本書做到的,但關(guān)于合流超幾何函數(shù)與貝塞爾函數(shù)的推導(dǎo)內(nèi)容還沒完全搞明白,如果不是對理論推導(dǎo)過程非常感興趣的話,這里也沒有必要深究,只要會使用這個結(jié)果就行了。
使用MMSE做語音增強(qiáng),經(jīng)典的出處應(yīng)該是Speech enhancement using minimum mean-square error這篇論文,但里面講的并不詳細(xì),這里盡可能的給出能讓大家理解流程的推導(dǎo)。當(dāng)然,如果感興趣的話,icoolmedia還是推薦大家最好都認(rèn)真看一遍上面提到的資料。
新聞熱點(diǎn)
疑難解答