HTK语音识别示例(Ubuntu)
一、简介
HTK(Hidden Markov Model Toolkit)是一款语音识别工具包,诞生于Cambridge University Engineering Department (CUED),后来几经易手,目前的HTK3由CUED和Microsoft维护。现在Microsoft对HTK依旧保留一定的版权,但是源码可以免费获得,用于教学和科研是没有问题的。
这里是我使用的源码与教程的当时版本HTK-3.4.1:
源码:http://pan.baidu.com/s/1gf9qAD9
教程htkbook:http://vdisk.weibo.com/s/A9EtgmXv-mEgn
其他高手中文版教程(针对windows):http://pan.baidu.com/s/1jHsiPpW
最新源码与文档可以查询官网:
http://htk.eng.cam.ac.uk/
以下是我在范例中使用到的音频和相关脚本文件等资料:
字典文件:http://pan.baidu.com/s/1mgJZPFE
相关脚本:http://pan.baidu.com/s/1i3Hyfv3
训练音频:http://pan.baidu.com/s/1dDEOxtJ
测试音频:http://pan.baidu.com/s/1jGuvyPS
鉴于HTK Book里给的sample一点而都不simple,作为初学者,各种麻烦还是很折腾人的。
这里,我“篡改”了HTM Book示例的部分流程,以求简单。
二、流程概览:
整个流程就如同下图一样,首先我们录制语音,然后HMM模块处理语音文件,之后便被识别出相应的文本文件。

那么,htk扮演的角色是什么呢?如下图,htk的作用就是训练出HMM模块。
为什么说是“训练”呢?简单的说,就是因为各个人的口音不同,所以,如果要“训练”HMM模块来适应不同的口音。

以下,我将训练出这样的HMM模块:识别“RED”, “YELLOW”, “BLUE”三个单词,步骤为
在此,还感谢前辈的探索,帮了我帮了我不少:
http://blog.csdn.net/wbgxx333/article/details/17639373
HTK语音识别示例(Ubuntu)的更多相关文章
- Ubuntu中安装编译并测试HTK语音识别库
1.在网上看到首先必须确保电脑上安装了g++和libx11 g++ --version //检测g++版本 sudo apt-get install libx11-dev:i386 2.然后可从HTK ...
- 【百度语音识别】JavaAPI方式语音识别示例
https://ai.baidu.com/forum/topic/show/496730
- 机器学习&数据挖掘笔记_13(用htk完成简单的孤立词识别)
最近在看图模型中著名的HMM算法,对应的一些理论公式也能看懂个大概,就是不太明白怎样在一个具体的机器学习问题(比如分类,回归)中使用HMM,特别是一些有关状态变量.观察变量和实际问题中变量的对应关系, ...
- 基于HTK语音工具包进行孤立词识别的使用教程
选自:http://my.oschina.net/jamesju/blog/116151 1前言 最近一直在研究HTK语音识别工具包,前几天完成了工具包的安装编译和测试,这几天又按耐不住好奇,决定自己 ...
- HTK学习2:工具使用
选自:http://www.cnblogs.com/mingzhao810/archive/2012/08/03/2617674.html 这个是重点,呵呵,本部分会讨论到如下内容: 1. 建立语音材 ...
- HTK学习1:安装编译
选自:http://www.cnblogs.com/mingzhao810/archive/2012/08/03/2617674.html HTK(HMM Toolkit)一款基于hmm模型的语音处理 ...
- 英特尔实感SDK 代码示例
原文地址 摘要 本套代码示例针对巴西英特尔实感动手实验室创建,旨在帮助参与人员了解如何使用英特尔® 实感™ 软件开发套件. 12 个示例使用 C# SDK 包装程序,提供了简单的基于控制台的应用,支持 ...
- 如何在Ubuntu Server 18.04 LTS中配置静态IP地址
安装Ubuntu Server 18.04后需要分配一个的静态IP地址.先前的LTS版本Ubuntu 16.04使用/etc/network/interfaces文件配置静态IP地址,但是Ubuntu ...
- linux下gcc编译多个源文件、gdb的使用方法
一. gcc常用编译命令选项 假设源程序文件名为test.c. 1. 无选项编译链接 用法:#gcc test.c 作用:将test.c预处理.汇编.编译并链接形成可执行文件.这里未指定输出文件,默认 ...
随机推荐
- 详解Android Activity---Activity的生命周期
转载注明来自: http://www.cnblogs.com/wujiancheng/ 一.正常情况下Activity的生命周期: Activity的生命周期大概可以归为三部分 整个的生命周期:o ...
- mysql数据库定时备份
最近要用到mysql备份,就写了shell脚本用于备份. #!/bin/bash #定义备份的数据库名称 database=*** #定义备份的时间 currTime=$(date +%Y%m%d) ...
- CJOJ 2485 UVa 11991 生日礼物 / UVa 11991 Easy Problem from Rujia Liu?
CJOJ 2485 UVa 11991 生日礼物 / UVa 11991 Easy Problem from Rujia Liu? Description (原题来自刘汝佳<训练指南>Pa ...
- Python爬虫从入门到放弃(十七)之 Scrapy框架中Download Middleware用法
这篇文章中写了常用的下载中间件的用法和例子.Downloader Middleware处理的过程主要在调度器发送requests请求的时候以及网页将response结果返回给spiders的时候,所以 ...
- jmeter 单接口测试方案(接口无业务关联)
前言 前面开了一篇讲了Jenkins+jmeter+ant的使用,但没有说到具体怎么投入到项目使用,主要介绍了接口测试定义,流程和环境部署,所以我今天要说的就是我是怎么将这个方案投入到实际中使用的.这 ...
- HDOJ-2006求奇数的乘积
Problem Description 给你n个整数,求他们中所有奇数的乘积. Input 输入数据包含多个测试实例,每个测试实例占一行,每行的第一个数为n,表示本组数据一共有n个,接着是n个整数 ...
- net 将手机号码中间的数字替换成星号
Regex.Replace(link.user_tel, "(\\d{3})(\\d{5})(\\d{3})", "$1*****$3")
- zookeeper+dubbo简单使用
首先下载zookeeper,直接百度官网下载即可! 下载完之后,把cfg配置文件改名为zoo.cfg,如下: 在bin目录下启动zkServer即可! 项目结构: 简单讲解:首先dubbo是一个mav ...
- JS实现extend函数
//写一个函数,该函数的名称是extend,有两个参数:destination,source 1.如果destination和source都是json对象,完成从source到destination的 ...
- OpenCV 之 Mat 类
以前看 OpenCV 的书,或者资料也好,遇到 Mat 类的介绍,一般都是匆匆带过,自以为已经很熟悉了,从来没有深入研究过. 结果前段时间面试了一家公司,被问到两个 Mat 的问题:一是,谈谈对 Ma ...