解密回聲消除技術之一(理論篇)_第1頁
解密回聲消除技術之一(理論篇)_第2頁
解密回聲消除技術之一(理論篇)_第3頁
解密回聲消除技術之一(理論篇)_第4頁
解密回聲消除技術之一(理論篇)_第5頁
已閱讀5頁,還剩7頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、一、前言因為工作的關系,筆者從2004年開始接觸回聲消除(Echo Cancellation)技術,而后一直在某大型通訊企業從事與回聲消除技術相關的工作,對回聲消除這個看似神秘、高端和難以理解的技術領域可謂知之甚詳。要了解回聲消除技術的來龍去脈,不得不提及作為現代通訊技術的理論基礎數字信號處理理論。首先,數字信號處理理論里面有一門重要的分支,叫做自適應信號處理。而在經典的教材里面,回聲消除問題從來都是作為一個經典的自適應信號處理案例來討論的。既然回聲消除在教科書上都作為一種經典的具體的應用,也就是說在理論角度是沒有什么神秘和新鮮的,那么回聲消除的難度在哪里?為什么提供回聲消除技術(不管是芯片還

2、是算法)的公司都是來自國外?回聲消除技術的神秘性在哪里? 二、回聲消除原理從通訊回音產生的原因看,可以分為聲學回音(Acoustic Echo)和線路回音(Line Echo),相應的回聲消除技術就叫聲學回聲消除(Acoustic Echo Cancellation,AEC)和線路回聲消除(Line Echo Cancellation, LEC)。聲學回音是由于在免提或者會議應用中,揚聲器的聲音多次反饋到麥克風引起的(比較好理解);線路回音是由于物理電子線路的二四線匹配耦合引起的(比較難理解)?;匾舻漠a生主要有兩種原因:1  由于空間聲學反射產生的聲學回音(見下圖

3、):圖中的男子說話,語音信號(speech1)傳到女士所在的房間,由于空間的反射,形成回音speech1(Echo)重新從麥克風輸入,同時疊加了女士的語音信號(speech2)。此時男子將會聽到女士的聲音疊加了自己的聲音,影響了正常的通話質量。此時在女士所在房間應用回音抵消模塊,可以抵消掉男子的回音,讓男子只聽到女士的聲音。2  由于2-4線轉換引入的線路回音(見下圖): 在ADSL Modem和交換機上都存在2-4線轉換的電路,由于電路存在不匹配的問題,會有一部分的信號被反饋回來,形成了回音。如果在交換機側不加回音抵消功能,打電話的人就會自己聽到自己的聲音。不管

4、產生的原因如何,對語音通訊終端或者語音中繼交換機需要做的事情都一樣:在發送時,把不需要的回音從語音流中間去掉。試想一下,對一個至少混合了兩個聲音的語音流,要把它們分開,然后去掉其中一個,難度何其之大。就像一瓶藍墨水和一瓶紅墨水倒在一起,然后需要把紅墨水提取出來,這恐怕不可能了。所以回聲消除被認為是神秘和難以理解的技術也就不奇怪了。誠然,如果僅僅單獨拿來一段混合了回音的語音信號,要去掉回音也是不可能的(就算是最先進的盲信號分離技術也做不到)。但是,實際上,除了這個混合信號,我們是可以得到產生回音的原始信號的,雖然不同于回音信號。我們看下面的AEC聲學回聲消除框圖(本圖片轉載)。 Fig

5、ure  Acoustic Echo Cancellation in a voice communication terminal 其中,我們可以得到兩個信號:一個是藍色和紅色混合的信號1,也就是實際需要發送的speech和實際不需要的echo混合而成的語音流;另一個就是虛線的信號2,也就是原始的引起回音的語音。那大家會說,哦,原來回聲消除這么簡單,直接從混合信號1里面把把這個虛線的2減掉不就行了?請注意,拿到的這個虛線信號2和回音echo是有差異的,直接相減會使語音面目全非。我們把混合信號1叫做近端信號ne,虛線信號2叫做遠端參考信號fe,如果沒有fe這個信號,

