日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

WebRTC端点检测使用中遇到的部分问题汇总

發布時間:2025/3/21 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WebRTC端点检测使用中遇到的部分问题汇总 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

WebRTC端點檢測使用中遇到的部分問題匯總

背景

端點檢測技術作為語音識別等技術預處理截斷的一項非常重要的技術一直以來是業界研究的重點,也可以說語音信號的端點檢測精度直接影響后面進行的語音識別精度,而目前的端點檢測算法主要受到以下幾個因素的制約:

  • 噪聲環境: 待檢測語音信號中的環境噪聲強的時候其端點檢測精度就明顯下降,所以目前采用的主要技術是麥克風陣列技術實現噪聲的抑制,從而獲得信噪比較高的語音信號作為端點檢測的輸入。
  • 多說話人: 在待檢測語音中存在多人同時說話時端點檢測的精度也會明顯下降,同樣,目前業界主要還是通過麥克風陣列技術實現說話人定向、波束成形、信號增強等技術手段獲得較為理想的語音信號。(麥克風陣列技術也是一項非常重要的技術。本人畢業設計就是做的移動機器人聲源定位)
  • 就目前端點檢測算法來說主要有基于能量閾值的檢測方法(能量方法又包括多中能量)、基于能量與過零率的檢測方法、基于譜熵的檢測方法、基于倒譜的檢測方法等,這些方法在實際應用中對于環境的泛化能力較弱,算法的魯棒性較低,主要受噪聲、音量、遠近場的不同等因素影響。

    正文

    幾個月前公司的一個項目中需要做一個魯棒性較好的端點檢測算法來更換公司在用的基于能量與過零率實現的端點檢測算法,經過一段時間的折騰(為什么說折騰呢?因為公司也沒告訴我用什么算法,所以全靠我自己摸索了),最后我決定用Google的開源項目WebRTC試試(無奈,我只是個來實習生啊,苦)經過一個月的探索終于有點眉目了,我通過修改了WebRTC底層算法的部分邏輯實現又經過無數次實際環境中的測試終于有一天項目經理說合格了(激動的心,顫抖的手啊)。下面我將使用WebRTC的過程中遇到的部分問題分享出來供大家參考:

    首先WebRTC的VAD模塊返回的是每一幀音頻數據是否為語音信號的標志位,也就是直接使用的話接收到的是一幀一幀拼接的語音數據,在實際項目中使用時不能滿足實際需要,聽到的聲音斷斷續續的,所以這時就需要在WebRTC中VAD算法的基礎上再進行一次封裝,這次封裝主要解決的為題是按照實際應用中的那樣將每幀音頻按照語音,非語音分成完整的段。

    由于我們的使用環境噪聲較大,信噪比較低,實際測試中端點檢測時出現了將大量噪聲判別為語音的情況,所以此時我通過修改WebRTC底層判別語音信號的能量閾值(vad_core.h)KMinEnergy,這樣就可以過濾掉大部分低能量的噪聲對端點檢測算法的影響。

    其次在WebRTC的VAD中判別語音還是非語音的高斯模型中在計算六個頻段的似然比之后與設定的閾值比較時,分為兩種情況:

  • 當六個頻帶的局部似然比閾值超過閾值門限時判別為語音;
  • 當六個頻帶的似然比閾值加權求和后得到的一個全局閾值超過預先設定的閾值門限時判定為語音。
  • 原始的算法當滿足這兩者之一時就可以認為此幀為語音幀,通過實驗這樣做的方式得到的效果并不好,所以我通過屏蔽局部邏輯判斷進行了測試,實驗表明這樣做效果更好,端點檢測精度更高。

    最后在修改上述地方后我通過開放似然比閾值接口實現了再多種環境下的端點檢測模式的設定。

    今天就先記錄到這里,后期我再詳細的描述WebRTC算法的工作流程和低信噪比環境下的優化。

    《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

    總結

    以上是生活随笔為你收集整理的WebRTC端点检测使用中遇到的部分问题汇总的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。