日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

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

發(fā)布時(shí)間:2025/3/21 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 WebRTC端点检测使用中遇到的部分问题汇总 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

WebRTC端點(diǎn)檢測(cè)使用中遇到的部分問(wèn)題匯總

背景

端點(diǎn)檢測(cè)技術(shù)作為語(yǔ)音識(shí)別等技術(shù)預(yù)處理截?cái)嗟囊豁?xiàng)非常重要的技術(shù)一直以來(lái)是業(yè)界研究的重點(diǎn),也可以說(shuō)語(yǔ)音信號(hào)的端點(diǎn)檢測(cè)精度直接影響后面進(jìn)行的語(yǔ)音識(shí)別精度,而目前的端點(diǎn)檢測(cè)算法主要受到以下幾個(gè)因素的制約:

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

    正文

    幾個(gè)月前公司的一個(gè)項(xiàng)目中需要做一個(gè)魯棒性較好的端點(diǎn)檢測(cè)算法來(lái)更換公司在用的基于能量與過(guò)零率實(shí)現(xiàn)的端點(diǎn)檢測(cè)算法,經(jīng)過(guò)一段時(shí)間的折騰(為什么說(shuō)折騰呢?因?yàn)楣疽矝](méi)告訴我用什么算法,所以全靠我自己摸索了),最后我決定用Google的開(kāi)源項(xiàng)目WebRTC試試(無(wú)奈,我只是個(gè)來(lái)實(shí)習(xí)生啊,苦)經(jīng)過(guò)一個(gè)月的探索終于有點(diǎn)眉目了,我通過(guò)修改了WebRTC底層算法的部分邏輯實(shí)現(xiàn)又經(jīng)過(guò)無(wú)數(shù)次實(shí)際環(huán)境中的測(cè)試終于有一天項(xiàng)目經(jīng)理說(shuō)合格了(激動(dòng)的心,顫抖的手啊)。下面我將使用WebRTC的過(guò)程中遇到的部分問(wèn)題分享出來(lái)供大家參考:

    首先WebRTC的VAD模塊返回的是每一幀音頻數(shù)據(jù)是否為語(yǔ)音信號(hào)的標(biāo)志位,也就是直接使用的話(huà)接收到的是一幀一幀拼接的語(yǔ)音數(shù)據(jù),在實(shí)際項(xiàng)目中使用時(shí)不能滿(mǎn)足實(shí)際需要,聽(tīng)到的聲音斷斷續(xù)續(xù)的,所以這時(shí)就需要在WebRTC中VAD算法的基礎(chǔ)上再進(jìn)行一次封裝,這次封裝主要解決的為題是按照實(shí)際應(yīng)用中的那樣將每幀音頻按照語(yǔ)音,非語(yǔ)音分成完整的段。

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

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

  • 當(dāng)六個(gè)頻帶的局部似然比閾值超過(guò)閾值門(mén)限時(shí)判別為語(yǔ)音;
  • 當(dāng)六個(gè)頻帶的似然比閾值加權(quán)求和后得到的一個(gè)全局閾值超過(guò)預(yù)先設(shè)定的閾值門(mén)限時(shí)判定為語(yǔ)音。
  • 原始的算法當(dāng)滿(mǎn)足這兩者之一時(shí)就可以認(rèn)為此幀為語(yǔ)音幀,通過(guò)實(shí)驗(yàn)這樣做的方式得到的效果并不好,所以我通過(guò)屏蔽局部邏輯判斷進(jìn)行了測(cè)試,實(shí)驗(yàn)表明這樣做效果更好,端點(diǎn)檢測(cè)精度更高。

    最后在修改上述地方后我通過(guò)開(kāi)放似然比閾值接口實(shí)現(xiàn)了再多種環(huán)境下的端點(diǎn)檢測(cè)模式的設(shè)定。

    今天就先記錄到這里,后期我再詳細(xì)的描述WebRTC算法的工作流程和低信噪比環(huán)境下的優(yōu)化。

    《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專(zhuān)家共同創(chuàng)作,文字、視頻、音頻交互閱讀

    總結(jié)

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

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。