此文根据http://www.cnblogs.com/eboard/archive/2012/02/20/HTK.html原文修改而成,只是修改了部分我安装HTK时遇到的一些问题。
step1:下载HMM 的开发包HTK,现在的版本是3.4.1.可以从CMU的官网进行下载http://htk.eng.cam.ac.uk/
step2:下载后解压HTK工具包,我解压后的目录为:D:\htk\
step3:确保的环境变量Path包含路径(此为本机vs2008的安装路径,其他版本也行)C:\Program Files\Microsoft Visual Studio 9.0\Common7\Tools
step4:打开DOS 命令窗口, 在命令窗口中输入:cd htk 就进入了htk文件夹--》输入:mkdir bin.win32就在该文件夹下建立了一个新文件夹bin.win32 .
step5: 在命令窗口中输入:vsvars32(如果不行,可以回到d盘目录,再输入vsvars32)就运行了vsvars32
step6:接下来编译htk库文件:(我当前的目录是D:\htk)
1.cd HTKLib(进入HTKLib文件夹 )--> 使用命令:nmake /f htk_htklib_nt.mkf all (编译该文件夹下所有的库文件)。
2.cd ..(退出该文件夹)-->cd HTKTools(进入HTKTools文件夹 )-->nmake /f htk_htktools_nt.mkf all
3.cd ..(退出该文件夹)--> cd HLMLib (进入HLMLib文件夹 )-->nmake /f htk_hlmlib_nt.mkf all
4.cd ..(退出该文件夹)--> cd HLMTools(进入HLMTools文件夹 )-->nmake /f htk_hlmtools_nt.mkf all
5.cd ..
完成后,所有生成的exe文件在bin.win32文件夹中,然后将该目录加入环境变量PATH中,即可(我的是D:\htk\bin.win32)。
其实到现在已经安装好,但是还有一些小问题,先往下看:
下边运行HTKDemo中的例子,此时要确保电脑中装有ActivePerl,,然后依次输入下边的命令:
cd HTKDemo
mkdir hmms
cd hmms
mkdir tmp
mkdir hmm.0
mkdir hmm.1
mkdir hmm.2
mkdir hmm.3
cd ..
mkdir proto
mkdir acc
mkdir test
perl runDemo.pl configs\monPlainM1S1.dcf (运行此命令时有两个前提条件:1.需要把HTK-samples-3.4.1.zip解压后的sample文件放到htk文件夹里 2.运行此命令的路径是htk\samples\HTKDemo(我的是d:\htk\samples\HTKDemo))
结果如下:
此时,HTKDemo中的例子运行成功。
但是在Windows系统下,当在命令窗口中使用HSLab
FATAL ERROR - Terminating program HSlab
解决办法如下:
第一步:
修改htk\HTKLib\htk_htklib_nt.mkf(两处)(右击用记事本打开),将HGraf.null.obj替换为HGraf_WIN32.obj、HGraf.null.olv替换为 HGraf_WIN32.olv(查找替换)。
然后(进入HTKLib文件夹 )--> 使用命令:nmake /f htk_htklib_nt.mkf all重新编译HTKLib 下的\htk_htklib_nt.mkf。
第二步:
打开htk \HTKTools下的Makefile.in(右击用记事本打开),将其中"-lX11"删除(查找),然后(进入HTKTools文件夹 )-->nmake /f htk_htktools_nt.mkf all重新编译生成 htk_htktools_nt.mkf
在Win7 下测试通过