6、回聲消除就是不可能完成的任務,就像“巧婦難為無米之炊”。雖然參考信號fe和echo不完全一樣,存在差異,但是二者是高度相關的,這也是echo稱之為回音的原因。至少,回音的語義和參考信號是一樣的,也還聽得懂,但是如果你說一句,馬上又聽到自己的話回來一句,那是比較難受的。既然fe和echo高度相關,echo又是fe引起的,我們可以把echo表示為fe的數學函數:echo=F(fe)。函數F被稱之為回音路徑。在聲學回聲消除里面,函數F表示聲音在墻壁,天花板等表面多次反射的物理過程;在線路回聲消除里面,函數F表示電子線路的二四線匹配耦合過程。很顯然,我們下面要做的工作就是求解函數F。得到函數F就可以從

7、fe計算得到echo,然后從混合信號1里面減掉echo就實現了回聲消除。 盡管回聲消除是非常復雜的技術,但我們可以簡單的描述這種處理方法:1、房間A的音頻會議系統接收到房間B中的聲音2、聲音被采樣,這一采樣被稱為回聲消除參考3、隨后聲音被送到房間A的音箱和聲學回聲消除器中4、房間B的聲音和房間A的聲音一起被房間A的話筒拾取5、聲音被送到聲學回聲消除器中,與原始的采樣進行比較,移除房間B的聲音 求解回音路徑函數F的過程恐怕就是比較難以表達的數學公式了。鑒于通俗表達數學公式的難度比發現數學公式還難,筆者就不費力解釋了。下面這段表達了利用自適應濾波器原理求解函數F的過程。(以下可

8、以跳過) 自適應濾波器自適應濾波器是以輸入和輸出信號的統計特性的估計為依據,采取特定算法自動地調整濾波器系數,使其達到最佳濾波特性的一種算法或裝置。自適應濾波器可以是連續域的或是離散域的。離散域自適應濾波器由一組抽頭延遲線、可變加權系數和自動調整系數的機構組成。附圖表示一個離散域自適應濾波器用于模擬未知離散系統的信號流圖。自適應濾波器對輸入信號序列x(n)的每一個樣值,按特定的算法,更新、調整加權系數,使輸出信號序列y(n)與期望輸出信號序列d(n)相比較的均方誤差為最小,即輸出信號序列y(n)逼近期望信號序列d(n)。 以最小均方誤差為準則設計的自適應濾波器的系數可以由維

9、納-霍甫夫方程解得。B.維德羅提出的一種方法,能實時求解自適應濾波器系數,其結果接近維納霍甫夫方程近似解。這種算法稱為最小均方算法或簡稱 LMS法。這一算法利用最陡下降法,由均方誤差的梯度估計從現時刻濾波器系數向量迭代計算下一個時刻的系數向量式中ks為一負數,它的取值決定算法的收斂性, V【2(n)】為均方誤差梯度估計,自適應濾波器應用于通信領域的自動均衡、回聲消除、天線陣波束形成,以及其他有關領域信號處理的參數識別、噪聲消除、譜估計等方面。對于不同的應用,只是所加輸入信號和期望信號不同,基本原理則是相同的。(以上部分可以跳過) 上面這段話表明,需要求解的回音路徑

10、函數F就是一個自適應濾波器W(n)收斂的過程。所加輸入信號x(n)是fe,期望信號是echo,自適應濾波器收斂后的W(n)就是回音路徑函數F。 收斂之后,當實際回音發生,我們把fe通過函數W(n),就可以得到一個很準確的echo,把混合信號直接減去echo,得到實際需要發送的語音speech,完成回聲消除任務。值得注意的兩點:1、           自適應濾波器收斂階段,期望信號是完全的echo,不能混雜有speech。因為speech和fe是沒有關系的,會擾亂W(n)的收

