回聲消除(AEC)怎麼理解?

2021-02-13 拍樂雲Pano

導讀:回聲消除作為3A算法之一,是語音前處理的重要環節。回聲消除問題,並不是一個簡單的算法問題,它其實是一個系統性的問題。空間、傳播介質、器材特性等等都會影響到回聲的特性,目前算法的處理問題能力是有限的,所以做好回聲消除需要從更系統的視角來看問題。本文從幾個簡單的視角來聊一聊回聲消除的原理。

在實時音視頻通話中,回聲產生的主要原因是揚聲器播放的聲音又再次錄進麥克風裡去,而這個現象在A,B雙方開外放的通話下,就轉化成一個問題,A(下圖左)說話,A的聲音從B(下圖右)的揚聲器放出,又從B的麥克風採集進來,從而又傳回給A產生回聲。

麥克風採集聲音是播放聲音(回聲)和說話聲音的簡單合成?

當然不是,事實上:

一來在實際場景下回聲是經過多次反射和環境的噪聲(如圖中電風扇的噪聲)以及本地說話的聲音傳入麥克風的。

二來,由於設備(揚聲器或者麥克風都會存在失真),那麼麥克風錄到的回聲和揚聲器播放數據已經發生變化,在實際情況下這一過程中,聲音在頻域通常不僅包含一些線性變化,更會有很多的非線性變化,如下圖(一個真實手機錄的數據的only far end talk 部分選段),左聲道(上面)是播放前的數據也就是算法的遠端參考數據(即far end reference),右聲道(下面)是麥克風採集的聲音,可以看到不管是時域還是頻域都能看到比較大的不同。

又如下圖是綠色的遠端參考信號和藍色的本端信號數據的頻譜分析,區別可以自己看看。

回聲消除的論文非常多,各家的算法也有很多不同的優化,這裡不講公式,只講回聲消除的基本思想。

醫生在開刀的時候,知道哪裡要切哪裡不切,是因為他們有基於大量人體解剖實驗而得來的先驗的知識,清楚知道好的組織是什麼樣子,然後把基於先驗知識和經驗把不好的切除。回聲消除算法在輸入聲音數據的時候,並沒有太多的先驗信息,所以並不清楚什麼聲音是回聲,什麼聲音是本端人說話。回聲和本端說話只在頻譜特性上很難區別,所以回聲消除算法需要提供一個先驗信息——即播放前的數據做參考信號(far end reference),因為這組信號是回聲的源頭,被揚聲器播放後回錄進麥克風從而形成回聲。根據前面說的,我們知道reference的輸入並不等於麥克風採集的數據裡面的echo,播放到採集的中間經過的一系列過程稱之為 echo path。那麼回聲消除的基本思想簡單來說就是:

為了估計麥克風數據中的回聲部分,用濾波器組來模擬echo path,讓far end reference 經過濾波器組來模擬實際的聲音經過echo path的過程來逼近麥克風中回聲部分,得到了echo的估計後,再利用維納濾波或其他方式來消除麥克風數據中的回聲部分。

由於目前實際大部分工業界的實際算法的濾波器組都是模擬線性變化的濾波器組,對於非線性變化,還需要再做針對非線性的殘餘回聲的處理。

回聲消除大部分的應用場景都是實時場景,不管是傳統電話、視頻會議,還是人工智慧音箱為語音識別做的前處理回聲消除等。其中有非常多的ARM 設備,所以對於回聲消除算法的性能是有一定要求的,最起碼的要求是在應用的平臺能達到處理幀數據的時間是低於一幀數據本身的時間。考慮到還有其他的處理,所以處理的時間是越短越好的。

為什麼要在頻域做呢?絕大部分原因是因為性能問題,如果在時域做,濾波器的長度會非常長,對性能的影響也會非常大。同時FFT在工程化的時候,都會考慮性能,來做彙編的優化。

nlms是一種迭代算法,使用它的主要原因有兩點:

計算量的優化

直接解方程求矩陣的逆非常的費計算量,很多場景下的設備無法滿足實時性的需求。

短時echo path 變化的假設

絕大多數情況下,短時間內echo path是不會發生太大的變化。在不必要浪費計算資源的基礎上又能合理的跟蹤echo path的變化,迭代算法就是非常好的選擇了。

echo delay 問題

ref 信號和 麥克風採集的echo 存在一定delay,這個delay 一般是由於播放和採集的模塊的緩存以及空間傳播的時間造成的。所以通過Ref 信號來估計echo,首先Ref 數據本身不能錯,不然回聲消除算法效果不會好。 另外軟體層的回聲消除算法,還會因為系統或工程框架問題產生delay的跳變等問題。

實際使用空間的影響

空曠的會議室、樓道等等場景下,空間的混響本身就很重,這個時候產生回聲也會有明顯多次反射的情況。

實際使用的姿勢的影響

在手機包了手機殼擋住揚聲器,放在振動的桌面上,一直搖動設備等一系列情況下都會產品不同的回聲反饋。

