HTK学习1:安装编译
选自:http://www.cnblogs.com/mingzhao810/archive/2012/08/03/2617674.html
HTK(HMM Toolkit)一款基于hmm模型的语音处理工具,早就听说它了,一直因为用MATLAB中的工具箱在学习,或自己写代码在做HMM方面的试验,所以没有接触到它。现在,上海朋友家里的网速超赞,我就趁投简历的时间空隙,下载了它的一些资料,包括安装文件,使用文档(最好中英文版都要找到,有时中文版更简洁,更节省时间,英文版则较详细,当发现自己调试不通过时,就有参考了),并做了基本的识别实验。下面会详细记录本次实验的过程。
资料搜集:
HTK官方主页:http://htk.eng.cam.ac.uk/,里面有最新版本的安装文件,有其文档材料htkbook.pdf,当然这是英文版的,中文版的叫HTK基础指南。下载的时候,你需要先注册用户,记住你的密码,后面在其FTP服务器上下载软件的时候需要使用到。
在百度文库中搜索关键字 一个简单的HTK入门参考例子 即可得到一份更简洁的文档;
还有一篇博文需要用到:http://www.cnblogs.com/eboard/archive/2012/02/20/HTK.html。
ps:或许你还需要安装 Active Perl...如果你没有安装的话。。。
好了,我们开始:
我的平台是:windows xp sp3搭配 IBM-42 配置很低很低呀
-------------------------------------------------------------------------------
安装篇
-------------------------------------------------------------------------------
1.下载到HTK-3.4.1.ZIP后,解压,将其中的htk文件夹整个复制到E盘根目录下。
2.将原来htk_htklib_nt.mkf文件中备份,然后修改下列两处,以使其录音软件可在WIN32界面下运行:
HGraf.null.obj改为HGraf_WIN32.obj
HGraf.null.olv改为HGraf_WIN32.olv
3. 开始\运行\cmd 回车
4. 进入 e:\htk 目录。这里用到两条命令: e: 和 cd htk
5.建立文件夹: mk bin.win32
6.运行命令:VCVARS32。如果提示找不到命令,大概解决办法是安装VC++6.0 或者其后版本。然后设置好path变量,后面凡是遇到错误提示:找不到命令的,一般都是VC++6.0没有安装,或者安装了,path变量没有设置好,当然,你也可以在你电脑上找到VCVARS32.EXE,然后复制到当前文件夹。具体请自查。
7.输入如下命令,来编译HTK Library:
cd HTKLib
nmake /f htk_htklib_nt.mkf all
cd ..
8.编译HTK TOOLS ,输入以下命令:
cd HTKTools
nmake /f htk_htktools_nt.mkf all
cd ..
cd HLMLibrary
nmake /f htk_hlmlib_nt.mkf all
cd ..
cd HLMTools
nmake /f htk_hlmtools_nt.mkf all
cd ..
9.编译成功后,打开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 解码工具,也就是识别工具。可以用命令行方式使用,也可以用交互方式使用。
其他命令本文将不会用的到。
10.既然安装好了,不妨测试一下安装是否成功,这里需要电脑安装有 ActivePerl,将HTK3.4.1文件夹下HTKDemo文件复制到E:\htk下,然后使用如下命令:
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
没有提示错误就看最后一步吧。
11.将e:\htk\bin.win32路径添加到环境变量path中。注销重登录,然后在命令行下输入path回车,找到path中有e:\htk\bin.win32即可。
好了,安装就总结到这里。中间有纰漏的地方,一经发现,会立即更改。
HTK学习1:安装编译的更多相关文章
- (转)redis 学习笔记(1)-编译、启动、停止
redis 学习笔记(1)-编译.启动.停止 一.下载.编译 redis是以源码方式发行的,先下载源码,然后在linux下编译 1.1 http://www.redis.io/download 先 ...
- Hadoop学习------Hadoop安装方式之(二):伪分布部署
要想发挥Hadoop分布式.并行处理的优势,还须以分布式模式来部署运行Hadoop.单机模式是指Hadoop在单个节点上以单个进程的方式运行,伪分布模式是指在单个节点上运行NameNode.DataN ...
- 2018-05-11-机器学习环境安装-I7-GTX960M-UBUNTU1804-CUDA90-CUDNN712-TF180-KERAS-GYM-ATARI-BOX2D
layout: post title: 2018-05-11-机器学习环境安装-I7-GTX960M-UBUNTU1804-CUDA90-CUDNN712-TF180-KERAS-GYM-ATARI- ...
- Linux中源码安装编译Vim
Linux中源码安装编译Vim Linux下学习工作少不了编辑器,Vim能使你的工作效率成倍的提高.在Ubuntu上安装vim使用命令直接安装很简单.但有时还是需要自己手动编译安装.例如: vim中的 ...
- 从零开始学习CocoaPods安装和使用
从零开始学习CocoaPods安装和使用 转载: Code4App原创:http://code4app.com/article/cocoapods-install-usage http://m.i ...
- SystemTap 学习笔记 - 安装篇
https://segmentfault.com/a/1190000000671438 在安装前,需要知道下自己的系统环境,我的环境如下: uname -r 2.6.18-308.el5 Linux ...
- 比特币Bitcoin源代码安装编译
body{ font: 16px/1.5em 微软雅黑,arial,verdana,helvetica,sans-serif; } 比特币 (货币符号: ฿;英文名:Bitcoin;英文 ...
- linux centos安装编译phantomjs 2.0的方法
phantomjs 2.0最新版的官方不提供编译好的文件下载,只能自己编译,有教程但是过于简单,特别是服务器上要安装N多的支持.折腾到现在终于装好了并且能正常运行了,截图mark一下: linux c ...
- Hbase深入学习(二) 安装hbase
Hbase深入学习(二) 安装hbase This guidedescribes setup of a standalone hbase instance that uses the local fi ...
- linux_安装_安装编译phantomjs 2.0的方法_转
项目中要对数据公式webkit渲染,phantmjs 2.0的效果好比1.9好不少. 安装过程中 坑比较多. 转载文章: phantomjs 2.0最新版的官方不提供编译好的文件下载,只能自己编译,有 ...
随机推荐
- JS通过getBoundingClientRect获取的height可能与css设置的height不一致
发现如果DOM元素有padding-top或者padding-bottom值时, $(dom).height() = dom.style.display + padding-top + padding ...
- linux设置和删除环境变量
删除环境变量: unset -v PKG_CONFIG_PATH 添加环境变量: export PKG_CONFIG_PATH="你需要设置的路径", 例如: export LAN ...
- imageserver
https://bitbucket.org/tamtam-nl/tamtam-nuget-imageserver/overview https://www.nuget.org/packages/Tam ...
- nuget包管理器控制台下的powershell脚本介绍
http://personball.com/powershell/2016/07/15/powershell-tips 定制自己的powershell,减少重复工作 安装一系列自己的常用nuget包 ...
- osharp3 操作日志之数据日志 控制增强
osharp3 原来的数据日志,有配置文件中有这总开关,DataLoggingEnabled,原来的程序是,这个总开关关了,就无法记录数据日志了,,如果开了,,他不管记录不记录数据日志,系统都会存数据 ...
- The method below converts an array of objects to a DataTable object in C#.
http://www.c-sharpcorner.com/blogs/dynamic-objects-conveting-into-data-table-in-c-sharp1 public stat ...
- jquery ajax 提交 FormData
$('form').submit(function(){ var formdata=new FormData(this); $.ajax({ type:'POST', url:'/url/path', ...
- js字符串转成数字的三种方法
js读取的html代码中获得的值 ,统统是以字符串的形式呈现的,为了方便我们后面对数据的操作,有时候我们有必要进行转换一下. 方法主要有三种 转换函数.强制类型转换.利用js变量弱类型转换. 1. 转 ...
- Struts2 action的单例与多例
struts 2的Action是多实例的并非单例,也就是每次请求产生一个Action的对象.原因是:struts 2的Action中包含数据,例如你在页面填写的数据就会包含在Action的成员变量里面 ...
- Pattern Recognition and Machine Learning (preface translation)
前言 鉴于机器学习产生自计算机科学,模式识别却起源于工程学.然而,这些活动能被看做同一个领域的两个方面,并且他们同时在这过去的十年间经历了本质上的发展.特别是,当图像模型已经作为一个用来描述和应用概率 ...