HTK是用来进行自动语音识别研究的工具包,它由剑桥大学工程系的机器智能实验室开发的开源软件,全称叫做The HiddenMarkov Toolkit。官方网站:http://htk.eng.cam.ac.uk
这个工具包必须安装VS后才能使用。因为它是基于C进行开发的。HTK工具包的安装需要配置一个VS的环境变量。值得一提的是,我们现在能安装的VS版本中的环境变量路径与HTK工具包中提示的路径大不一样了。像本人安装的VS2017版本的所使用的环境变量为 D:\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build。
HTK工具包的安装需要在官网注册后才能下载。解压后,根据HTK自带的README,大家可以按照步骤自行安装。(注:需要在htk文件下的cmd窗口进行操作)
HTK工具包主要有以下几个功能:
HSLab.exe 录音,标记工具
Hcopy.exe 从语音提取特征参数的工具
HInit.exe 和 HCompV.exe 对HMM模型初始化的工具,注意,这里需要对每个模型都要使用此命令进行初始化
HRest.exe 对模型进行迭代训练的工具
HParse.exe 语法转网络的工具,发音转本文用到的。
HSGen.exe 语法查错工具
HVite.exe 解码工具,也就是识别工具。可以用命令行方式使用,也可以用交互方式使用。
当安装完成后,该如何使用这个工具包呢?笔者以接下来的实验中所用到的提取MFCC特征举例。首先需要新建一个文件夹,然后在复制Hcopy.exe到该文件下,然后需要配置两个文件list.scp和tr_wav.cfg。整体框架如下:
list.scp文件中写入待提取的WAV文件名与提取MFCC特征后的,mfc文件名。
tr_wav.cfg文件存入提取MFCC特征的参数。
#[MODULE] PARAMETER = VALUE
SOURCEKIND = WAVEFORM
SOURCEFORMAT = WAV
ZMEANSOURCE = F #
TARGETKIND = MFCC_E_D_A_Z
TARGETRATE = 100000.0 # frame period = 10msec
SAVECOMPRESSSED = T
SAVEWITHCRC = T
WINDOWSIZE = 250000.0 # window size = 25msec
USEHAMMING = T
PREEMCOEF = 0.97 # 1st order preemphasis, coefficient = 0.97
NUMCHANS = 26 # num. of filterbank channel = 26
CEPLIFTER = 22 # num. of cepstra = 22
NUMCEPS = 12 # num. of MFCC coefficient = 12
ENORMALIZE = T # energy normalization (live: F, otherwise: T)
ALLOWXWRDEXP = T # Needed for cross word systems
FORCECXTEXP = T # Needed for cross word systems
#HSHELL Parameters
HSHELL: TRACE = 0002 # cotal
#HPARM Parameters
HPARM: TRACE = 0101
#HLABEL Parameters
HLABEL: TRACE = 0010
#HNET Parameters
HNET: TRACE = 0001 # Needed for recognition
#HREc Parameters
HREC: FORCEOUT = T
在这个文件夹下打开cmd,运行 hcopy -A -D -T 1 -C tr_wav.cfg -S .\list.scp ,即可提取出所需要.mfc文件。
成功的标志如下图所示:
参考博客:
2.https://blog.csdn.net/jojozhangju/article/details/18714961