根據上面描述,可以看出來,實際場景下的回聲消除是一個非常具有挑戰性的工作,也是行業的難點之一。做回聲消除算法訓練的時候,儘量不要自己合成測試數據再做仿真,更加建議根據應用設備和真實的場景來:

發現問題 -> 動手挖掘有效信息 -> 分析問題 -> 思考解決方案 -> 實現解決方案 -> 測試體驗 -> 持續優化 -> 再體驗 ...

願大家在實踐中,發現探索的樂趣!

相關焦點

  • WebRTC AEC 流程解析
    今天我們要將3A算法中最難的一個算法,也是WebRTC流程解析這個系列的最後一個算法,聲學回聲消除(Acoustic Echo Cancellation
  • MorphVOX變聲器有回聲怎麼辦?回聲變音怎麼解決?
    該怎麼解決這個回聲問題呢?下面就來說一說怎麼解決MorphVOX Pro有回聲的方法。這樣的回聲問題通常會出現在使用音響、筆記本自帶錄音播放設備以及隔音不好的耳麥的用戶身上。這主要時因為對方的聲音通過播放設備傳出以後,又被麥克風吸收了。然後變聲器處理的時候就會和你的聲音一樣也會進行變聲處理。我們要做的就是避免播放的聲音再被麥克風所吸收就行了。
  • 如何解決動態提高回聲與噪聲消除性能?
    回聲和噪聲消除技術的巨大進步來得非常及時,因為美國許多州都制定了相關法規,全面或部分地禁止駕駛人員在駕車時手握行動電話通話。歐洲大多數國家及全球許多其它國家也都已經有了相關的法規。上述法規的出現,進一步提高了免提技術的需求,並要求能在汽車內部環境中有效消除噪聲及回聲,這也是免提系統的最大設計挑戰所在。
  • 基於LMS算法的回聲消除系統仿真研究
    編者按:在通信行業日漸發達的今天,回聲消除的應用十分廣泛。常見的回聲消除方法一般有三種。一是對周圍環境進行特殊的處理,二是採用回聲隔離器,三是採用回聲抵消器。當下最熱門的三種回聲消除算法分別是維納濾波算法,最陡下降算法,LMS算法。
  • 搭載聲加科技回聲消除技術,小米戶外藍牙音箱賦能高清暢聊
    回聲消除算法和通話環境降噪算法的加入,保證了高清晰的通話質量,讓雙方同時說話時都能清晰連貫地聽到對方的聲音,不僅消除了回聲,而且不降低音箱外放音量。因此,即使將此款音箱的音量開到最大,通話雙方照樣可以輕鬆暢聊,而不用擔心對方聽到回聲或者聽不清你講話。
  • 搭載聲加科技回聲消除技術,華為Free GO便攜藍牙音箱實現全雙工...
    為更好地滿足電話會議的通話需求,Free Go採用了來自聲加科技的回聲消除技術,實現360° 全方位、超強拾音,清晰傳達每一次精彩瞬間;3 米拾音範圍,輕鬆覆蓋 25 平米室內空間;採用雙麥克風密閉腔體設計,配合 AEC 自適應回聲抑制算法,有效抑制回聲;支持全雙工對講技術,讓語音交流如面對面般清晰順暢。
  • 如何處理視頻會議中的回聲問題-文章-數字音視工程網DAV01.COM
    如何處理視頻會議中的回聲問題   視頻會議系統中,無論會議終端還是MCU對於回聲問題都有解決軟體集成在設備中,有的項目中使用這些設備中的回聲消除器就可以消除回聲,音質也不受影響。但不可否認,眾多的項目中,當幾個會議室同時打開麥克風交流時,回聲問題就出現了。
  • 什麼是肝回聲增粗 肝回聲增粗是肝硬化早期嗎
    現如今很多人的體檢報告上會出現肝回聲增粗一詞,作為專業性的醫學術語,很多人不理解什麼意思,那麼肝回聲增粗是什麼呢?肝回聲增粗是肝硬化早期嗎?我們常常忽略的一些現象可能就會導致疾病,那麼肝硬化早期症狀又有哪些?下面就帶大家來了解一下。什麼是肝回聲增粗正常的肝臟內部回聲是由一些分布均勻、大小相似和輝度相近的細小的光點組合成的。
  • 子宮內膜回聲不均是怎麼回事?
    排卵後,在卵巢黃體分泌雌孕激素的作用下,使增厚的子宮內膜出現分泌現象可以導致子宮內膜回聲不均。 生殖中心接受治療的部分患者促排或準備移植時,尚未到排卵期時,可能會被超聲提示子宮內膜回聲不均。子宮內膜回聲不均並不是具體的某種疾病的名稱,而是超聲檢查關於子宮內膜的一種描述,多數屬於正常內膜或良性病變。
  • 蘭州子宮內膜回聲不均是怎麼回事?
    蘭州天倫不孕症醫院 輸卵管性不孕, 排卵障礙, 宮腔粘連, 卵巢囊腫 經常有有患者拿著B超報告單來診室問:「醫生,你看我檢查單上寫子宮內膜回聲不均勻
  • 解讀自閉症(回聲語言):孩子的語言你懂了嗎?
    這裡我僅以自己的感受,講述我對於回聲語言的理解。首先,回聲語言不是孩子特有的,我本人至今仍會偶爾出現回聲語言。而我第一次意識到自己的回聲語言,是我在上班時給自己安排工作計劃。我當時剛到公司,打開電腦梳理自己當天的工作任務「幾點聯繫哪個客戶,幾點聯繫供應商」順嘴就把安排念了出來。公司的副總突然說了句「汪頤,我們知道你事情多,但你不用都念出來」。
  • 甲狀腺超聲檢查,提示回聲不均勻是怎麼一回事?
    很多人對於檢查報告的描述都不是很懂,近期,經常會有患者在問,甲狀腺超聲檢查中,提示回聲不均勻是什麼意思呢?今天就由長沙長海醫院甲狀腺科主任/何希貴醫師來給大家講解一下。 甲狀腺回聲不均勻 甲狀腺回聲不均勻,主要是因為甲狀腺體出現鈣化,以及周邊環狀的鈣化。
  • 火焰紋章回聲另一個英雄王村民無限轉職教程 怎麼無限轉職
    《火焰紋章回聲:另一個英雄王》中村民怎麼無限轉職?還有一些萌新可能還不清楚無限轉職的作用,下面安趣網小編就為大家帶來了火焰紋章回聲另一個英雄王村民無限轉職教程,告訴大家村民如何循環轉職,感興趣的小夥伴一起來看看吧。
  • 『快速解讀超聲』胎兒「強回聲」那些事兒
    「強回聲、強光點」是怎麼回事?孕媽該注意哪些?超聲較為常見的描述「強回聲、強光點」是怎麼回事?都說少年強則國強,孕期胎兒「強」,到底是不是好事兒呢?下面和寶媽們分享孕期常見的那些「強回聲、強光點」。其實胎兒和我們一樣,我們體檢的時候也經常遇到,膽囊內強回聲後方伴有聲影,消化科的醫生告訴我們會有膽囊結石,胎兒也一樣膽囊裡也會出現這奇怪的強回聲。但如果伴有膽管異常或合併其他結構異常的膽囊內的回聲增強,寶媽就要注意了。這時需要詳細的排查有無嚴重的胎兒結構發育及染色體異常情況。
  • 輻射4材料代碼大全 材料代碼怎麼用方法說明
    另外很多玩家可能還不清楚材料代碼怎麼用,這裡也會一併說明清楚,玩家可以查看輻射4一鍵輸入多條代碼方法,更快捷的一起刷多種材料。  1、材料代碼怎麼用  在遊戲內按【~】鍵呼出控制臺,輸入「player.additem 代碼 數字」即可獲得對應代碼的材料,數字表示獲得該材料的數量。
  • 《第五人格》線索回聲靈感碎片有什麼用 回聲靈感碎片獲得方法
    導 讀 第五人格線索回聲靈感碎片有什麼用?第五人格線索回聲靈感碎片怎麼得?
  • 乳腺低回聲結節能治癒嗎?怎樣治療效果好
    對於患有的乳腺低回聲結節能治癒嗎?小編為大家帶來了一些實用的方法,一起來了解一下。乳腺低回聲結節的危害:一、 乳房會出現脹痛或刺痛,可累及一側或兩側乳房,以一側偏重多見,疼痛嚴重者不可觸碰,甚至影響日常生活及工作。二、乳腺結節會影響到女性的自信、情感和婚姻。
  • 室內甲醛怎麼快速消除 怎麼消除甲醛汙染
    室內空氣汙染會對人體健康造成不良影響,其中以室內甲醛汙染最為嚴重,甲醛是一種頑固性非常強烈的氣態汙染源,室內的甲醛大部分由於裝修之後或新購家具之後產生,由於甲醛具有非常強的頑固性特點,甲醛的釋放時間長達3年以上,因此短暫的甲醛去除是沒有任何效果,必須持續長時間的去除才能達到真正去除室內甲醛的目的,室內甲醛怎麼快速消除
  • 肝內低回聲結節是怎麼回事?或與這些病症密切相關,得警惕了
    肝臟檢查結果顯示為肝有低回聲結節時,必須要針對肝臟組織進一步做檢查,才能確定結節所代表是何疾病。畢竟在肝臟檢查時發現低回聲結節情況下,肯定代表肝臟組織上存在一定的異常疾病,只是這種結果會涉及到很多種肝性疾病,所以要做下一步的檢查才能確定。
  • 第五人格線索回聲靈感碎片有什麼用說明
    第五人格目前的貨幣類型比較多,分別有回聲,靈感,線索和碎片,它們都有不同的用處和購買方式。那這四種貨幣怎麼獲得呢?又有什麼用呢?