HTK安装和测试
来源:互联网 发布:金克丝神龙烈焰淘宝 编辑:程序博客网 时间:2024/05/21 15:48
整了大半天,终于把HTK安装完成并测试成功了,查了不少资料,为了感谢前辈的成果,我也记录一下~
HTK的全称是”Hidden Markov Model Toolkit”,是英国剑桥大学工程学院开发的隐马尔可夫模型(后面简称为隐马模型)工具包,可以方便有效的建立及操作隐马模型。隐马模型在许多人工智能领域都有着成功的应用,比如语音识别,当前国际上主流的语音识别系统仍是基于隐马模型建立的。HTK的开发也主要是针对语音识别的应用及研究。
HTK是一个开源工具包,http://htk.eng.cam.ac.uk/是其官网,可以在http://htk.eng.cam.ac.uk/download.shtml进行下载需要的工具,其中sources和samples(本文用samples中的HTKDemo文件夹)会在测试的时候用到, http://htk.eng.cam.ac.uk/进行免费下载,工具包中包含许许多多的模块及工具,都是用纯C代码写成的,基本都以H开头。其中也有非常详细的文档可供参考。http://htk.eng.cam.ac.uk/docs/inst-win.shtml是整个安装过程的官网介绍,可以耐心看下~
安装:
第一步:HTK要使用 Microsoft Visual Studio进行编译,所以要6.0以上版本。
第二步:侧似乎需要一个Perl翻译,所以需要安装一个ActivePerl.(下载地址http://www.activestate.com/activeperl)
(注意:如果自己电脑中已经安装过oracle,可以会报“无法启动此程序,计算机丢失Perl58.dll’”的错误,点击确定后报出错误信息:Can't load D:\oracle\product\10.2.0\db_1\perl\5.8.3\lib/MSWin32-x86-multi-threa d/auto/File/Glob/Glob.dll' for module File::Glob: load_file:找不到指定的模块。 a t D:\oracle\product\10.2.0\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/XSLoader .pm line 68.
此错应该是早前安装的Oracle与新装的Perl冲突了,而且冲突是因为Oracle在安装的时候往我们系统中添加了一个Perl5Lib的环境变量,而这个环境变量指向的则是Oracle安装目录下那个模块不全的Perl,从信息提示可以知道为Oracle Home/perl目录。改进方法如下:
1、经常与Oracle打交道而偶尔玩下perl的一类朋友:如果是这样的话,建议就不要对环境变量Perl5Lib动手了。在运行Perl命令之前,设置下当前命令行窗口的临时Perl5Lib变量就可以了。如笔者的Perl10安装在G盘根目录下,则在运行Cmd后,使用命令Set Perl5Lib="G:\\Perl\bin\"改变下环境变量Perl5Lib的指向,该命令作用域为Session级的,即重开Cmd后还得再次设置。
2、 与上述情况相反的:可以先备份下Per5lLib的内容,然后将Perl5Lib清空或者设置为G:\\Perl\Lib即OK
3、两者都经常打交道的:将G:\\Perl\Bin加到Perl5Lib的前面,注意,不是替换。)
第三步 :解压HTK-3.4.1.zip到E盘
1、开始\运行\cmd 回车
2、 进入 e:\htk 目录。这里用到两条命令: e: 和 cd htk
3、建立文件夹: mk bin.win32
4、运行命令:VCVARS32。如果提示找不到命令,大概解决办法是安装VC++6.0 或者其后版本。然后设置好path变量(在环境变量中的系统变量path后面添加D:\Program Files\Microsoft Visual Studio 10.0\VC\bin,记得路径之间分号隔开);
5、输入如下命令,来编译HTK Library:
cd HTKLib(进入路径)
nmake /f htk_htklib_nt.mkf all
cd ..(返回上级目录)
同理编译HTK TOOLS ,输入以下命令:
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
cd ..
6、编译成功后,打开bin.win32文件夹,会发现刚才6,7步编译结果就存在此文件夹中,如图:(http://www.zhaomingming.cn/HTK语音识别/HTK工具.jpg)所示,其中, 你可以找找有没有这些文件,在使用篇中我们用的到:
HSLab.exe 录音,标记工具
Hcopy.exe 从语音提取特征参数的工具
HInit.exe 和 HCompV.exe 对HMM模型初始化的工具,注意,这里需要对每个模型都要使用此命令进行初始化
HRest.exe 对模型进行迭代训练的工具
HParse.exe 语法转网络的工具,发音转本文用到的。
HSGen.exe 语法查错工具
HVite.exe 解码工具,也就是识别工具。可以用命令行方式使用,也可以用交互方式使用。
其他命令本文将不会用的到。
7、.既然安装好了,不妨测试一下安装是否成功,这里需要电脑安装有 ActivePerl,将sampless文件夹下HTKDemo文件复制到E:\htk下,
配置环境变量输入命令 path=%path%;e:\htk\bin.win32
测试,输入命令 HInit
然后使用如下命令(测试Demo):
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(这可能会提示perl不是内部命令,需要在系统变量中配路径D:\Perl\bin,如果安装了oracle,解决方案按文章最初所给方法解决)
(重点提示)如果无法识别HSLab不是内部命令,将将htk目录下的HTKLib中的HGraf.null.obj替换为HGraf_WIN32.obj、HGraf.null.olv替换为 HGraf_WIN32.olv。
测试完成,ok了 ,碰到问题,最好找谷歌。。。
我主要参看(http://www.cnblogs.com/mingzhao810/archive/2012/08/03/2617674.html)
附加一些网站吧:http://my.oschina.net/jamesju/blog/112602
http://www.cnblogs.com/yangecnu/archive/2012/03/30/KinectSDK_Geting_Started.html
- HTK安装和测试
- Linux下安装测试HTK
- HTK在windows下安装于测试
- HTK安装
- htk安装
- Linux下安装编译并且测试HTK语音识别库
- Linux下安装编译并且测试HTK语音识别库
- HTK 安装、编译以及测试——Ubuntu 14.04
- HTK 安装、编译以及测试——Ubuntu 16.04
- HTK语音识别工具包的安装和编译
- htk安装和在matlab里的使用
- 语音识别-----HTK语音识别工具包的安装和编译
- HTK语音识别工具包的安装和编译
- htk安装与初识
- HTK工具的安装
- Ubuntu14.04安装HTK
- MAC 安装HTK
- HTK-3.4.1在ubuntu 12.04下的安装及安装测试
- 快速搭建Android NDK环境
- 应用360云盘与SVN版本管理服务器搭建基于云端的版本控制软件
- cout << (a += a -= a*a)和cout << a += a -= a*a
- VisualStudio开发工具中的C#主流控件属性及事件汇总(菜鸟必备)
- 【leetcode】Add Binary
- HTK安装和测试
- (11)UDP:用户数据报协议
- (12)广播和多播
- (13)IGMP:Internet组管理协议
- (14)DNS:域名系统
- (15)TFTP:简单文件传送协议
- (16)BOOTP:引导程序协议
- (17)TCP:传输控制协议
- (18)TCP连接的建立与终止