首頁  >  文章  >  科技週邊  >  聊聊即時通訊中的AI降噪技術

聊聊即時通訊中的AI降噪技術

PHPz
PHPz轉載
2023-04-12 13:07:061633瀏覽

聊聊即時通訊中的AI降噪技術

Part 01  

#在即時音訊視訊通信場景,麥克風採集用戶語音的同時會採集大量環境噪聲,傳統降噪演算法僅對平穩噪聲(如電扇風聲、白噪聲、電路底噪等)有一定效果,對非平穩的瞬態噪聲(如餐廳嘈雜噪音、地鐵環境噪音、家庭廚房噪音等)降噪效果較差,嚴重影響使用者的通話體驗。針對泛家庭、辦公室等複雜場景中的上百種非平穩噪音問題,融合通訊系統部生態賦能團隊自主研發基於GRU模型的AI音頻降噪技術,並透過演算法和工程優化,將降噪模型尺寸從2.4MB壓縮至82KB,運行記憶體降低約65%;計算複雜度從約186Mflops優化至42Mflops,運行效率提升77%;在現有的測試資料集中(實驗環境下),可有效分離人聲和噪音,將通話語音品質Mos分(平均意見值)提升至4.25。

本篇文章將介紹我們團隊如何基於深度學習做即時雜訊抑制,並落地於行動裝置和家親APP的過程。全文將依照以下組織,介紹噪音的分類,如何選擇演算法去解決這些噪音的問題;如何透過深度學習的方式去設計演算法,訓練AI模型;最後會介紹目前AI降噪能達到什麼樣效果與重點應用場景。

Part 02  雜訊分類與降噪演算法選擇  

聊聊即時通訊中的AI降噪技術

聊聊即時通訊中的AI降噪技術

聊聊即時通訊中的AI降噪技術# #即時音視訊的應用場景中,裝置處於複雜的聲學環境,麥克風擷取語音訊號的同時還會擷取大量噪音,對即時音視訊品質來說是一個非常大的挑戰。噪音的種類是多種多樣的。根據雜訊的數學統計特性可以將雜訊分為兩類:

聊聊即時通訊中的AI降噪技術

#平穩雜訊:##雜訊的統計特性在比較長的時間內不會隨時間而變化,例如白噪音、電風扇、空調、車內噪音等;

##################################################################### #################非平穩噪音:#########噪音的統計特性隨時間在變化,如餐廳雜訊、地鐵站、辦公室、家庭廚房等。 #####################################在即時音訊應用中,通話易受到各類雜訊幹擾從而影響體驗,因此即時音訊降噪已成為即時音視訊中的重要功能。對於平穩的噪音 ,例如空調出風口呼呼聲或錄製設備的底噪,它不會隨著時間變化而產生較大變化,可以將其估計預測出來,透過簡單的減法的方式把它去掉,常見的有譜減法、維納濾波以及小波轉換。對於非平穩噪音,例如馬路上車子呼嘯而過的聲音、餐廳內餐盤的撞擊聲、家庭廚房內的鍋具的敲擊聲,都是隨機突發出現,是不可能通過估計預測的方式去解決的。傳統演算法對於非平穩噪音難以估計和消除,這也是我們採用深度學習演算法的原因。 ##########

Part 03  #深度學習降噪演算法設計 

聊聊即時通訊中的AI降噪技術

##為了提高音訊SDK對於各種噪音場景的降噪能力,彌補傳統降噪演算法的不足,我們研發了基於RNN的AI降噪模組,結合傳統降噪技術和深度學習技術。重點在於家庭和辦公室使用場景的降噪處理,在噪音資料集中加入大量的室內噪音類型,諸如辦公室內的鍵盤敲擊、辦公桌與辦公用品拖拉的摩擦聲、座椅拖動、家庭中的廚房嘈雜聲、地板撞擊聲等等。

同時,為了在行動端的即時語音處理落地,該AI音訊降噪演算法將計算開銷和庫的尺寸控制在一個非常低的量級。在計算開銷上,以48KHz為例,每幀語音的RNN網路處理處理僅需約17.5Mflops,FFT和IFFT每幀語音需要約7.5Mflops,特徵提取需要約12Mflops,總計約42Mflops,計算複雜度約和48KHz的Opus編解碼相當,在某品牌中階手機型號,統計RNN降噪模組CPU佔用約4%。在音訊庫的尺寸上,開啟RNN降噪編譯後,音訊引擎庫的體積僅增加約108kB。

Part 04  網路模型及處理流程

 

該模組採用RNN 模型,原因是RNN 相比其他學習模型(例如CNN)攜帶時間訊息,可以對時序訊號進行建模,而不僅僅是單獨的音訊輸入和輸出幀。同時,模型採用門控循環單元(GRU,如圖1所示),實驗表明,GRU在語音降噪任務上的性能略好於LSTM,並且由於GRU的權值參數更少,可以節省計算資源。與簡單的循環單元相比,GRU有兩個額外的門。重置閘控制狀態是否用於計算新狀態,而更新閘控制狀態將根據新輸入而改變的程度。這個更新閘讓GRU可以長時間記憶時序訊息,這也是GRU比簡單的循環單元表現更好的原因。

聊聊即時通訊中的AI降噪技術

#圖 1 左邊為簡單循環單元,在右側為GRU

模型的結構如圖2所示。訓練後的模型會被嵌入到音視頻通訊SDK 中,透過讀取硬體設備的音頻流,對音頻流進行分幀處理並送入AI 降噪預處理模組中,預處理模組會將對應的特徵( Feature)計算出來,並輸出到訓練好的模型中,透過模型計算對應的增益(Gain)值,使用增益值對訊號進行調整,最終達到降噪的目的(如圖3所示)。

聊聊即時通訊中的AI降噪技術

#圖2.基於GRU的RNN網路模型

聊聊即時通訊中的AI降噪技術


###############13. 上方為模型訓練流程,下方為即時降雜訊流程##################

Part 05  AI降噪處理效果與落地 

##圖4為具有鍵盤敲擊噪音的降噪前後語音語譜圖的對比,上半部為降噪前的帶噪語音訊號,其中紅色矩形框內為鍵盤敲擊噪音。下半部為降噪後的語音訊號,透過觀測可以發現,絕大部分鍵盤敲擊聲均可以被抑制,同時語音損傷控制在較低的程度。

聊聊即時通訊中的AI降噪技術

#圖4. 有雜訊語音(通話過程伴隨著鍵盤敲擊聲)降噪前後對比

目前的AI降噪模型,已經在手機端和家親上線,改善手機端和家親APP通話降噪效果,對泛家庭、辦公室等100多種噪音場景具備優秀的抑制能力,同時保持語音不失真。下一階段,將持續優化AI降噪模型的運算複雜度,以便在IoT低功耗設備上能夠推廣使用。 #

以上是聊聊即時通訊中的AI降噪技術的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除