11、斂過程。也就是說要求回聲消除算法開始運轉后收斂要非???,最好對方還來不及說話,你一說就收斂好了;收斂好之后,如果對方開始說話,也就是有speech混合過來,這個W(n)系數就不要變化了,需要穩定下來。2、            回音路徑可能是變化的,一旦出現變化,回聲消除算法要能判斷出來,因為自適應濾波器學習要重新開始,也就是W(n)需要一個新的收斂過程,以逼近新的回音路徑函數F。基本上來說,上面這兩點是兩難的,一個需要自適應濾波器收斂后保持系數穩定,以保證不受speech說

12、話干擾,另一個需要自適應濾波器隨時保持更新狀態,以保證能夠追蹤變化的回音路徑。這樣一來,僅從數學算法層面,回聲消除已經是難上加難!簡單地說,回聲消除自適應濾波器的設計具有兩個互相矛盾的特性,也就是快速收斂和高度的穩定性,如何同時實現這兩項特性,正是設計上的主要挑戰。經過上面的分析,相信大家對回聲消除的原理和技術有了深刻的理解,這是一門即容易理解又難以實現的技術。本文出自 “碧海銀沙” 博客,請務必保留此出處 解密回聲消除技術之二(應用篇)2009-06-11 22:58:19標簽:通訊 職場 休閑 語音原創作品,允許轉載,轉載時請務必以超鏈接形式標明文章

13、 原始出處 、作者信息和本聲明。否則將追究法律責任。(接解密回聲消除技術之一(理論篇))從應用平臺來看,根據筆者多年的經驗,可以把回聲消除分為兩大類:基于DSP等實時平臺的回聲消除技術和基于Windows等非實時平臺的回聲消除技術。兩者的技術難度和重點是不一樣的。 三、基于DSP平臺的回聲消除技術回聲消除技術傳統的應用領域是各種嵌入式設備,包括各種電信網絡設備和終端設備。網絡設備比如交換機,網關等等,終端則包括移動電話終端,視頻會議終端等?,F代通訊產品里面大量應用了回聲消除技術,包括在我們看得到的終端產品(比如手機)和看不到的局端產品(比如交換機)。這種嵌入式設備

14、的共同點就是采用各種型號的DSP芯片作為回聲消除的載體。一個有效的回聲消除算法需要持續的在一顆DSP芯片上面運行,會遇到以下方面的難點:實時性與高效性,因為DSP芯片資源有限。雖然自從二十世紀七十年代DSP應用以來,日新月異的硬件芯片技術使許多沉睡在教科書上的信號處理理論算法大規模應用,但是回聲消除算法需要的資源還是大得驚人。以視頻會議系統,大規模的會議室可以產生超過512ms的回音,要消除這么長延時的回音,即使按照8k赫茲采樣率計算,自適應濾波器W(n)的長度都會達到4096個點,這樣一方面需要非常大的存儲空間來存儲W(n),另一方面,W(n)的更新需要的計算量也是成倍增長,同時,W(n)的

15、收斂難度也在加大,傳統自適應濾波器的效率很難保證。對于電信設備中的應用,雖然回聲消除不需要這么長的延時,但是在交換機等設備中,成本和效率就是生命,所有的處理算法都是按路或按線計算的,對算法的優化效率提出了無止境的要求。相對而言,只有像車載免提這種應用對效率要求不那么高,因為車內空間小,回音延時有限,又不要求多路應用。傳統的回聲消除技術是從國外二十世紀七十年代的早期算法發展而來,這類技術的采用一直相當昂貴,提供電信級回聲消除硬件應用(包括芯片或者設備)的廠家都是國外的。對于移動網絡用戶來說,語音品質一直是他們最關切的議題,對電信業者來說,語音也仍是他們最能獲利的服務項目,因此語音的品質是不容妥協

