1. 程式人生 > >解密回聲消除技術之一(理論篇)

解密回聲消除技術之一(理論篇)

允許轉載,轉載時請務必以超連結形式標明文章: (原始出處http://silversand.blog.51cto.com/820613/166095)

一、前言 因為工作的關係,筆者從2004年開始接觸回聲消除(Echo Cancellation)技術,而後一直在某大型通訊企業從事與回聲消除技術相關的工作,對回聲消除這個看似神祕、高階和難以理解的技術領域可謂知之甚詳。 要了解回聲消除技術的來龍去脈,不得不提及作為現代通訊技術的理論基礎——數字訊號處理理論。首先,數字訊號處理理論裡面有一門重要的分支,叫做自適應訊號處理。而在經典的教材裡面,回聲消除問題從來都是作為一個經典的自適應訊號處理案例來討論的。既然回聲消除在教科書上都作為一種經典的具體的應用,也就是說在理論角度是沒有什麼神祕和新鮮的,那麼回聲消除的難度在哪裡?為什麼提供回聲消除技術(不管是晶片還是演算法)的公司都是來自國外?回聲消除技術的神祕性在哪裡?
二、回聲消除原理 從通訊迴音產生的原因看,可以分為聲學回音(Acoustic Echo)和線路迴音(Line Echo),相應的回聲消除技術就叫聲學回聲消除(Acoustic Echo CancellationAEC)和線路回聲消除(Line Echo Cancellation, LEC)。聲學回音是由於在擴音或者會議應用中,揚聲器的聲音多次反饋到麥克風引起的(比較好理解);線路迴音是由於物理電子線路的二四線匹配耦合引起的(比較難理解)。 迴音的產生主要有兩種原因: 1.由於空間聲學反射產生的聲學回音(見下圖):

圖中的男子說話,語音訊號(speech1)傳到女士所在的房間,由於空間的反射,形成迴音speech1(Echo)重新從麥克風輸入,同時疊加了女士的語音訊號(speech2)。此時男子將會聽到女士的聲音疊加了自己的聲音,影響了正常的通話質量。此時在女士所在房間應用迴音抵消模組,可以抵消掉男子的迴音,讓男子只聽到女士的聲音。 2.由於2-4線轉換引入的線路迴音(見下圖):

在ADSL Modem和交換機上都存在2-4線轉換的電路,由於電路存在不匹配的問題,會有一部分的訊號被反饋回來,形成了迴音。如果在交換機側不加回音抵消功能,打電話的人就會自己聽到自己的聲音。 不管產生的原因如何,對語音通訊終端或者語音中繼交換機需要做的事情都一樣:在傳送時,把不需要的迴音從語音流中間去掉。 試想一下,對一個至少混合了兩個聲音的語音流,要把它們分開,然後去掉其中一個,難度何其之大。就像一瓶藍墨水和一瓶紅墨水倒在一起,然後需要把紅墨水提取出來,這恐怕不可能了。所以回聲消除被認為是神祕和難以理解的技術也就不奇怪了。誠然,如果僅僅單獨拿來一段混合了迴音的語音訊號,要去掉迴音也是不可能的(就算是最先進的盲訊號分離技術也做不到)。但是,實際上,除了這個混合訊號,我們是可以得到產生迴音的原始訊號的,雖然不同於迴音訊號。
我們看下面的AEC聲學回聲消除框圖(本圖片轉載)。 Figure  Acoustic Echo Cancellation in a voice communication terminal 其中,我們可以得到兩個訊號:一個是藍色和紅色混合的訊號1,也就是實際需要傳送的speech和實際不需要的echo混合而成的語音流;另一個就是虛線的訊號2,也就是原始的引起迴音的語音。那大家會說,哦,原來回聲消除這麼簡單,直接從混合訊號1裡面把把這個虛線的2減掉不就行了?請注意,拿到的這個虛線訊號2和迴音echo是有差異的,直接相減會使語音面目全非。我們把混合訊號1叫做近端訊號ne,虛線訊號2叫做遠端參考訊號fe,如果沒有fe這個訊號,回聲消除就是不可能完成的任務,就像“巧婦難為無米之炊”。 雖然參考訊號feecho不完全一樣,存在差異,但是二者是高度相關的,這也是echo稱之為迴音的原因。至少,迴音的語義和參考訊號是一樣的,也還聽得懂,但是如果你說一句,馬上又聽到自己的話回來一句,那是比較難受的。既然feecho高度相關,echo又是fe引起的,我們可以把echo表示為fe的數學函式:echo=Ffe)。函式F被稱之為迴音路徑。在聲學回聲消除裡面,函式F表示聲音在牆壁,天花板等表面多次反射的物理過程;線上路回聲消除裡面,函式F表示電子線路的二四線匹配耦合過程。很顯然,我們下面要做的工作就是求解函式F。得到函式F就可以從fe計算得到echo,然後從混合訊號1裡面減掉echo就實現了回聲消除。 儘管回聲消除是非常複雜的技術,但我們可以簡單的描述這種處理方法:   1、房間A的音訊會議系統接收到房間B中的聲音   2、聲音被取樣,這一取樣被稱為回聲消除參考   3、隨後聲音被送到房間A的音箱和聲學回聲消除器中   4、房間B的聲音和房間A的聲音一起被房間A的話筒拾取   5、聲音被送到聲學回聲消除器中,與原始的取樣進行比較,移除房間B的聲音 求解迴音路徑函式F的過程恐怕就是比較難以表達的數學公式了。鑑於通俗表達數學公式的難度比發現數學公式還難,筆者就不費力解釋了。下面這段表達了利用自適應濾波器原理求解函式F的過程。(以下可以跳過 自適應濾波器 自適應濾波器是以輸入和輸出訊號的統計特性的估計為依據,採取特定演算法自動地調整濾波器係數,使其達到最佳濾波特性的一種演算法或裝置。自適應濾波器可以是連續域的或是離散域的。離散域自適應濾波器由一組抽頭延遲線、可變加權係數和自動調整係數的機構組成。附圖表示一個離散域自適應濾波器用於模擬未知離散系統的訊號流圖。自適應濾波器對輸入訊號序列x(n)的每一個樣值,按特定的演算法,更新、調整加權係數,使輸出訊號序列y(n)與期望輸出訊號序列d(n)相比較的均方誤差為最小,即輸出訊號序列y(n)逼近期望訊號序列d(n)
以最小均方誤差為準則設計的自適應濾波器的係數可以由維納-霍甫夫方程解得。 B.維德羅提出的一種方法,能實時求解自適應濾波器係數,其結果接近維納-霍甫夫方程近似解。這種演算法稱為最小均方演算法或簡稱 LMS法。這一演算法利用最陡下降法,由均方誤差的梯度估計從現時刻濾波器係數向量迭代計算下一個時刻的係數向量 式中ks為一負數,它的取值決定演算法的收斂性, Vε2(n)】為均方誤差梯度估計, 自適應濾波器應用於通訊領域的自動均衡、回聲消除、天線陣波束形成,以及其他有關領域訊號處理的引數識別、噪聲消除、譜估計等方面。對於不同的應用,只是所加輸入訊號和期望訊號不同,基本原理則是相同的。(以上部分可以跳過 上面這段話表明,需要求解的迴音路徑函式F就是一個自適應濾波器W(n)收斂的過程。所加輸入訊號x(n)fe,期望訊號是echo,自適應濾波器收斂後的W(n)就是迴音路徑函式F收斂之後,當實際迴音發生,我們把fe通過函式W(n),就可以得到一個很準確的echo,把混合訊號直接減去echo,得到實際需要傳送的語音speech,完成回聲消除任務。 值得注意的兩點: 1、自適應濾波器收斂階段,期望訊號是完全的echo,不能混雜有speech。因為speechfe是沒有關係的,會擾亂W(n)的收斂過程。也就是說要求回聲消除演算法開始運轉後收斂要非常快,最好對方還來不及說話,你一說就收斂好了;收斂好之後,如果對方開始說話,也就是有speech混合過來,這個W(n)係數就不要變化了,需要穩定下來。 2、迴音路徑可能是變化的,一旦出現變化,回聲消除演算法要能判斷出來,因為自適應濾波器學習要重新開始,也就是W(n)需要一個新的收斂過程,以逼近新的迴音路徑函式F 基本上來說,上面這兩點是兩難的,一個需要自適應濾波器收斂後保持係數穩定,以保證不受speech說話干擾,另一個需要自適應濾波器隨時保持更新狀態,以保證能夠追蹤變化的迴音路徑。這樣一來,僅從數學演算法層面,回聲消除已經是難上加難!簡單地說,回聲消除自適應濾波器的設計具有兩個互相矛盾的特性,也就是快速收斂和高度的穩定性,如何同時實現這兩項特性,正是設計上的主要挑戰。 經過上面的分析,相信大家對回聲消除的原理和技術有了深刻的理解,這是一門即容易理解又難以實現的技術。

相關推薦

解密回聲消除技術之一理論

允許轉載,轉載時請務必以超連結形式標明文章: (原始出處http://silversand.blog.51cto.com/820613/166095) 一、前言 因為工作的關係,筆者從2004年開始接觸回聲消除(Echo Cancellation)技術,而後一直在某大型通

解密回聲消除技術之一

一、前言 因為工作的關係,筆者從2004年開始接觸回聲消除(Echo Cancellation)技術,而後一直在某大型通訊企業從事與回聲消除技術相關的工作,對回聲消除這個看似神祕、高階和難以理解的技術領域可謂知之甚詳。 要了解回聲消除技術的來龍去脈,不得不提及作為現代通訊技術的理論基礎——數

【SSH2框架理論】--SSH2 Vs 經典三層

ext 深入 acc 而在 穩定性 沒有 實體 框架 框架圖  這幾天一直在學習使用SSH2框架。對於框架本身的使用並非非常困難。相信經過多鍛煉就行熟練的掌握框架的使用,讓我匪夷所思的是在使用框架的時候感覺非常熟悉,好像在哪

吐血分享:QQ群霸屏技術教程利潤

難度 排名 淘寶 用戶數據 解決 管理員 增加 引流 還在   QQ群技術,不論日進幾百,空隙時間多的可以嘗試,日進100問題不大。   QQ群技術,如何賺錢,能賺多少錢?不同行業,不同關鍵詞,不同力度,不一樣的產出。   群費   群費,這個和付費群是有區別的,群費

決策樹理論

傳輸 ner normal fin 朋友 關於 經典算法 公式推導 就會 定義   由一個決策圖和可能的結果(包括資源成本和風險組成),用來創建到達目的的規劃。——維基百科 通俗理解   給定一個輸入值,從樹節點不斷往下走,直至走到葉

STAR主管招商遊戲設計的三個終極問題如何設計遊戲才會好玩理論

主管 招商 玩家 大戶首選 遊戲應該是所有表達媒介中最為復雜的,直擊人性又包含社會、市場、交互等諸多因素。不長的發展歷史中,鮮有科學而有效的研究成果,大量充斥的皆是所謂經驗之談,通常只適用於某類用戶或是某種遊戲。   作為遊戲設計理論的重度愛好者、創業4年,擔任過各類遊戲的研發一線制作人,我一

新濠環主管招商遊戲設計的三個終極問題如何設計遊戲才會好玩理論

主管 招商 玩家 大戶首選 遊戲應該是所有表達媒介中最為復雜的,直擊人性又包含社會、市場、交互等諸多因素。不長的發展歷史中,鮮有科學而有效的研究成果,大量充斥的皆是所謂經驗之談,通常只適用於某類用戶或是某種遊戲。   作為遊戲設計理論的重度愛好者、創業4年,擔任過各類遊戲的研發一線制作人,我一

理論到實踐,全方位認識DNS理論

對於 DNS(Domain Name System) 大家肯定不陌生,不就是用來將一個網站的域名轉換為對應的IP嗎。當我們發現可以上QQ但不能瀏覽網頁時,我們會想到可能是域名伺服器掛掉了;當我們用別人提供的hosts檔案瀏覽到一個“不存在”的網頁時,我們會了解到域名解析系統

FPGA設計-時序約束理論轉載

1. FPGA時序約束以及高速ADC約束例項 2. TDC進位延時鏈設計以及研究 3. TDC的精度以及自動校正演算法的實現 STA:Static Timing Analysis STA(Static Timing Analysis,即靜態時序分析)在實際

區塊鏈核心技術之一共識演算法

開篇導言 作為一名IT技術工作者以及區塊鏈相關從業者,談到區塊鏈技術,不自覺的會想到密碼學、P2P協議、分散式儲存以及共識機制。鑑於前三者無論在學術上和工程上都是比較成熟的技術,因此理解區塊鏈的關鍵就是理解共識機制。從比特幣的POW開始,到以太坊的Ethash,再到EOS的dpos機制,然後是基於VRF抽籤設

TCP協議詳解理論

1.    與UDP不同的是,TCP提供了一種面向連線的、可靠的位元組流服務。面向連線比較好理解,就是連線雙方在通訊前需要預先建立一條連線,這猶如實際生活中的打電話。助於可靠性,TCP協議中涉及了諸多規則來保障通訊鏈路的可靠性,總結起來,主要有以下幾點:       (1

【H264/AVC 句法和語義詳解】(五):Exp-Golomb指數哥倫布編碼理論

版權宣告:本文為博主原創文章,未經博主允許不得轉載。    https://blog.csdn.net/u011399342/article/details/80472399 本篇隸屬於文集:《H264/AVC 句法和語義詳解》,檢視文集全部文章,請點選文字連結。&nb

網路徵信技術介面架構

隨著電商、金融業和移動網際網路的普及,個人身份畫像較十年前有了跨越式的發展。 十幾年前僅能獲取到網友的發帖回帖記錄、QQ等級,而對涉及到金融的消費類資料基本無從下手,產業還沒有實現規模化,也就無法談資料來源的普適度。 今天是很好的時代。網銀介面、社保介面、公積金介面

latex學習筆記之一工具

最開始很排斥學習latex,覺得word挺好使的,即寫即視,後來在師兄嚴重的鄙視下,慢慢開始latex之旅,開始欣賞,還在學習latex中,記錄下自己的學習過程。 最開始的排斥,原因之一在於入門之難,需要學習很多命令的樣子,要遵守很多的規範,有很多的巨集包,貌似很複雜,事實

DVL聲學多普勒速度儀技術剖析理論模擬

     聲學多普勒速度儀(DVL)是一種測量相對於水底速度的聲納裝置。早年DVL一開始被設計主要是用於船舶的定位導航中,但是近年來隨著水下機器人領域,尤其是民用領域的興起(據有關機構測算這一市場規模已達100億美元),DVL的作用顯得愈發重要,因為水下機器人想要在水下實現自

吐血分享:QQ群霸屏技術教程2017問題

情況 恢復 繼續 排名 時間間隔 批量 其他 亦或 後置   霸屏技術,問題篇後,暫時擱置,爾望後續。   這裏針對操作中,經常遇到的問題,做個簡單整理。   回憶下,排名流程。   1、建群,品牌產品群,做任何關鍵詞都是品牌產品群,皆因其有獨特的優勢。   2、拉

吐血分享:QQ群霸屏技術教程2017活躍

實現 需要 強調 查詢 但是 表情 單位 內容 至少   熱門詞的群排名,在前期優化準備充分的情況下,活躍度不失為必殺技。   在《吐血分享:QQ群霸屏技術(初級篇)》中,我們提及到熱門詞的群排名,有了前面的基礎,我們就可以進入深度優化,實現絕對的霸屏。   前期優化,

吐血分享:QQ群霸屏技術教程2017維護

失敗 重要 文件 細節 流程 問題 鏈接 灰色 會有   排名上去,並不是終極穩定,日常維護相當重要。   群排名做上去了,如果不去維護,排名很可能會下去,尤其是咱們做了很多群的時候,完全不會留意到。   為什麽不穩定?   1、活躍度下去了,排名當然不穩定,這個需要

後門技術HOOK之DT_RPATH

dex 文件 定位 symbols 存在 cat 未使用 con alert 0x01 GNU ld.so動態庫搜索路徑 參考材料:https://en.wikipedia.org/wiki/Rpath 下面介紹GNU ld.so加載動態庫的先後順序: LD_PRELO

動作手遊實時PVP技術揭密伺服器

前言   我們的遊戲是一款以忍者格鬥為題材的ACT遊戲,其主打的玩法是PVE推圖及PVP 競技。在劇情模式中,高度還原劇情再次使不少玩家淚目。而競技場的樂趣,伴隨著賽季和各種賽事相繼而來,也深受玩家喜愛,從各直播平臺幾萬到幾十萬的觀眾可見一斑。然而,在移動端推出實時PK並不是一蹴而就的,本文將向