Chapter 5:Spectral-Subtractive Algorithms
作者:桂。
時間:2017-05-24 ?10:06:39
主要是《Speech enhancement: theory and practice》的讀書筆記,全部內容可以點擊這里。
書中代碼:http://pan.baidu.com/s/1hsj4Wlu,提取密碼:9dmi
?一、譜減的基本原理
A-基本問題
基本模型是加性噪聲:
頻域模型:
所謂譜減法,可以通過不同的假設進行,一般的:
通常為了避免幅值出現負數,加上一個半波整流。這時的幅度估計+帶噪信號的相位,即可得出降噪的信號。
B-典型
分別取 p = 1, p = 2分析。
p = 1時,譜減
p = 2時,譜減
可以看出p = 2是基于統計無關的假設:
反過來看看p = 1的情形,可以寫成:
也就是clean信號與noise相位相同,且統計相關。
對比來看,p = ?2的假設在應用場景里應該比 p = 1更合理,盡管作為非平穩信號,完全無關的假設難以嚴格滿足。p取其他值的分析類似。
譜減法的基本框架:
?
回顧上面的譜減法,理論分析的前提是基于頻點,事實上許多應用場景里,noise與clean(特別是在高頻區域)滿足一定的正交性,即該頻點完全屬于clean/noise,而非二者的混合,從這一點來說p的不同取值帶來的影響遠沒有理論中體現的那么大。下圖也說明了:高頻部分的正交性更明顯。
二、譜減法的不足
1-帶來了Musical noise
譜減過程中沒有完全消除噪聲,而把峰值保留了下來,造成Musical noise:
2-相位失真
相位不準確帶來的信號失真,帶噪的相位來表達clean的相位,造成語音的可懂度下降(書中指出SNRs (<0 dB),其實這么說是不合適的,噪聲與信號正交程度越小,這種論證才有意義).
三、其它譜減法
A-Boll的過減法
Boll的思路其實就是平滑,如果平滑呢?這里沒有用線性平滑,而是用了一個min/max{相鄰幀信息}的思路,為了防止毛刺:1)譜減的門限D盡可能Max,2)信號的估計盡可能min
Berouti等人也提出了一種方法:
這個思路的核心在于β的選取,其實就是為了減少毛刺引入了填充,其中
,圖中可以觀察到β的影響:
B-非線性譜減
這個的動機是:現實中,噪聲對所有頻段的影響,并不是均衡的,按上面的思路過于粗糙,例如汽車噪聲,可能在某一頻段干擾明顯,又比如一些噪聲對于低頻影響更大。非線性譜減的基本規則:
核心在于a(w)不再是一個常數,取值與頻率有關。其中的參數一般平滑與處理一下
a通常取非線性函數
其中ρ
信噪比越大,a越小。?
C-多帶譜減法
多帶譜減也可以歸類為非線性譜減,其實就是分自帶計算,類似分治法
譜減的思路可以按照上面任何一個方法,不同的是用了兩個參數:α、,
對于α:
其中
對于
多帶的實現框圖
D-MMSE譜減法
?上面提到的譜減法,可以有一種廣義的定義方式
且上面的方法都是通過實驗經驗設定參數,其實對于參數γ、α可以借助MMSE(最小均方誤差估計)/其他準則合理即可:
得出的參數估計(細節可參考這里)
其中
從而得出降噪結果:
這里用到一個粗糙但簡便的假設:噪聲譜與干凈信號譜的相位相同。
如果假設,可以得到類似的降噪算法
其中是與p有關的常數,如對應。得到估計之后可以通過上面提到一些方式作進一步的后處理。
這個方法的關鍵在于:作為一個理論值,實際應用如何估計它?
直觀的思路是,可以借助已處理的信息進行估計:,也可以利用當前信息估計:,一種折中的思路是二者的權衡:
E-擴展譜減法
?上面的算法都需要借助VAD技術/噪聲估計技術,實際上 維納+譜減 的結合,可以實現降噪并稱該方法:擴展譜減法。
維納濾波原理
其中y為帶噪信號,x為clean,n為noise.對于也就是
細節處理上可以用一下平滑
利用估計的噪聲譜得出當前的噪聲譜
從而估計當前的信號
它是自適應的,不需要估計噪聲,因此對于非平穩噪聲環境也同樣適用。實現框圖:
總結
以上是生活随笔為你收集整理的Chapter 5:Spectral-Subtractive Algorithms的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 路由器上的reset是什么意思
- 下一篇: Chapter 7:Statistica