实验室有语音识别的部分,所以在离开雁栖湖之前希望自己可以掌握一些HTK语音工具的流程及知识,以便回到实验室之后会的多一点,不至于大脑一片空白
想学HTK已经有很长一段时间了,有同学建议先把 《HTK BOOK》
看一遍,然后就能明白语音识别工作流程什么的了,于是我就打印了一本厚厚的英文《HTK
BOOK》,也相应下载了前几章的中文翻译,对照着看。我觉得一定是我之前从没有基础的原因,看的很费力,书上提到 HTK
工具的时候,由于自己没有对照着在环境里做一些学习的工作,导致这些工具的名字还有指令方法让我觉得很晦涩难懂。
在美美和高高同学的建议下,我才从困境中走出来。。百度了一些HTK学习经验, HTK
在windows下面的安装等内容。才迈出了正确学习的第一步:安装 HTK 工具包,并配置环境。
对于我这样一个语音识别的初级菜鸟来说,我认为我总结的这个简单体验教程,应该可以帮助刚学 HTK
的同仁们,有些的啰嗦的地方,大家体谅~ 有错误或者问题,欢迎在底下留言交流。
begin!
注:教程中部分内容参考了:《windows下编译htk3.4
傻瓜式教程》——ICT
superyang
Step 1
下载 HTK 和 HTK – samples 两个压缩文件,保存至D盘根目录下新建的HTK文件夹。
我下载的版本:3.4.1
遇到问题:(1)HTK官方网站需要先注册
(2)(chrome浏览器)注册后下载速度为0。
解决办法:点“取消下载”,再点“重新下载”。
Step 2
观察下载的文件夹里都有些什么:
在解压后的HTK文件夹里,阅读README介绍(我用的写字板),重要的内容截图如下(内容是在windows下的编辑及安装):
这里翻译一下第一部分,即在windows下安装的一些先决条件(参考《windows下编译htk3.4
傻瓜式教程》——ICT superyang):
(1)
HTK在visual studio
下编译测试通过(主要是为了使用nmake)
(2)
测试demo时,需要安装ActivePerl(Perl解释器,为了运行测试脚本)
(3)
需要7-zip或winzip解压工具
(4)
需要理解一些DOS命令行知识
(5)
Path中需要包含路径C:\Program
Files\Microsoft Visual Studio .NET \Vc7\bin(Visual )或者C:\Program Files\Microsoft Visual
Studio\VC98\bin(VC6.0)
第二部分即是接下来做的内容。
Step 3
安装VS和ActivePerl和UltraEdit(一个非常强大的文本编辑器)
我安装的版本是:Visual Studio 和 ActivePerl-5.16.3.1604和ue_chinese21.10
Step 4
开始编译:
1)
打开DOS窗口
点击开始——在搜索框里输入“运行”——点击运行,输入cmd,回车
2)进入到解压后的HTK-3.4.1文件夹下的htk文件夹中
由于我本身对DOS命令就是小白,看截图可看到最终尝试成功的过程
3)
在本目录下创建一个名为bin.win32的文件夹
这个文件夹是用来存放htk生成的各个exe程序的
4)运行VCVARS32
找到VC的安装目录下的bin文件夹,我的是在
D:\Program
Files\Microsoft Visual Studio 10.0\VC\bin
将该路径添加到path变量中
在cmd中输入:path=%path%;
D:\Program Files\Microsoft Visual Studio
10.0\VC\bin即可,添加完成后继续输入path,看看有没有添加成功,如果添加成功,输入VCVARS32
遇到问题!!!:
原因就是在添加bin路径的时候,在D:前面有一个空格!!!
解决办法:把空格去掉重新添加了一遍,但由于我还不会删除添加过得路径,所以之前添加的错误的也在里面了。。无所谓了。以后会删了再删。
5)编译HTKLib
进入到HTKLib目录:cd HTKLib,在命令行里输入nmake/f htk_htklib_nt.mkf
all进行编译
输入后,DOS窗口会出现如下情况(截取其中部分):
这是在编译的过程,一段时间后,编译成功。
本次安装htk没有出现报错,但是如果出现报错的话,请参照《windows下编译htk3.4傻瓜式教程》
6)编译HTKTools
在命令行中输入cd..,表示返回上一层目录,再输入
cd HTKTools,进入HTKTools目录,输入nmake/f htk_htktools_nt.mkf all
编译该目录下的文件。
编译好了:
7)编译HLMLib
输入cd..,再输入cd HLMLib,进入HLMLib目录,输入:nmake/f htk_hlmlib_nt.mkf
all编译该目录下的文件。
8)编译HLMTools
输入cd..,再输入cd HLMTools,进入HLMTools目录,输入:nmake/f htk_hlmtools_nt.mkf
all编译该目录下的文件。
这时候我们已经编译完所有exe程序,我们打开bin.win32文件夹看一下,如果如下图所示,则证明已经编译成功。
Step
5
测试编译生成的程序是否正确
1)
为了能在DOS命令行中使用我们编译生成的工具,要将生成的工具路径加入到path中。
在cmd中输入path=%path%;D:\HTK\HTK-3.4.1\htk\bin.win32回车,再输入path查看添加后的结果:
我们接下来输入HInit查看一下能否成功运行编译后的程序,如果如下图所示,则证明path已经被正确的添加进来了~
2)为了运行perl测试脚本,我们需要在机器中安装perl解释器,也就是一开始让大家安装的ActivePerl
3)进入到HTKDemo目录(在HTK-samples文件夹下),输入perl runDemo.pl
configs\monPlainM1S1.dcf运行测试脚本,如下图:
出现了未知的错误!!!呜呜。
好在在网上找到了解决办法。
解决办法:
按照解决办法,仍旧是进入到HTKDemo目录(在HTK-samples文件夹下),输入perl
runDemo.pl configs\monPlainM1S1.dcf运行测试脚本。
然后就出现了胜利的画面!!!
安装HTK结束~
发现写博文不易啊,尤其还要加图片!向在网上分享自己经验的学者们致敬!!!Keep
learning from you!
by mengmeng