16、的。為了滿足今日與未來的網路需求,回聲消除技術的挑戰正在于如何有效地降低成本并持續改善語音品質。算法級的DSP軟件解決方案,也是解決嵌入式設備回音問題的一種途徑,對用戶也有一定的靈活性,用戶只需要把回聲消除模塊集成到自己的DSP軟件中,再簡單調整幾個相關參數,就能達到較好的回聲消除效果。目前基于DSP的回聲消除算法已經比較成熟,市場上也有一批專門的算法/芯片公司的能夠對外提供已經優化好的基于DSP的軟件回聲消除模塊:如俄羅斯Spririt DSP、加拿大Octastic Semiconductor、瑞典GIPS、國內科萊特斯科技Conatus Technologies以及美國Adaptive

17、Digital、和GAO Research、英國CSR等等,另外還有美國Fortemedia、Acoustic Technologies和日本OKI等可以提供專用的回聲消除DSP芯片。其中性能較好的有Octastic、Conatus、和Spririt這三家,Octastic可以提供完整的從專用芯片、板卡到DSP算法的完整方案,而Conatus和Spririt的回聲消除效果更好,值得一提的是Conatus公司是目前市面上唯一提供針對專業視訊會議應用寬帶回聲消除模塊的公司,其音頻采樣率可以達到48k赫茲。 四、基于Windows平臺的回聲消除技術 回聲消除技術最新的應用領域是基

18、于Windows平臺的各種VoIP應用,比如軟件視頻會議,VoIP軟件電話等。當回聲消除算法應用到Windows平臺,相對于傳統的DSP平臺,既帶來優勢,也帶來了新的難點。高效性在Windows平臺已經不是問題,現在的pc機,擁有豐富的cpu資源和海量的內存資源,再復雜的回聲消除算法都可以運行自如。但是,新增加的麻煩比帶來的好處要多。首先,Windows平臺是一個非實時的平臺,音頻的采集和播放對回聲消除算法而言,也是非實時的。和DSP平臺不一樣,DSP平臺可以直接控制AD/DA芯片的采集播放,獲得實時的音頻流(不存在同步問題),但是Windows平臺下,應用程序很難在底層直接控制聲卡的采集播放

19、,獲得的是非實時的音頻流,從而帶來了采集和播放音頻流的同步問題。實際應用時,傳給回聲消除算法的兩個聲音信號(采集的回音信號ne和播放的參考信號fe),必須同步得非常的好。就是說,本地接收到遠端說的話以后,要把這些話音數據傳給回聲消除算法做參考,這是一個算法需要的輸入信號;然后再傳給聲卡,聲卡放出來后經過回音路徑,這時,本地再采集,然后傳給回聲消除算法,這是算法需要的另一個輸入信號。這里的同步是指:兩個信號雖然存在延時,但這個延時必須固定,在時序上要保持連貫,不能一個信號多來幾個幀,另外一個信號少來幾個幀。如果傳給回聲消除算法的兩個信號同步得不好,即兩個信號發生幀錯位,就沒有辦法進行消除了。因為

20、這時系統會變成了非因果系統,比如期望信號收到了,參考信號還沒來,時間上都沒有因果關系,肯定是沒有辦法消除的。實際情況是,在一般的VoIP軟件中,接收對方的聲音并傳到聲卡中播放是在一個線程中進行的,而采集本地的聲音并傳送到對方又是在另一個線程中進行的,而聲學回聲消除算法在對采集到的聲音進行回聲消除的同時,還需要播放線程中的數據作為參考,而要同步這兩個線程中的數據是非常重要的,因為稍稍有些不同步,聲學回聲消除算法中的自適應濾波器就會發散,不但消除不了回音,還會破壞原始采集到的聲音,使聲音難以分辨。另外,pc機器的聲卡種類繁多,各種各樣的聲卡特性進一步加劇了同步問題的復雜性。所以,同步和聲卡等問題對

