打破傳統降噪技術 看網易雲信在語音降噪的實踐應用

導讀

隨著音影片會議、娛樂互動直播、在線教育產品的火熱發展,產品中令人愉悅的音效音質體驗是必不可少的。但在音影片實時通訊中,難免會遇到各種我們不希望出現的聲音,例如電流聲、鍵盤敲擊聲、嘈雜聲等,這些統稱為雜訊。抑制這些聲音的技術為降噪。本文我們將從語音降噪的概念入手,詳細分析常見的幾種語音降噪技術實現以及網易雲信在語音降噪上的應用。

什麼是語音降噪

我們先來看看什麼是語音降噪。語音降噪(或語音增強)是指當語音訊號被各種各樣的背景雜訊干擾、甚至淹沒後,儘可能地從帶噪語音訊號中提取有用語音訊號(或純凈語音訊號),抑制或降低雜訊干擾的技術。語音降噪有兩個主要作用:

  • 降低背景雜訊干擾,改善語音品質,提升聽者的舒適感
  • 提高語音資訊傳達的可懂度

語音降噪分類

語音降噪可以從不同的維度進行劃分,一般可以從錄音的通道數或者降噪方法有無監督進行劃分,下面我們主要分析一下這兩種劃分情況。

按通道數劃分

依據採集語音時麥克風數量的不同,劃分為單通道方法和麥克風陣列方法。

單通道方法的語音降噪對單個麥克風錄製的語音訊號進行處理,只利用了時域與頻域的資訊,其對硬體成本要求較低,但是由於缺少空間資訊,降噪更為困難。

麥克風陣列語音降噪對麥克風陣列採集的語音訊號進行處理,不僅利用了時域與頻域資訊,還利用了空間資訊,因此在抑制特定方向的干擾和對不同聲源進行分離等方面具有優勢,可以在更複雜聲學環境和遠場環境中實現語音增強。

在音影片會議、直播等場景中,多使用 PC 端、手機設備,是典型的單通道語音降噪場景,雲信目前也主要提供單通道的語音降噪能力。

按研究思路不同劃分

從研究思路不同進行劃分,音頻降噪演算法可以分為傳統訊號處理方法與深度學習方法。這兩種方法各有優劣,主要區別有以下幾點:

原理上的區別

  • 傳統訊號處理演算法大多基於物理和數學原理推導,這些原理是基於人類的認知發展而來的,適用性強,所以系統一般有比較好的魯棒性。
  • 深度學習演算法更多是利用大量的語音數據或雜訊數據,訓練網路學習相關的特徵從而實現降噪,性能的決定因素來自於訓練集的大小、訓練集的代表性、使用的模型、訓練過程和準則等,性能的變化範圍較大,系統在新環境下魯棒性較差。

假設上的區別

  • 傳統訊號處理演算法為了簡化計算或獲得解析解做了很多假設和簡化,這可能會限制語音降噪的上限,難以處理非平穩雜訊。
  • 深度學習演算法通常不需要這些假設,其核心特定就是模型是複雜非線性的,因此在大量訓練數據和較好模型設計的前提下有望取得更好的性能。

使用環境的區別

  • 傳統訊號處理方法一般具有小計算量、低延遲等優勢,容易滿足實時性要求。
  • 基於深度學習的方法往往模型較大、計算資源要求較多,一方面會限制其在計算資源有限的系統中的使用,另一方面難以保證實時通訊需求。

接下來我們將對這兩類降噪方法進行介紹與分析。

傳統訊號處理方法

傳統單通道降噪方法類別

傳統單通道降噪經過幾十年的發展,種類繁多,主要有譜減法、維納濾波、子空間法、基於最小均方誤差的語音幅度譜估計方法等。

譜減法基於一個假設:雜訊是加性雜訊且具有平穩性,因此在初始的非語音段音頻中估計出雜訊譜,再從帶噪語音譜中減去估計的雜訊譜就可以得到乾淨的語音譜。然而,該減法處理的代價在於過多減去雜訊譜則會去掉部分語音訊號;過少減去則會殘留雜訊,將產生令人反感的音樂雜訊。

維納濾波方法對語音訊號復頻譜生成了一個線性估計器,該估計值在均方意義上性能最優。維納濾波方法不會產生音樂雜訊,使處理後語音訊號聽起來更為舒適,但是它是對訊號平穩條件下的最小均方誤差估計,因此對於非平穩雜訊抑制效果不佳,而且容易造成語音失真。

子空間演算法將帶噪語音訊號的向量空間分解為訊號子空間與雜訊子空間,儘可能保留訊號子空間分量且去除雜訊子空間的分量,能夠在一定程度上抑制雜訊,但是子空間法需要對每一幀語音進行奇異值分解或特徵值分解,計算代價高,不適用於實時語音降噪。

