專利名稱:一種回波消除的方法和裝置的制作方法
技術領域:
本發明涉及信號處理技術領域,特別涉及一種回波消除的方法和裝置。
背景技術:
回波是語音信號在傳輸時,由于阻抗不匹配產生的,例如2/4線轉換混合線圈不平衡會造成電流泄漏,從而造成一部分信號能量被反射回信號源進而產生回波。如果語音信號經過多次阻抗不匹配的2/4線轉換混合線圈,則會產生多級回波。在VOIP中由于存在IP網絡存儲轉發延遲、編碼延遲和解碼延遲,通常回波延遲較大,當回波延遲大干IOOms 時,用戶會明顯感覺到回波,導致通話質量下降。如圖1所示,當A端和B端通話時,A的語音信號在傳輸至B端的過程中,由于2/4 線轉換混合線圈不匹配會導致部分語音信號能量被反射會A端,這樣A端用戶就聽到了自己語音的回波信號。由于語音信號中間要經過IP轉發、編碼和解碼才能到達B端,而產生的回波信號同樣需要經過IP轉發、編碼和解碼才能到達A端,這個過程往往延遲很大,造成 A端感覺到明顯的回波。如果如圖1中所示,語音網關2和PBX之間的混合線圈阻抗不匹配,則會產生一級回波信號,如果PBX和B端電話之間的混合線圈阻抗不匹配,則又會產生一級回波信號,在此將產生兩級以上回波信號的情況統稱為產生多級回波。圖2為多級回波信號的關系示意圖,如圖2所示,a點的語音激勵信號依次在b點、
c點.....ζ點產生多級回波信號,具體級數由通信鏈路的拓撲結構決定。語音信號與回波
信號之間的時間間隔Delayl、Delay2.....DelayN由通信鏈路的具體傳輸特性決定。在b
點、c點、ζ點產生的多級回波信號再經過時間間隔Delayl, Delay2.....DelayN傳輸回語
音信號輸入端,并在A點產生共同作用結果,如圖3所示。由上述分析可知,特定時間點的回波信號是由與之間隔特定時間段的一些較小區域時間段的語音信號共同作用的結果。現有技術中進行的回波消除方法是在一個較長的時間窗口內對遠端的語音信號進行采集,該時間窗口的長度保證能夠覆蓋遠端語音信號的各級回波,利用采集到的遠端的語音信號確定并更新自適應濾波器的濾波系數,通常將濾波系數的確定和更新過程稱為濾波系數的訓練過程,之后采用更新濾波系數后的自適應濾波器對近端的輸入信號進行濾波處理,從而消除回波。然而,由于單一長窗口在多級回波尤其是回波延遲比較大或者各級回波之間延遲比較大時,窗口長度必須很長,采樣點數量比較多,加大了計算量,許多無關數值也參加了濾波系數的訓練過程,收斂速度很慢。
發明內容
本發明提供了一種回波消除的方法和裝置,以便于在消除多級回波時,減少計算量且提高收斂速度。一種回波消除的方法,為自適應濾波器設置N個時間窗口,各時間窗口的長度1足以覆蓋一級回波信號,該方法包括
A、在濾波系數訓練過程啟動后,初始記錄已確定的時間窗口為空;B、對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行本輪篩選,根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定本輪被篩選的時間窗口中對回波影響最大的時間窗口,計算當前已確定的時間窗口對應的自適應濾波器的濾波系數;C、判斷是否滿足在當前已確定的時間窗口產生的殘差信號小于預設的殘差信號或者當前已確定的時間窗口總數目滿足回波消除級數要求,如果是,執行步驟D ;否則轉至執行步驟B進行下一輪篩選;D、結束對時間窗口的篩選過程,自適應濾波器利用最后一輪確定的濾波系數在各確定的時間窗口內進行自適應回波消除處理。一種回波消除的裝置,為自適應濾波器設置N個時間窗口,各時間窗口的長度1足以覆蓋一級回波信號,該裝置包括訓練啟動單元,用于在濾波系數訓練過程啟動后,初始記錄已確定的時間窗口為空,并通知窗口篩選單元開始對時間窗口的篩選過程;窗口篩選單元,用于對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行篩選,根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定本輪被篩選的時間窗口中對回波影響最大的時間窗口 ;接收到結束通知后,結束對時間窗口的篩選過程,使所述自適應濾波器利用最后一輪確定的濾波系數在各確定的時間窗口內進行自適應回波消除處理;系數更新單元,用于在所述窗口篩選單元確定出對本輪回波影響最大的時間窗口時,計算當前已確定的時間窗口對應的自適應濾波器的濾波系數;條件判斷單元,用于在窗口篩選單元確定出對回波影響最大的時間窗口時,判斷是否滿足在當前已確定的時間窗口產生的殘差信號小于預設的殘差信號或者當前已確定的時間窗口總數目滿足回波消除級數要求,如果是,向所述窗口篩選單元發送結束通知,否則,通知所述窗口篩選單元開始對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行下一輪篩選。由以上技術方案可以看出,本發明提供了采用多個短時間窗口替代一個長時間窗口進行濾波系數的訓練,以找出滿足回波消除要求的濾波系數的實現方式,由于每個短時間窗口中采樣點的數量大大下降,計算量也隨之大大下降。與此同時,由于每個短時間窗口去除了大量無關的語音信號,降低了濾波系數的訓練干擾,使收斂速度得到了提高。
圖1為VOIP網絡中回波產生的原理示意圖;圖2為多級回波信號的關系示意圖;圖3為圖2所示多級回波的共同作用結果示意圖;圖4為回波消除原理示意圖;圖5為本發明提供的主要方法流程圖;圖6為圖5中步驟502的具體實現流程圖;圖7為本發明提供的裝置結構示意圖8為現有技術和本發明的對比示意圖。
具體實施例方式為了使本發明的目的、技術方案和優點更加清楚,下面結合附圖和具體實施例對本發明進行詳細描述。為了方便對本發明的理解,首先對現有技術中采用的濾波器算法和原理進行簡單介紹。回波消除的原理是利用遠端信號估計出遠端信號產生的回波,在近端采用自適應濾波器將近端信號濾出估計的回波,從而達到回波消除的目的,其中,自適應濾波器能夠根據遠端信號的特征自動調整其濾波系數。圖4為回波消除原理示意圖,如圖4所示,在當前時刻n,遠端輸入信號為χ (η),遠端輸入信號產生的回聲信號為r (η),估計的回聲信號為 Κ ),近端的語音信號為y (η),也就是說,近端輸入信號為y (n)+r (η)。經過自適應濾波器濾波后產生的殘差信號e( ) = y(n) + r(n) — ;( )其中,自適應濾波器算法產生的自適應濾波器的濾波系數W= [W1, W2,…wM]
τ,遠端輸入信號為X (n) = [X1 (η), X2 (η), ... (η) ]τ,那么,;⑷+ D =,
e(n) = r( ) - ;( ) = r( ) - W' X(n),其中M為自適應濾波器的階數。目前常用的自適應濾波器算法為歸一化最小均方差(NLMS)算法,其濾波系數遞推公式為
權利要求
1.一種回波消除的方法,其特征在于,為自適應濾波器設置N個時間窗口,各時間窗口的長度1足以覆蓋一級回波信號,該方法包括A、在濾波系數訓練過程啟動后,初始記錄已確定的時間窗口為空;B、對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行本輪篩選,根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定本輪被篩選的時間窗口中對回波影響最大的時間窗口,計算當前已確定的時間窗口對應的自適應濾波器的濾波系數;C、判斷是否滿足在當前已確定的時間窗口產生的殘差信號小于預設的殘差信號或者當前已確定的時間窗口總數目滿足回波消除級數要求,如果是,執行步驟D ;否則轉至執行步驟B進行下一輪篩選;D、結束對時間窗口的篩選過程,自適應濾波器利用最后一輪確定的濾波系數在各確定的時間窗口內進行自適應回波消除處理。
2.根據權利要求1所述的方法,其特征在于,當遠端和近端建立語音通話后,遠端有語音信號輸入而近端沒有語音信號輸入時,所述濾波系數訓練過程啟動;當遠端沒有語音信號輸入而近端有語音信號輸入時,則既不進行所述濾波系數訓練過程也不對近端輸入信號進行回波消除處理;當遠端和近端都有語音信號輸入時,僅對近端輸入信號進行回波消除處理而不進行濾波參數訓練過程;其中,所述近端輸入信號包括遠端輸入的語音信號產生的回波信號以及近端輸入的語音信號。
3.根據權利要求1所述的方法,其特征在于,所述確定被篩選的時間窗口中對回波影響最大的時間窗口為在遠端有語音信號輸入而近端沒有語音信號輸入時,根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定產生殘差信號最小的時間窗口為本輪被篩選的時間窗口中對回波影響最大的時間窗口。
4.根據權利要求1、2或3所述的方法,其特征在于,所述步驟B具體包括 Bi、從第一個時間窗口開始篩選;B2、判斷當前被篩選的時間窗口是否與所有已確定的時間窗口存在重疊,如果是,執行步驟B3;否則,執行步驟B4;B3、開始下一時間窗口的篩選,轉至步驟B2 ;B4、判斷自適應濾波器在所有已確定的時間窗口基礎上對當前被篩選的時間窗口進行的濾波處理結果是否優于記錄的時間窗口的濾波處理結果,如果是,執行步驟B5 ;否則執行步驟B6 ;B5、利用當前被篩選的時間窗口的濾波處理結果更新記錄的時間窗口的濾波處理結果;B6、判斷是否已經篩選完所有時間窗口,如果否,執行步驟B7 ;如果是,執行步驟B8 ; B7、開始下一個時間窗口的篩選,轉至執行步驟B2 ;B8、將當前記錄的時間窗口確定為本輪被篩選的時間窗口中對回波影響最大的時間窗口,計算當前已確定的時間窗口對應的自適應濾波器的慮波系數。
5.根據權利要求4所述的方法,其特征在于,在步驟B2的判斷結果為否,且在執行步驟B4之前,還包括B9、根據自適應濾波器在所有已確定的時間窗口基礎上對當前被篩選的時間窗口進行的濾波處理結果,判斷在所有已確定的時間窗口基礎上當前被篩選的時間窗口產生的殘差信號是否小于預設的目標殘差,如果是,則執行步驟BlO ;否則,繼續執行步驟B4 ;B10、直接確定當前被篩選的時間窗口為本輪確定的時間窗口,計算當前已確定的時間窗口對應的濾波系數,直接轉至步驟D。
6.根據權利要求1、2或3所述的方法,其特征在于,相鄰兩個時間窗口的起始位置至多間隔一級回波信號的長度。
7.根據權利要求1、2或3所述的方法,其特征在于,步驟D中利用最后一輪確定的濾波系數在各確定的時間窗口內進行回波消除處理具體包括利用已確定的各時間窗口內的遠端信號與最后一輪確定的濾波系數中各已確定的各時間窗口對應的部分分別進行加權處理后,形成回波估計信號;將近端輸入信號過濾掉對應采樣點的回波估計信號。
8.一種回波消除的裝置,其特征在于,為自適應濾波器設置N個時間窗口,各時間窗口的長度1足以覆蓋一級回波信號,該裝置包括訓練啟動單元,用于在濾波系數訓練過程啟動后,初始記錄已確定的時間窗口為空,并通知窗口篩選單元開始對時間窗口的篩選過程;窗口篩選單元,用于對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行篩選,根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定本輪被篩選的時間窗口中對回波影響最大的時間窗口 ;接收到結束通知后,結束對時間窗口的篩選過程,使所述自適應濾波器利用最后一輪確定的濾波系數在各確定的時間窗口內進行自適應回波消除處理;系數更新單元,用于在所述窗口篩選單元確定出本輪對回波影響最大的時間窗口時, 計算當前已確定的時間窗口對應的自適應濾波器的濾波系數;條件判斷單元,用于在窗口篩選單元確定出對回波影響最大的時間窗口時,判斷是否滿足在當前已確定的時間窗口產生的殘差信號小于預設的殘差信號或者當前已確定的時間窗口總數目滿足回波消除級數要求,如果是,向所述窗口篩選單元發送結束通知,否則, 通知所述窗口篩選單元開始對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行下一輪篩選。
9.根據權利要求8所述的裝置,其特征在于,該裝置還包括語音檢測單元,用于在遠端和近端建立語音通話后,如果檢測到遠端有語音信號輸入而近端沒有語音信號輸入,則觸發所述訓練啟動單元啟動濾波系數訓練過程;如果檢測到遠端沒有語音信號輸入而近端有語音信號輸入,則禁止所述訓練啟動單元啟動濾波系數訓練過程,并禁止所述自適應濾波器對近端輸入信號進行回波消除處理;如果檢測到遠端和近端都有語音信號輸入,則禁止所述訓練啟動單元啟動濾波系數訓練過程,觸發所述自適應濾波器對近端輸入信號進行回波消除處理;其中,所述近端輸入信號包括遠端輸入的語音信號產生的回波信號以及近端輸入的語音信號。
10.根據權利要求8所述的裝置,其特征在于,在遠端有語音信號輸入而近端沒有語音信號輸入時,所述窗口篩選單元根據自適應濾波器在所有已確定的時間窗口基礎上對各被篩選的時間窗口進行的濾波處理結果,確定產生殘差信號最小的時間窗口為本輪被篩選的時間窗口中對回波影響最大的時間窗口。
11.根據權利要求8、9或10所述的裝置,其特征在于,所述窗口篩選單元具體包括 窗口篩選子單元,用于從第一個時間窗口開始篩選;接收到移位通知后,開始下一個時間窗口的篩選;第一判斷子單元,用于判斷當前被篩選的時間窗口是否與第一記錄子單元記錄的時間窗口存在重疊,如果是,向所述窗口篩選子單元發送移位通知;否則,向第二判斷子單元發送第一判斷通知;第二判斷子單元,用于接收到所述第一判斷通知后,判斷自適應濾波器在所有已確定的時間窗口基礎上對當前被篩選的時間窗口進行的濾波處理結果是否優于第二記錄子單元記錄的濾波處理結果,如果是,將當前被篩選的時間窗口的濾波處理結果和當前被篩選的時間窗口發送給所述第二記錄子單元,并向第三判斷子單元發送第二判斷通知;第三判斷子單元,用于接收到所述第二判斷通知后,判斷所述窗口篩選子單元是否已經篩選完所有時間窗口,如果否,向所述窗口篩選子單元發送移位通知;如果是,將當前第二記錄子單元記錄的時間窗口確定為本輪被篩選的時間窗口中對回波影響最大的時間窗 Π ;第一記錄子單元,用于記錄第三判斷子單元確定的時間窗口 ;第二記錄子單元,用于利用接收到的濾波處理結果更新當前記錄的濾波處理結果。
12.根據權利要求11所述的裝置,其特征在于,所述窗口篩選單元還包括位于所述第一判斷子單元和所述第二判斷子單元之間的第四判斷子單元,用于接收所述第一判斷子單元發送的第一判斷通知,根據自適應濾波器在所有已確定的時間窗口基礎上對當前被篩選的時間窗口進行的濾波處理結果,判斷在所有已確定的時間窗口基礎上當前被篩選的時間窗口產生的殘差信號是否小于預設的目標殘差,如果是,向所述系數更新單元發送更新通知,并向所述窗口篩選單元發送結束通知;否則,將所述第一判斷通知發送給所述第二判斷子單元;所述系數更新單元,用于接收到所述更新通知后,直接確定當前被篩選的時間窗口為本輪確定的時間窗口,計算當前已確定的時間窗口對應的濾波系數,向所述窗口篩選單元發送結束通知。
13.根據權利要求8、9或10所述的裝置,其特征在于,自適應濾波器利用已確定的各時間窗口內的遠端信號與最后一輪確定的濾波系數中各已確定的各時間窗口對應的部分分別進行加權處理后,形成回波估計信號;將近端輸入信號過濾掉對應采樣點的回波估計信號。
全文摘要
本發明提供了一種回波消除的方法和裝置,為自適應濾波器設置N個時間窗口,各時間窗口的長度l足以覆蓋一級回波信號;對所述N個時間窗口中除了所有已確定的時間窗口之外的各時間窗口進行本輪篩選,確定本輪被篩選的時間窗口中對回波影響最大的時間窗口,計算當前已確定的時間窗口對應的自適應濾波器的濾波系數;判斷是否滿足在當前已確定的時間窗口產生的殘差信號小于預設的殘差信號或者當前已確定的時間窗口總數目滿足回波消除級數要求,如果是,結束對時間窗口的篩選過程,利用最后一輪確定的濾波系數在各確定的時間窗口內進行自適應回波消除處理,否則對時間窗口進行下一輪篩選。本發明能夠在消除多級回波時,減少計算量且提高收斂速度。
文檔編號H04M9/08GK102447795SQ20101050521
公開日2012年5月9日 申請日期2010年10月9日 優先權日2010年10月9日
發明者李韜, 洪慶春 申請人:杭州華三通信技術有限公司