关于webrtc的VAD(voice activity dectctor)算法说明
来源:互联网 发布:数据透视表差异百分比 编辑:程序博客网 时间:2024/05/18 00:25
webrtc 的vad使用GMM(Gaussian Mixture Model)对语音和噪声建模,通过相应的概率来判断语音和噪声。这种算法
的优点是它是无监督的,不需要严格的训练。GMM的噪声和语音模型如下:
p(xk|z,rk)={1/sqrt(2*pi*sita^2)} * exp{ - (xk-uz) ^2/(2 * sita ^2 )}
XK是选取的特征量,在webrtc的VAD中具体是指子带能量,rk是包括均值uz和方差sita的参数集合。z=0,代表噪声;z=1,代表语音。
webrtc中的vad的C代码的详细步骤如下:
1.设定模式 :
依据hangover、单独判决和全局判决门限将VAD检测模式分为以下4类
0-quality mode
1- Low bitrate mode
2-Aggressive mode
3- Very aggressive mode
2.webrtc的VAD只支持帧长10ms,20ms和30ms,为此事先要加以判断,不符合条件的返回-1。
3.webrtc 的VAD核心计算只支持8KHz采样率,所以当输入信号采样率为32KHz 或者16KHz 时都要先下采样到8KHz 。
4.在8Khz采样率上分为两个步骤
4.1 计算子带能量
子带分为80~250Hz,250~500Hz,500~1000Hz,1000~2000Hz,2000~3000Hz,3000~4000Hz
需要分别计算上述子带的能量feature_vector。
4.2 通过高斯混合模型分别计算语音和非语音的概率,使用假设检验的方法确定信号的类型。
首先通过高斯模型计算假设检验中的H0和H1(C代码是用h0_test和h1_test表示),通过门限判决vadflag;
然后更新概率计算所需要的语音均值(speech_means)、噪声的均值(noise_means)、语音方差(speech_stds)
和噪声方差(noise_stds)。
- 关于webrtc的VAD(voice activity dectctor)算法说明
- WebRtc 的VAD算法解析
- WebRtc 的VAD算法解析
- webrtc中关于VAD的总结
- WebRTC之VAD算法
- 语音端点检测(voice activity detection,VAD)
- WebRTC之语音活动检测(VAD)算法
- webrtc 音频VAD 检测
- webrtc vad小bug
- Android Studio 单独编译WebRTC的 vad 模块
- VAD算法
- 关于编译WebRTC Linux/Android版源码的说明
- webrtc回音消除算法的delay值说明
- webrtc回音消除算法的delay值说明
- 关于Activity的生命周期的说明
- 关于Activity跳转时机的小说明
- VAD
- webrtc 的回声抵消算法
- IntelliJ IDEA快捷键
- (Relax 数论1.27)POJ 1150 The Last Non-zero Digit(求p(n,m)的最后一个非零数字)
- 放大的X 2565
- mysql 清除缓存reset query cache;
- Java程序员集合框架面试题
- 关于webrtc的VAD(voice activity dectctor)算法说明
- IDE工具之myEclipse篇三::配合Git管理项目,项目提交不上去
- Browser缓存机制浅析
- 级联菜单1
- hadoop C++ pipes 运行实现
- QueryRunner-2
- 网页编码就是那点事
- 我的内核学习笔记2:platform设备模型
- Everything研究之快速获取USN记录的文件路径