基於最小均方誤差的語音幅度譜估計演算法是傳統語音降噪演算法中具有革命意義的方法,於1984年 由Ephraim 和 Malah 提出。隨後,考慮到人耳對語音頻率的非線性感知,他們推導出基於最小均方誤差的對數譜估計方法。2001 年,Cohen 提出最優改進對數譜幅度估計方法,它的設計準則是最小化乾淨對數譜與估計對數譜的誤差,首先利用最小值控制遞歸平均方法估計雜訊,再依次估計先驗、後驗信噪比、語音存在概率,最後計算頻譜增益函數估計出乾淨語音。此後,改進的最小值控制遞歸平均方法估計雜訊被提出,具有估計誤差更小且對非平穩雜訊跟蹤更快的特點,此方法得到了廣泛應用。

傳統降噪的實現

目前業界常用的開源演算法之一是 WebRTC 中雜訊抑制模組演算法,其核心思想是採用維納濾波器抑制估計出來的雜訊。

其演算法流程圖如圖所示:

  • 訊號分析:對輸入幀語音進行加窗,快速傅里葉變換(FFT)得到頻域數據。
  • 雜訊估計與抑制:使用分位數雜訊估計進行初始雜訊估計、後驗和先驗 SNR 的判決引導更新、語音/雜訊概率計算,概率計算是基於似然比因子進行的。似然比使用後驗 SNR、先驗 SNR 以及語音概率密度函數模型,還有特徵建模、雜訊估計更新並應用維納濾波增益濾波器確定的概率而確定的。
  • 訊號合成:將頻域數據通過 IFFT、窗口合成轉為時域數據。

WebRTC 降噪演算法對於平穩背景雜訊(如風扇、家用電器等雜訊)具有良好的抑制效果,但對於低信噪比和瞬變雜訊場景效果不佳。

網易雲信在 WebRTC 雜訊抑制模組基礎上自研了活動檢測(VAD)演算法,區分語音與雜訊,並且以此調整雜訊估計方法,優化了雜訊收斂時間與降噪力度。

深度學習方法

傳統訊號處理方法具有計算量小、可實時降噪處理的優勢,但是難以處理非平穩雜訊場景,而實際會議中,嘈雜雜訊、鍵盤敲擊聲等非平穩雜訊是用戶痛點,極大的影響聽感舒適度。近年來,深度學習方法顯著提升了有監督任務性能,在語音降噪任務中開始出現一些數據驅動類演算法(即 AI 演算法)。相較於傳統訊號處理方法難以處理多樣性、突發性非平穩雜訊的弊端,深度學習方法在大量訓練數據和較好模型設計的前提下能夠取得更好的降噪性能。

深度學習方法類別

基於深度學習方法大致可分為三類,基於頻譜映射的方法、基於時頻掩碼的方法、端到端方法。

  • 基於頻譜映射的方法,主要通過深度神經網路強大的非線性建模能力來建立帶噪語音譜參數與純凈語音譜參數之間的映射關係。
  • 基於時頻掩碼方法,其核心思想是通過訓練深度神經網路預測時頻掩碼,它反映了各個時頻單元上對雜訊的抑製程度,然後將預測的掩碼應用於輸入帶噪語音的頻譜來重構純凈語音訊號。常見的時頻掩碼有理想二值掩碼、理想比例掩碼、相敏掩碼、複比例掩碼等。
  • 端到端語音增強,則是直接在時間域波形級上進行操作,通過模型直接輸入帶噪語音波形得到增強後波形。

基於深度學習的降噪方法(AI 降噪)能夠取得更好的降噪性能,但是其模型較大、計算複雜度高。對於運行在移動終端的實時演算法來說,計算複雜度需要滿足實時性、CPU 佔用率、記憶體佔用率等必須比較小。一般而言,模型的性能消耗與其輸出效果,綜合來看是一種均衡的關係。然而在降噪場景下,演算法既需要長時間實時運行,又需要保證演算法效果能夠應對複雜多變雜訊場景,這對現有降噪技術提出了一定的挑戰。

網易雲信自研 AI 降噪演算法

網易雲信自研 AI 降噪演算法將傳統訊號處理方法與深度學習類方法相結合,利用私有化大數據集訓練模型,並且採用了輕量級模型設計與模型裁剪等手段, 節省計算資源,支援移動端實時增強。它可以有效抑制傳統降噪演算法解決不了的嘈雜雜訊、鍵盤聲、滑鼠聲等突發雜訊,同時也能夠提升對於平穩雜訊抑制,提取更清晰的人聲。

下面是一個案例展示網易雲信自研 AI 降噪演算法效果,左圖為是辦公室場景下帶噪語音波形圖與語譜圖,右圖為降噪後波形圖與語譜圖:

3-1.png

總結

本文簡述了常見的傳統語音降噪與 AI 降噪技術,以及網易雲信在該領域的應用。傳統降噪技術對於平穩雜訊處理良好,但對於非平穩,突發的聲音的降噪往往無能為力。

網易雲信提出自研 AI 降噪演算法,充分利用深度學習網路對語音和雜訊特徵的學習能力,有效抑制環境中的各種噪音。今後,網易雲信將在 AI+實時音頻處理上持續推進研究,致力於為用戶提供更好的音頻通話體驗。

作者介紹

颯颯,網易雲信音影片演算法工程師,主要從事雜訊抑制、回聲消除、音影片語音增強等相關工作,目前負責網易雲信音頻前處理雜訊抑制演算法開發與優化。

Tags: