作者:桂。
時間:2017-06-06 16:10:47
鏈接:http://www.cnblogs.com/xingshansi/p/6951494.html
原文鏈接:http://pan.baidu.com/s/1i51Kymp
omlsa代碼:http://pan.baidu.com/s/1bpkvLVp
omlsa論文:http://pan.baidu.com/s/1i5j3Adv
前言
這篇文章是TF-GSC的改進版。雖然TF-GSC對於方向性干擾的抑制效果不錯,對於彌散噪聲(diffuse noise,題外話:不同方向directional noise的均值,或者接近這種效果,可以理解為diffuse noise.)TF-GSC性能下降明顯,如果diffuse noise還是non-stationary,性能下降就更嚴重了。本文的思路是在TF-GSC的基礎上,引入postfiltering(后置濾波),文中提到了三種方法:兩種基於single channel-1)mixture maximum;2)OMLSA;但如果噪聲both diffused and nonstationary,基於single channel的方法不再適用,這時候方法3仍然有效:a new multimicrophone postfilter method。
本文主要梳理基於TF-GSC的multimicrophone postfilter method,由於涉及到OMLSA,所以先簡單介紹。基於single channel的mix-max方法是單獨使用,后面有時間另寫文章整理。
一、OMLSA思想
A-利用不存在概率的增強
容易推理基於MMSE准則的估計器
如果考慮語音存在概率,則估計器擴展為
理論上的值為0,上式簡化為
B-語音不存在概率與最大似然准則估計器ML 結合
例如在語音增強一文中介紹的,基於最大似然准則的估計器為
從Y的概率密度形式
易知ML是基於語音存在的假設,結合語音存在概率,則基於ML准則的估計器為
對於)的計算可以利用貝葉斯准則
這里利用一個假設(也就是約束條件):噪聲服從均值為0,方差相同的復高斯分布。,此時容易證明噪聲幅度服從瑞利分布(相位為均勻分布,且二者獨立),
H1假設下,此時
關於的計算參考語音增強一文的最大似然估計。例如假設語音存在/不存在是等可能的,
,此時完成了
的估計:
其中是a posteriori SNR,
是a priori SNR。這個就是一般意義的參數估計了,在語音增強一文也給出了兩個實現思路:1)Maximum-Likelihood Method;2)Decision-Directed Approach.至此也就完成了結合不存在概率的語音增強。
C-語音不存在概率與最小均方誤差估計器MMSE 結合
其實基本思路都是一樣的:
然后是利用貝葉斯進行概率估計
不同點在於這里進行了轉化
其中
其中,denotes the a priori probability of speech absence for frequency bin k.從而
與ML准則不同的是,只有噪聲時,是噪聲D的分布,而不是其幅度(其實如果是幅度,也有一套方法,感興趣可以自己推導推導)。仍是高斯分布
H1時,且認為D與X不相關,易得
代入上面的估計器,有
其中就是
,則
.進一步求解條件概率
其中
參數估計的細節與ML中的估計思路一致。從而實現信號的增強:
G就是MMSE估計器
不同之處是里邊的替換成
。
題外話:看看之前的參數估計與此處參數估計的聯系
即
不得不佩服,這些理論的研究者真有一套。
D-語音不存在概率與對數最小均方誤差估計器Log-MMSE 結合(OMLSA)
原理與其他方法一致
X的估計器
可以進一步寫為
其中就是語音增強一文中的對數MMSE估計器。這里要有一點不同了,這里的概率是指數形式,有學者研究這樣的增強效果並不比直接LSA更好,所以對其變形
還是與其他方法類似:概率相乘的形式。這里的與MMSE中的一致。至此完成了LSA與語音不存在概率的結合。但這套理論比較粗糙,一些學者(原文見這里,P262)提出了不同的角度:只有噪聲時,不再認為嚴格為0,而是接近0:
其中,第一項
就是最開始的LSA與語音存在概率的原始結合,這就是optimally modified log-spectrum amplitude (OMLSA) estimator ,即
按作者的說法,OMLSA特別是對於低SNR比其他方法更有效。
E-OMLSA中的參數估計
1-SNR估計
按原文的說法,雖然SNR估計理論上更漂亮,但實際效果並不好,因此直接對SNR的估計結果利用不存在概率:
需要注意的是:依賴於修正之后的SNR
,而P(H1)則依賴修正之前的SNR
。
2-語音存在概率的估計
上面分析的各套打法,都是用的固定先驗概率P(H0)和P(H1)也就是q、1-q.這里提供了兩個思路。
思路一(逐個頻點處理):Hard threshold
這里其實是基於ML准則的估計:
更新公式
c是常數,文中設定為0.1.
思路二(逐個頻點處理):soft threshold
利用
得出更新公式
有的學者簡化了操作
是門限,文中設定為0.8.得出更新公式
c按經驗取0.98.此處的更新需要借助VAD,僅當存在語音時迭代更新。
在OMLSA原文中,作者提出了另外一種估計思路。
只是帶寬不同,估計思路一致(本質上都是基於能量的估計)
其中
h是帶寬不同的窗函數。Pframe按幀處理
從而
其中至此完成了語音存在概率的估計
加個后處理修正,也就是q=min(q,q_max):
3-噪聲頻譜的估計
這里用到的是the minima-controlled recursive-averaging (MCRA)算法,這里是一套方法,另起文章梳理。
匯總一下OMLSA的思路:
OMLSA算法思路:
1)大框架:利用統計模型中,log-MMSE的估計器;
2)細節有三點:
2.1)priori SNR:修正了估計方法;
2.2)語音不存在概率:改進了估計方法;
2.3)噪聲頻譜:利用MCRA方法估計;
語音增強模型、priori SNR的估計、語音不存在概率估計、噪聲頻譜估計:這是四塊技術,每一塊都有多種方法,OMLSA是一個綜合算法,每一塊技術都用了其中一套打法而已。
二、論文理論框架
全文主要是TF-GSC框架+post-filtering。
TF-GSC:這篇博文已介紹。
Post-filtering:這篇博文已介紹。
參考
- Gannot, Sharon, and Israel Cohen. "Speech enhancement based on the general transfer function GSC and postfiltering." IEEE Transactions on Speech and Audio Processing 12.6 (2004): 561-571.
- Loizou, Philipos C. Speech enhancement: theory and practice. CRC press, 2013.