2014-01-21
HTK(Hidden Markov Model Toolkit) 是剑桥大学提供的一套开源语音识别研究工具。老外都是活雷锋啊,这么好的一套工具,全部源代码都免费给大家使用,造福全人类啊^O^
Windows下安装
首先去http://htk.eng.cam.ac.uk/注册,下载HTK-3.4.1.zip。然后解压,打开文本README,里面有详细的安装步骤。
首先你要安装了Microsoft Visual Studio,我用的是2010版。
然后把vc的路径加到环境变量Path里,我的路径是C:\Program Files\Microsoft Visual Studio 10.0\VC\bin。
(如果只是安装官方的方法编译,虽然能成功编译成exe文件,但运行时会出错,我搜索了一下,解决方案是:
1、这需要修改HTKLib文件夹下的htk_htklib_nt.mkf文件,共有两处需要修改:将文件中的HGraf.null.obj替换为HGraf_WIN32.obj、HGraf.null.olv替换为HGraf_WIN32.olv;
2、检查HTKTools文件夹下的Makefile.in文件,如果有"-lX11"字符的话将其删除,然后在cmd命令行中重新编译HTKTools文件夹下的htk_htktools_nt.mkf文件;)
然后打开命令窗口,去到解压目录,打依次命令:
mkdir bin.win32
VCVARS32
cd HTKLib
nmake /f htk_htklib_nt.mkf all
cd ..
cd HTKTools
nmake /f htk_htktools_nt.mkf all
cd ..
cd HLMLib
nmake /f htk_hlmlib_nt.mkf all
cd ..
cd HLMTools
nmake /f htk_hlmtools_nt.mkf all
2. 使用-录制视频
去到bin.win32目录下,执行 HSLab name.sig,就打开程序界面,录制音频,并保存为文件name.sig,这个是HTK自己的音频格式。
3. 使用-提取特征
首先创建一个config文件(没有后缀名),里面是文本
# Example config file
TARGETKIND = MFCC_E_D_A
NUMCHANS = 20
WINDOWSIZE = 250000.0 # ie 25 msecs
TARGETRATE = 100000.0
PREEMCOEF = 0.97
ENORMALISE = T
HSHELL: TRACE = 02 # octal
HPARM: TRACE = 0101
再执行如下命令,就把name.sig的mfcc特征保存到tgt.mfc文件里。
HCopy -C config -s 100 -e -100 name.sig tgt.mfc
得出的结果是一个二进制文件,如果想看看里面的数值,可以这样
HList -h tgt.mfc > tgt.txt
4. 使用Windows wav文件
如果想分析Windows的wav文件,先在config里加入一行
SOURCEFORMAT = WAVEFORM
然后命令里加入参数-F,比如:
HCopy -C config -s 100 -e -100 -F WAV name.wav tgt.mfc
5. OSX 下安装失败,懒得搞了,呵呵。
6. 文档
下载htkbook.pdf.zip。