21、回聲消除算法的內部特性提出了更多苛刻的要求。從上面分析來看,由于Windows平臺的非實時性,基于Windows平臺的回聲消除技術比DSP平臺要難得多。在PC平臺語音通訊領域,目前公認音質做得比較好的國外軟件是Skype,記得幾年前Skype一直是在用瑞典一家叫GIPS(Global IP Sound)公司的語音引擎技術。GIPS是最早介入PC平臺語音通訊領域的廠商之一,在改領域具有一定的權威性,其主要優勢表現在對IP網絡的延時、抖動和丟包等處理較好,基于Windows平臺的回音消除也做得不錯,不過最近的新版本Skype上已經看不到GIPS的標志了,據說是因為Skype自己研發了一套新的更好的

22、語音引擎的緣故。 目前大家接觸最多的采用了GIPS語音引擎技術的通訊軟件就是騰訊QQ了,其超級語音的效果普遍評價都還不錯。另外微軟經過多年的研發,其最新版本的MSN語音特別是回音消除效果終于有了質的提升,目前網上評價也還不錯。另外還有一些專業廠商也對外提供包含回音消除功能的語音引擎,如俄羅斯的Spirit DSP、美國的GH Innovation和國內的科萊特斯科技(Conatus Technologies)以及賽聲科技(Soft  Acoustic)等等。除此之外,網絡上還可以下載到一個很好的開源的語音軟件Speex也提供了回音消除功能。為了進一步了解目前PC

23、Windows平臺回音消除技術的業界水平,筆者對各家的回音消除技術做一個詳細的橫向對比測試(所有測試都是免提狀態)為了對比,各家語音引擎的版本信息列舉如下: 國外廠商:Skype V3.8.4.182Spirit DSP(廠家DEMO)GIPS(QQ 2009beta)Micorsoft (Windows Live Messenger 2009  V14.0.8064.2006)GH Innovation(廠家DEMO) 國內廠商:Conatus Technologies(廠家DEMO)Soft Acoustic(廠家DEMO)開源算

24、法:Speex(V1.2RC1 自己寫了測試軟件) 測試結果:測試項目 SkypeMSNQQConatusSpiritSpeexSoftAcousticGH I筆記本免提模式,外接麥克風和音箱應用模式的適應性兩種模式都無回音筆記本免提模式有時一直有較小回音筆記本免提模式偶爾有較小回音兩種模式都無回音筆記本免提模式有時一直有較小回音兩種模式都有一直較小回音兩種模式有時都會出現較大回音筆記本免提模式一直有很小回音 單方講話效果無回音,效果很好基本無回音,效果好基本無回音,效果好無回音,效果很好基本無回音,效果好一直有較小回音,效果差有時有很大回音,效果差基本

25、無回音,效果好 雙方同時講話效果雙方交流流暢無回音,對方聲音偶爾有輕微斷續雙方交流流暢,但對方聲音中會夾雜著輕微回音雙方交流流暢,但對方聲音中會夾雜著一些回音雙方交流流暢無回音,對方聲音偶爾有輕微斷續雙方交流流暢,但對方聲音中間會夾雜著一些回音雙方交流比較流暢,但一直聽到一個較小的回音雙方交流不流暢,對方聲音經常會斷續雙方交流無回音,但對方聲音很小很難聽清楚 麥克風和揚聲器相對的位置改變等收斂比較快,基本沒有回音出現。收斂比較快,基本沒有回音出現。收斂比較快,基本沒有回音出現。收斂比較快,基本沒有回音出現。收斂比較快,基本沒有回音出現。收斂速度慢,有好幾句回音收斂速度慢,有好幾句回音收斂比較快,基本沒有回音出現。 CPU重載(CPU負載達到100%)時效果XP和Vista下聲音都流暢,基本不會出現回音和聲音斷續現象XP和Vista下聲音都流暢,基本不會出現回音和聲音斷續現象XP下聲音流暢,基本不會出現回音;Vista下聲音斷續,偶爾會出現回音XP和Vista下聲音都流暢,基本不會出現回音和聲音斷續現象XP下聲音流暢,基本不會出現回音;Vista下聲音斷續,偶爾會出現回音此項未測XP下聲音流暢,基本不會出現回音;Vista下聲音斷續,偶爾會出現回音

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論