1 . Abstract
這裏介紹一種基於相干函數的雙麥降噪算法,上一篇 中的方法從本質上講應該是這篇論文裏的一個特例,或者說是一種簡化處理,這裏咱們就來看看完整的框架
先上系統框圖:
基本與上一篇裏面的相同,這裏就多了一個S N R E s t i m a t i o n SNR Estimation S N R E s t i m a t i o n (信噪比估計),很多降噪算法都依賴於信噪比估計,得到信噪比後,就可以用譜減或維納濾波進行降噪。那這裏我們就主要來看看怎麼得到這個信噪比。
2 . SNR Estimation
信號定義以及相干函數的計算都是跟上一篇 相同,這裏就不重複,直接跳到相干函數跟信噪比的公式:
公式
Γ ^ y 1 y 2 ( ω ) = [ c o s ( ω τ ) + j s i n ( ω τ ) ] S N R ^ 1 + S N R ^ + [ c o s ( ω τ c o s θ ) + j s i n ( ω τ c o s θ ) ] 1 1 + S N R ^ (1)
\hat{\Gamma }_{y_{1}y_{2}}(\omega)=[cos(\omega \tau)+jsin(\omega \tau)]\frac{\hat{SNR}}{1+\hat{SNR}}+[cos(\omega \tau cos\theta)+jsin(\omega \tau cos\theta)]\frac{1}{1+\hat{SNR}} \tag{1}
Γ ^ y 1 y 2 ( ω ) = [ c o s ( ω τ ) + j s i n ( ω τ ) ] 1 + S N R ^ S N R ^ + [ c o s ( ω τ c o s θ ) + j s i n ( ω τ c o s θ ) ] 1 + S N R ^ 1 ( 1 )
分別寫出Γ ^ y 1 y 2 ( ω ) \hat{\Gamma }_{y_{1}y_{2}}(\omega) Γ ^ y 1 y 2 ( ω ) 的實部和虛部如下:
ℜ = S N ^ R 1 + S N ^ R cos ω ˙ + 1 1 + S N ^ R cos α (2)
\Re=\frac{\mathrm{S} \hat{\mathrm{N}} \mathrm{R}}{1+\mathrm{S} \hat{\mathrm{N}} \mathrm{R}} \cos \dot{\omega}+\frac{1}{1+\mathrm{S} \hat{\mathrm{N}} \mathrm{R}} \cos \alpha\tag{2}
ℜ = 1 + S N ^ R S N ^ R cos ω ˙ + 1 + S N ^ R 1 cos α ( 2 )
ℑ = S N R ^ 1 + S N ^ R sin ω ˙ + 1 1 + S N R ^ sin α (3)
\Im=\frac{\hat{SNR}}{1+\mathrm{S} \hat{\mathrm{N}} \mathrm{R}} \sin \dot{\omega}+\frac{1}{1+\hat{SNR}} \sin \alpha \tag{3}
ℑ = 1 + S N ^ R S N R ^ sin ω ˙ + 1 + S N R ^ 1 sin α ( 3 )
其中ω ˙ = ω τ , α = ω ˙ c o s θ \dot{\omega}=\omega \tau,\alpha=\dot{\omega} cos\theta ω ˙ = ω τ , α = ω ˙ c o s θ
觀察(2)、(3)兩式,兩個方程,兩個未知量,S N R ^ 和 α \hat{SNR}和\alpha S N R ^ 和 α ,因此,根據(2)、(3)兩式解方程可以得到S N R ^ 和 α \hat{SNR}和\alpha S N R ^ 和 α ,其中S N R ^ \hat{SNR} S N R ^ 是我們想要的信息,α \alpha α 是方向信息,因此這種方法其實也可以用在DOA相關方向上。
先寫出S N ^ R \mathrm{S} \hat{\mathrm{N}} \mathrm{R} S N ^ R 關於α \alpha α 的表達式:
S N ^ R = sin α − ℑ ℑ − sin ω ˙ (4)
\mathrm{S} \hat{\mathrm{N}} \mathrm{R}=\frac{\sin \alpha-\Im}{\Im-\sin \dot{\omega}} \tag{4}
S N ^ R = ℑ − sin ω ˙ sin α − ℑ ( 4 )
論文中給出了詳細推導求解過程,這裏就直接寫出結果了
{ A = ℑ − sin ω ˙ B = cos ω ˙ − ℜ C = ℜ sin ω ˙ − ℑ cos ω ˙ (5)
\left\{\begin{array}{l}{A=\Im-\sin \dot{\omega}} \\ {B=\cos \dot{\omega}-\Re} \\ {C=\Re \sin \dot{\omega}-\Im \cos \dot{\omega}}\end{array}\right. \tag{5}
⎩ ⎨ ⎧ A = ℑ − sin ω ˙ B = cos ω ˙ − ℜ C = ℜ sin ω ˙ − ℑ cos ω ˙ ( 5 )
T = 1 − ℜ cos ω ˙ − ℑ sin ω ˙ (6)
T=1-\Re \cos \dot{\omega}-\Im \sin \dot{\omega} \tag{6}
T = 1 − ℜ cos ω ˙ − ℑ sin ω ˙ ( 6 )
sin α = − B ∗ C + A ∗ T A 2 + B 2 (7)
\sin \alpha=\frac{-B*C+A*T}{A^2+B^2} \tag{7}
sin α = A 2 + B 2 − B ∗ C + A ∗ T ( 7 )
式(5)、(6)都是已知量,然後計算(7),最後代入到(4)中就得到了S N ^ R \mathrm{S} \hat{\mathrm{N}} \mathrm{R} S N ^ R
最後,就可以寫出增益函數如下了,這裏用的是(square-root) Wiener filter
G ( ω , k ) = SNR ( ω , k ) SNR ( ω , k ) + 1 (8)
G(\omega, k)=\sqrt{\frac{\operatorname{SNR}(\omega, k)}{\operatorname{SNR}(\omega, k)+1}} \tag{8}
G ( ω , k ) = S N R ( ω , k ) + 1 S N R ( ω , k ) ( 8 )
3. Experiment
還是上篇一樣的音頻,對比下處理前後結果
干擾抑制效果明顯,且沒有了上一篇中聲音變小的現象
References: