第二章 演算法
2.4 雙耳演算
2.4.1 雙耳演算原理介紹
雙耳助聽器演算法,在 90 年代就已經有人提出這樣的想法,在瀏覽今年相關論文的過 程中,陸續發現依舊有人在深入研究,但跟很多技術一樣,提出想法到實際生活應用跟量 產會有一段時間的落差,就像從布林代數,電晶體到邏輯閘,所以以下會介紹雙耳演算法的 假設,實作上會遭遇的問題,以及此法的所帶來的好處跟優勢。
雙耳演算法最重要的想法,就是雜訊到達左右耳的時間不同,因為左右耳皆有個別的 接收器,而人跟人對話過程,大多距離不會太遠或是講話者通常在正前方,所以接收到的 語音視為同時到達左右耳,以上是雙耳演算模型的基本假設,以下有附圖說明。
圖 2.10 雙耳演算模型
signal 為乾淨語音,N1 與 N2 皆為雜訊,只是到達左右耳的時間不同
當然還有許多其他因素如:語音是否也有時間差,雜訊和語音到達左右耳是否強度一 樣,雜訊源若為兩個以上等問題,現階段暫不考量,先以理想狀況來處理。
由上圖可以看出,雜訊到左右耳的時間不同,所以可以分別寫出下列左右耳接收到語 音的情況
1 ( ) ( )
y =s t +n t
. (2.23)
2 ( ) ( )
y =s t +n t−
τ
. (2.24) 第式為右耳 第式為左耳 s(t)為語音 n(t)為雜訊 τ則為雜訊到達左右耳時間差
有了上述兩式左右耳的數學式,發現若將其相減,將可以得到純雜訊的訊息,有了較 充分的雜訊訊息,對消雜訊而言將會是一項利多
1 2 ( ) ( )
u= − =y y n t −n t−
τ
. (2.25) τ為雜訊到達的時間差
當然將左右耳接收訊號在時域上相減,比較難看出其用處,但經 DFT 運算,可以看到 有獲得較完整雜訊 PSD 的機會,但還需要一些處理,表示式如下
( ) ( )(1 iw )
般演算法這些會是雙耳演算法額外所需的代價。
雙耳演算法所帶來的好處有兩點,第一 提供較完整的雜訊 PSD 訊息,第二 不論在語 音區間或非語音區間,皆可以估計雜訊,這是單耳演算一個相當大的限制,就是只能在非 語音區間估計雜訊,而估計雜訊的精準與否,往往對演算法的效果有絕大的影響。
以下的附圖是說明雙耳演算的過程,direction finding 主要在尋找雜訊到達左右耳的時 間差,compensator 則是類似零消,由時間差來計算出最佳的 H,能夠從 U 來得到雜訊 PSD,
黑色虛框部分則是頻譜相減演算,只是相較以前的單耳演算法,現在擁有更精準的雜訊估 計,可以提升頻譜相減演算的效果。
圖 2.11 雙耳演算流程圖
y1 與 y2 為左右耳接收到的汙染語音,τ為雜訊到達左右耳的時間差,U 為 y1 與 y2 做 DFT 後相減,H1 與 H2 是用來使 U 還原成雜訊 N1 和 N2 的運算子,黑框部分效果則雷 同頻譜相減演算,s1 與 s2 則為處理後語音
優勢 1.提供更完整的雜訊 PSD 資訊 (可以加強頻譜相減演算或其他演算的 效果)
2.估計雜訊不受 VAD 限制 代價 1.計算量變大 且運算時間變久
2.需計算雜訊的時間差 以及 H1 ,H2
3.左右耳需進行資料交換所涉及的相關問題 表 2.7 雙耳演算的優勢與代價