專利名稱:基于最優(yōu)參數(shù)預(yù)測的聲回聲抵消處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種通訊系統(tǒng)中聲回聲處理方法,特別是一種有效的基于最優(yōu)參數(shù)預(yù)測的聲回聲抵消處理方法。
背景技術(shù):
近年來,隨著通訊技術(shù)的不斷發(fā)展,以及人們對于快速便捷的交流方式需求的不斷增加,視頻會議系統(tǒng)以及VoIP技術(shù)得到了越來越廣泛的應(yīng)用。這一類通訊系統(tǒng)有一個很顯著的問題就是聲回聲的存在,即遠端說話人的聲音會通過近端揚聲器系統(tǒng)和麥克風(fēng)之間的耦合回送到遠端,嚴(yán)重地影響了通訊雙方的通話質(zhì)量。
為解決這一問題,有效地抑制聲回聲,已有大量文獻進行了討論,大多數(shù)的處理方法都是基于經(jīng)典的NLMS算法結(jié)構(gòu),結(jié)合一個狀態(tài)機對通訊狀態(tài)進行判斷,當(dāng)判定系統(tǒng)處于雙端說話狀態(tài)以及空閑狀態(tài)時,停止濾波器的收斂;判斷系統(tǒng)是單端說話時,濾波器正常收斂;判斷是回聲路徑跳變時,調(diào)整濾波器迭代參數(shù)使濾波器重新收斂。這樣的處理方法有一個很大的問題是系統(tǒng)的性能過于依賴狀態(tài)機的運行流程,一旦出現(xiàn)誤判,特別是把雙端說話誤判為回聲路徑跳變時,會引起系統(tǒng)的不穩(wěn)定,甚至導(dǎo)致嘯叫的出現(xiàn)。
發(fā)明內(nèi)容
1、發(fā)明目的本發(fā)明是提供一種系統(tǒng)穩(wěn)定、能有效抑制聲回聲的基于最優(yōu)參數(shù)預(yù)測的聲回聲抵消處理方法。
2、技術(shù)方案本發(fā)明所述的聲回聲抵消處理方法包括以下步驟(1)系統(tǒng)初始化,得到參考信號和原始回聲。包括給定一系列關(guān)于濾波器的參數(shù),包括濾波器階數(shù)、濾波器初值、相關(guān)性參量初值、迭代參數(shù)初值等等,由于本發(fā)明對各個參數(shù)都會根據(jù)實際情況進行調(diào)整,所以初始參量的設(shè)置對系統(tǒng)性能的影響不是特別明顯,這也是本發(fā)明的優(yōu)點之一。
(2)在獲取參考信號和原始回聲后,利用自適應(yīng)濾波器估計回聲信號,并用原始回聲與之相減獲得殘留回聲信號,注意這里的殘留回聲既包括未濾除的回聲信號,也包括近端背景噪聲以及可能的近端說話聲。
(3)用真實殘留回聲和實際語音輸出的估計值對濾波器迭代參數(shù)進行優(yōu)化,并判斷當(dāng)前這一時刻的最優(yōu)值較前一時刻是否下降,如果下降,記為條件一。
(4)如果條件一滿足,則用相關(guān)性計算公式估計殘留回聲信號和回聲估計信號的相關(guān)值,并判斷當(dāng)前這一時刻的相關(guān)值是否較前一時刻上升,如果上升,記為條件二。
(5)如果條件一和條件二同時滿足,則進一步判斷當(dāng)前時刻的相關(guān)值是否足夠大,如果足夠大,則對部分濾波器參數(shù)重新賦值,賦值的大小正比于回聲路徑增益。
(6)依據(jù)上面的推斷得到的一系列跟濾波器有關(guān)的參量進行濾波器系數(shù)的更新,并進入下一個循環(huán)周期。
本發(fā)明提供了一種新的聲回聲抵消處理方法,該方法不再把自適應(yīng)濾波模塊和狀態(tài)及模塊明確區(qū)分開來,而是利用一種魯棒性的自適應(yīng)迭代參數(shù)設(shè)置方法,結(jié)合有效的濾波器初值設(shè)定和重置,達到實現(xiàn)穩(wěn)定高效的聲回聲抵消的目的。
一般的NLMS算法的參數(shù)迭代公式如下g(k+1)=g(k)+σ||x(k)||2e(k)x(k)]]>其中x表示參考信號,e表示誤差信號,g表示濾波器系數(shù)。雖然迭代參數(shù)被參考信號的功率進行了規(guī)整,可以避免在參考信號過大時系統(tǒng)發(fā)散,但是迭代公式仍有常數(shù)σ存在。如何保證系統(tǒng)在任何情況下都能確保穩(wěn)定并且快速收斂,這在很大程度上依賴于σ的選擇。一般說來,一個固定的σ肯定不能滿足要求,如何讓σ根據(jù)系統(tǒng)運行狀態(tài)優(yōu)化調(diào)整(這意味著σ變成了時變量σ(k)),有許多相關(guān)的文獻討論這一問題。對于回聲抵消系統(tǒng)來說,比較可靠的方法理論依據(jù)如下σ(k)的優(yōu)化值由公式(2)決定σopt(k)=E[ϵ2(k)]E[e2(k)]---(2)]]>其中,ε(k)表示真實的殘留回聲,而e(k)則表示實際的殘留回聲(包含真實殘留回聲和近端背景噪聲以及可能的近端語音)。公式(2)的分母顯而易見是系統(tǒng)的已知量,但是分子如何準(zhǔn)確估計是個問題。對短時平穩(wěn)激勵信號而言
E[ϵ2(k)]=1N||g(k)-h(k)||2||x(k)||2---(3)]]>其中g(shù)表示自適應(yīng)濾波器系數(shù),h是回聲路徑?jīng)_激響應(yīng)系數(shù),N是濾波器階數(shù)。一個比較合理的工程上的假定是濾波器各個參數(shù)在迭代過程中距離最優(yōu)值的擾動量是統(tǒng)計均勻的。這意味著,如果已知一部分回聲路徑傳遞函數(shù)最優(yōu)值,便可以依據(jù)這部分信息推論所有濾波器系數(shù)的擾動量。實用中的一個方法是在回聲抵消系統(tǒng)中人為給參考信號增加一段延時,那么這段延時所對應(yīng)的回聲路徑?jīng)_激響應(yīng)肯定是零,與之相應(yīng)的自適應(yīng)濾波器參數(shù)本身就是擾動量,公式(3)可由下式近似得到E[ϵ2(k)]=1Np||gp(k)||2x(k)||2---(4)]]>其中g(shù)p(k)表示延時段對應(yīng)的自適應(yīng)濾波器系數(shù),Np則表示延時長度。公式(3)還有一個近似方法如下如果自適應(yīng)濾波器階數(shù)足夠長,則在一般的會議系統(tǒng)中,自適應(yīng)濾波器末端的參數(shù)最優(yōu)值接近于零,因此我們也可由下式逼近公式(3)E[ϵ2(k)]=1Nifc||gifc(k)||2||x(k)||2---(5)]]>其中g(shù)ifc(k)表示濾波器末端的參數(shù)值,Nifc表示相應(yīng)的階數(shù)。
上述方法可以使得濾波器系數(shù)在調(diào)整過程中依據(jù)參數(shù)收斂狀況,近端背景噪聲和近端說話聲合理的調(diào)節(jié)自適應(yīng)參數(shù),在發(fā)生雙端說話時,由于公式(2)中的分母明顯變大,這樣使得濾波器迭代參數(shù)迅速減小,有效地避免了濾波器的發(fā)散。
為追蹤回聲路徑的變化情況,本發(fā)明作如下處理第一,計算誤差信號e和回聲估計信號y之間的相關(guān)性參量Rey;第二,不僅僅使用相關(guān)性閾值,而且要利用相關(guān)性的變化趨勢。因為在回聲路徑變化時,相關(guān)性肯定是上升的,而在雙端說話時,相關(guān)性是下降的,其余的情況下相關(guān)性上升下降呈現(xiàn)無規(guī)特性。這樣,只要判斷濾波器迭代參數(shù)減小和相關(guān)性上升同時發(fā)生,便可認定回聲路徑發(fā)生了變化,為了判斷的精確性,還需要加上相關(guān)性大于某個閾值的條件(這里相關(guān)性閾值只是輔助參量,可選余地大)。一旦確定回聲路徑發(fā)生后,就需要增大迭代參數(shù),增大的方法和初始收斂方法一致,即重新設(shè)定上述特定濾波器參數(shù)的值(延時對應(yīng)的參數(shù)或者濾波器最后若干階參數(shù))。對于濾波器參數(shù)的設(shè)置,可以利用已有的Rey,用參考信號功率對之歸一化便可得到反映回聲路徑增益大小的參數(shù),再通過該參數(shù)設(shè)置濾波器部分參數(shù)。
3、有益效果與現(xiàn)有方法不同,本發(fā)明不再對系統(tǒng)的單端說話、雙端說話、背景噪聲過大、回聲路徑跳變、空閑等狀態(tài)作明確的區(qū)分,而是利用一種魯棒性的自適應(yīng)方法,保證系統(tǒng)在近端噪聲過大以及近端有說話人聲音時運行穩(wěn)定;在回聲路徑跳變時,本發(fā)明同時利用了濾波器迭代步長的變化信息和系統(tǒng)中信號的相關(guān)性信息,能準(zhǔn)確地實現(xiàn)回聲路徑的跟蹤;此外,在設(shè)置自適應(yīng)濾波器的迭代參數(shù)時,利用了回聲路徑的增益估計,確保了系統(tǒng)的穩(wěn)定高效。
四
附圖是本發(fā)明的原理框圖。
五具體實施例方式
下面通過實例對本發(fā)明進行詳細說明如圖所示,系統(tǒng)初始化包括給定一系列關(guān)于濾波器的參數(shù),包括濾波器階數(shù)、濾波器初值、相關(guān)性參量初值、迭代參數(shù)初值等等,由于本發(fā)明的算法結(jié)構(gòu)對各個參數(shù)都會根據(jù)實際情況進行調(diào)整,所以初始參量的設(shè)置對系統(tǒng)性能的影響不是特別明顯,這也是本發(fā)明的優(yōu)點之一。
在獲取參考信號和原始回聲后,利用自適應(yīng)濾波器估計回聲信號,并用原始回聲與之相減獲得殘留回聲信號,注意這里的殘留回聲既包括未濾除的回聲信號,也包括近端背景噪聲以及可能的近端說話聲。
用前述公式(4)、(5)所介紹的方法估計濾波器迭代參數(shù)的最優(yōu)值,并判斷當(dāng)前這一時刻的最優(yōu)值較前一時刻是否下降,如果下降,記為條件一。
用相關(guān)性計算公式估計殘留回聲信號和回聲估計信號的相關(guān)值(實用中可取1024點的相乘求和并歸一化計算得到),并判斷當(dāng)前這一時刻的相關(guān)值是否較前一時刻上升,如果上升,記為條件二。
如果條件一和條件二同時滿足,并且當(dāng)前時刻的相關(guān)值也足夠大,則對部分濾波器參數(shù)重新賦值。條件一、二是否同時滿足的判斷方法有很多種,實用中可選擇設(shè)置標(biāo)志變量統(tǒng)計求和的方式,這樣運算量的增加很有限;另外相關(guān)值是否足夠大的條件只是一個輔助條件,閾值的選擇有很大的空間,實用中可取0.5。
濾波器部分參數(shù)的重新賦值需要用到回聲路徑增益的估計,為了計算上的簡潔,回聲路徑增益可用到前述的相關(guān)性計算中間結(jié)果,即1024點的相乘求和結(jié)果,用參考信號的能量估計對之歸整便可得到反映回聲路徑增益的有效參數(shù)A。實用中濾波器參數(shù)的設(shè)定和A/10成正比例關(guān)系。
最后依據(jù)上面的推斷得到一系列很濾波器有關(guān)的參量進行濾波器系數(shù)的更新,再進入下一個循環(huán)周期。
通過前述的描述可知這種新方法的運算量增加不多,非常適合系統(tǒng)的DSP實現(xiàn)。本發(fā)明在ADSP21161N EZ-LITE板上實現(xiàn)了上述算法結(jié)構(gòu),經(jīng)測試,基于該算法結(jié)構(gòu)的聲回聲抵消系統(tǒng)穩(wěn)定性好,能有效地防止在近端背景噪聲過大以及雙端說話時濾波器發(fā)散,并可以有效地追蹤到回聲路徑的跳變現(xiàn)象。
權(quán)利要求
1.一種基于最優(yōu)參數(shù)預(yù)測的聲回聲抵消處理方法,其特征是該方法包括以下步驟(1)系統(tǒng)初始化,獲取關(guān)于濾波器的參考信號和原始回聲;(2)利用自適應(yīng)濾波器估計回聲信號,并用原始回聲與之相減獲得包括未濾除的回聲信號、近端背景噪聲、以及可能的近端說話聲殘留回聲信號的殘留回聲;(3)用真實殘留回聲和實際語音輸出的估計值對濾波器迭代參數(shù)進行優(yōu)化,并判斷當(dāng)前這一時刻的最優(yōu)值較前一時刻是否下降,如果下降,記為條件一;(4)如果條件一滿足,則用相關(guān)性計算公式估計殘留回聲信號和回聲估計信號的相關(guān)值,并判斷當(dāng)前這一時刻的相關(guān)值是否較前一時刻上升,如果上升,記為條件二;(5)如果條件一和條件二同時滿足,則進一步判斷當(dāng)前時刻的相關(guān)值是否足夠大,如果足夠大,則對部分濾波器參數(shù)重新賦值,賦值的大小正比于回聲路徑增益;(6)依據(jù)上面的推斷得到一系列與濾波器有關(guān)的參量進行濾波器系數(shù)的更新,并進入下一個循環(huán)周期。
全文摘要
本發(fā)明公開了一種基于最優(yōu)參數(shù)預(yù)測的聲回聲抵消處理方法,該方法利用了魯棒性的自適應(yīng)濾波參數(shù)迭代方法,并結(jié)合系統(tǒng)中信號的相關(guān)性參量以及迭代參數(shù)本身的變化趨勢對迭代參數(shù)進行控制,控制方法不同于一般的系統(tǒng),并不是簡單的設(shè)置迭代參量,而是通過合理的重置部分濾波器系數(shù)值,從而達到在保證系統(tǒng)的穩(wěn)定工作前提下,有效地追蹤回聲路徑的跳變。這種方法的運算量適中,完全適用于現(xiàn)在的DSP處理器,具有很大的實用價值。
文檔編號H04M9/08GK1937432SQ20061009656
公開日2007年3月28日 申請日期2006年9月30日 優(yōu)先權(quán)日2006年9月30日
發(fā)明者盧晶, 陳鍇, 邱小軍 申請人:南京大學(xué)