首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于LIUM的语音活动检测(VAD/SAR)

基于LIUM的语音活动检测(VAD/SAR)
EN

Stack Overflow用户
提问于 2015-12-15 09:23:54
回答 1查看 1.1K关注 0票数 1

我写了一个shell脚本来训练几个GMMs,用于一些声音活动和沉默。因此,我使用了LIUM扬声器的二次化工具包。我想用这个来做语音活动检测。下面的脚本通过使用Sphinx4从wav音频文件中提取MFCC特性,对这些文件进行GMM训练,并应用维特比解码进行分段。但是,结果很差,即分割结果是完全错误的。这绝对不应该是这样的,因为我正在将GMMs应用于培训集本身。我做错了什么?我在这方面付出了很大的努力,但仍然无法使它发挥作用。非常感谢您的帮助,提前!

顺便说一句:我双倍地检查了我的wav文件的输入格式,根据Sphinx4文档,它是单16位的。此外,我还尝试了许多不同的参数设置,特别是emCtrl (训练GMM)和dPenalty (Viterbi解码进行分段)等参数。对我没什么帮助。

下面是我的shell脚本:

代码语言:javascript
复制
# !/bin/bash

wav=$1
base=`basename $wav .wav`
show=$base
fDescIn="audio16kHz2sphinx,1:1:0:0:0:0,13,0:0:0"
fDescOut="sphinx,1:1:0:0:0:0,13,0:0:0"
features="./%s.mfcc"
seg="./%s.seg"
gmmInit="./%s.init.gmms" # output GMM, %s is replaced by $show
gmm="./%s.gmms"

# Extract MFCC features
java -Xmx2048m -classpath lium.jar \
fr.lium.spkDiarization.tools.Wave2FeatureSet \
--fInputMask=$wav --sInputMask="" --fInputDesc=$fDescIn \
--fOutputMask=$base.mfcc --fOutputDesc=fDescOut $show

# Initialize the GMM 
java -Xmx1024m -cp lium.jar \
fr.lium.spkDiarization.programs.MTrainInit \
--sInputMask=$show".seg" --fInputMask=$base.mfcc
--fInputDesc=$fDescOut --kind=DIAG --nbComp=16 \
--emInitMethod=split_all --emCtrl=1,5,0.05 --tOutputMask=$gmmInit $show

# Train GMMs via EM
java -Xmx1024m -cp lium.jar \
fr.lium.spkDiarization.programs.MTrainEM \
--sInputMask=$show".seg" --fInputMask=$base.mfcc --emCtrl=10,20,0.01 \
--fInputDesc=$fDescOut --tInputMask=$gmmInit --tOutputMask=$gmm $show

# Segmentation
iseg=./$datadir/$show.i.seg
pmsseg=./$datadir/$show.pms.seg
java -Xmx2048m -cp lium.jar \
fr.lium.spkDiarization.programs.MDecode \
--fInputDesc=$fDescOut --fInputMask=$base.mfcc --sInputMask=$show.out2.seg \
--sOutputMask=$show.result.seg --dPenality=1,1,1,1 --tInputMask=$gmm $show
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-16 09:32:09

在fDescIn和fDescOut的末尾添加":1“是有效的。这指定了规范化方法,在本例中为集群方式。":0“的分段-明智也工作,并取得了类似的结果。

LIUM官方网站的代码示例在这方面是错误的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34285324

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档