聯系人:徐經理
手機:13609715026(技術咨詢)
電話:020-39985615
Email:184049149@qq.com
Q Q :2397159370
網址:www.bjm520.com
地址: 廣州市番禺區洛浦街沿沙路51號東鄉聯發工業區A3棟2層202廣州亮鑫電子科技有限公司
回聲消除是語音信號處理領域常見的處理方法,基于自適應預測的回聲消除是基礎之一。然而,在許多博客中,一些細節沒有解釋清楚,這讓讀者感到困惑。這里有一個詳細的總結?;芈暦譃榫€路回聲和聲學回聲。本文重點關注聲學回聲。
產生和消除回聲的機制:回聲是由揚聲器和麥克風之間的聲波反射和聲學耦合引起的,在電話會議系統中,近端麥克風接收了揚聲器的輸出信號,這些信號是由房間內的墻壁、地板等物體定向反射后產生的遠端語音信號,導致回聲被送回遠端。因為回聲的存在干擾了正常的通信,所以人們希望通過消除回聲來更好地進行通信。一般的回聲消除算法包括以下步驟:
一、估計房間回聲路徑的特點
二、復制人工生成回聲信號
三、接著從麥克風信號中減去回聲
通過上述三個步驟,可以達到消除回聲的目的?;谧赃m應濾波的回聲消除,在這一點上,對應于上一節的一般回聲消除算法,采用自適應預測的回聲消除步驟如下:
一、估計回聲路徑特性,我們訓練自適應濾波器,使濾波器的聲學特性接近近端房間的聲學特性
二、通過我們訓練的自適應濾波器,產生回聲。
三、減去我們從麥克風信號中產生的回聲。
這里需要注意的是,我們訓練自適應濾波器來獲得房間的聲學特性,許多博客介紹自適應濾波器的目的是直接輸出純語音。我們單獨提取自適應濾波部分,研究如下圖所示。這是一個FIR維納濾波器,旨在最大限度地減少輸出信號和預期信號之間的誤差。如果用LMS來衡量這個誤差,那就是基于LMS的自適應濾波器。假定濾波器的權重為w,階數為p,期望信號為d。那濾波輸出就是輸入信號x(n)以及濾波器權重w的卷積:
那LMS誤差如下:
我們的目的是最大限度地減少這個誤差,所以我們需要更新濾波器的權重。自適應濾波器的訓練采用梯度下降法,這是神經網絡的梯度下降。推送過程不會展開,權重更新公式直接給出如下:
其中μ對于迭代步長,相當于神經網絡中的學習速度。上述是基于LMS的自適應濾波器訓練過程。
事實上,完整的回聲消除過程,包括雙向通話檢測、自適應濾波和非線性處理。雙向通話檢測是為了保證回聲消除的正常工作。畢竟,如果你繼續在沒有通話的情況下消除回聲,你肯定會犯錯誤。非線性處理是在沒有近端語音信號的情況下完全或部分消除殘留信號。具體來說,NLP單元慢慢消除回聲,增加舒適的噪音,讓語音聽起來不那么突兀。
實現回聲消除算法:AEC在真實工程中比較復雜(可以參考開源AEC算法,如WebRTC/Speex等)