Yes Or No孤立词识别

  本实验中,我们将基于HTK工具集建立一个2-单词识别系统,词汇集是{Yes,No}。这是可以设计出来的最基本的自动语音识别(Automatic speech recognition,ASR)系统。

目标:建立一个孤立词识别系统,只包含yes和no两个词。

步骤:

A: 创建一个语料库,确定识别基本元(如单词yes,no等),yes和no各录5次

B: 声学分析,把waveform的声音文件转换为mfcc()格式 ,即对语音材料库中的声音文件提取MFCC声纹特征 (梅尔频率倒谱系数,这个部分的详解见教程10)。

C: 模型定义: 为词典里的每一个词(基本元)建立一个HMM原型

D: 模型训练: HMM模型初始化和迭代,利用MFCC声纹特征对每一个HMM模型进行训练,使模型参数与其描述的识别基本元对应。

E: 问题定义,即语法定义,定义输入语音的语法规则等,从发音对应到文字。

F: 对测试集合进行识别

G: 评测

使用的教程:


1.  HTK(V3.1)基础指南中文版

http://wenku.baidu.com/link?url=VRsYTg5kQDtTc5hxvnkYXBOO8h0Zzs3yP-QFXAdmDjIJwA78t0qBJCAET9XPXXr7-qTlL7N6I6XcwEzYGJ7fhF2h4b5CaPHLwGNZCBFeSaq

2.  语音识别工具箱之HTK安装与使用

http://www.cnblogs.com/mingzhao810/archive/2012/08/03/2617674.html

3.  语音识别系统之htk------孤立词识别(yesno)

http://blog.csdn.net/wbgxx333/article/details/17535033

4.  HTK(yesno)教程

http://www.doc88.com/p-7748040237188.html

5.  HTK孤立词识别回顾

http://wenku.baidu.com/link?url=B1nCFAk9XQBlB0Nd8UrR9sw4ZasCWbT2u9ZzvPoL5RpnEUUHZA8EY-7nJQrbkQOTZYToW7sN-k6gT-AsQBcO9ADnjlVUyFY1r4e_1d14PLO

6.  一个简单的HTK入门参考例子

http://wenku.baidu.com/view/91639fd7195f312b3169a584.html

7.  利用HTK工具包快速建立一个语音命令识别系统

http://baidutech.blog.51cto.com/4114344/904388

8.  Windows 安装HTK3.4.1语音识别工具(这里有HSLab运行失败的原因)

http://www.cnblogs.com/eboard/archive/2012/02/20/HTK.html

9.  Htk error book

http://read.pudn.com/downloads38/sourcecode/comm/127382/htk-3.3/HTKBook/.%23errors.tex.1.7__.htm

10.   语音信号处理之(四)梅尔频率倒谱系数(MFCC)

http://blog.csdn.net/zouxy09/article/details/9156785/

时间: 2024-10-07 05:22:31

Yes Or No孤立词识别的相关文章

基于HTK语音工具包进行孤立词识别的使用教程

选自:http://my.oschina.net/jamesju/blog/116151 1前言 最近一直在研究HTK语音识别工具包,前几天完成了工具包的安装编译和测试,这几天又按耐不住好奇,决定自己动手搞一搞,尝试一下用这个工具包,进行简单的孤立词识别,看了几天的文档,做了各种尝试,总算跌跌撞撞的实现了,把步骤记录下来,以后作为参考. 2孤立词识别系统 在本系统中我们将要实现三个词的识别系统,词汇集为:{brightness, channel,color}. 2.1搭建步骤 A:创建语料库,b

HTK孤立词识别简单流程

1.数据准备 [command] HSLab one.wav [Rec    ] 开始录音 [Stop   ] 录音结束 [Mark   ] 选择需要标注的区域 [Labelas] 输入标注 回车确定 [Save   ] 保存 孤立词标注3个部分:起始静音(sil) 词语音(one) 结束静音(sil) 按照上述步骤,录制训练集和测试集 编写EBNF文法,并生成最终的解码网络 [command] HParse -T 1 gram.txt net.sf [gram.txt] # WORD = on

[转]Kaldi命令词识别

转自: http://www.jianshu.com/p/5b19605792ab?utm_campaign=maleskine&utm_content=note&utm_medium=pc_all_hots&utm_source=recommendation http://www.jianshu.com/p/6338fab6bd0a 刚刚拿到一个简单语料库练手,发现只有语音和对应文字, 这篇文章记录了从数据预处理到kaldi对数据进行训练和测试的全过程,这里首先训练单音节模型,其

CRF技能词识别过程

最近在用CRF做未登录技能词识别,虽然艰难,但是感觉很爽,效率非常高. (1)数据准备: 选取30000行精语料作为训练数据.每一个br作为一条数据.使用已有的技能词典对数据进行无标注分词. (2)训练数据标注: 对分词后的语料进行标注.如果某分词结果在技能词典中,则该词作为技能词进行标注:如果某分词结果不在词典中,则该词作为与技能无关词进行标注.标注规则如下: 标注采用3列,4-tag方式标注:B:技能词开头字:M:技能词中间字:E:技能词结尾字:A:与技能词无关字. (3)修改模板: 技能词

讯飞语音——离线命令词识别

离线命令词识别 效果图 示例源码 地址:http://download.csdn.net/detail/q4878802/9023825 步骤: 1. 下载SDK 前面文章有,就不在复述了.这里要选择离线命令词的服务以后,重新加载,因为需要下载离线命令词识别的资源文件 地址:http://blog.csdn.net/q4878802/article/details/47762169 2. 集成方法 前面文章有,就不在复述了. 地址:http://blog.csdn.net/q4878802/ar

动态时间归整/规整/弯曲(Dynamic time warping,DTW)

动态时间规整DTW 在日常的生活中我们最经常使用的距离毫无疑问应该是欧式距离,但是对于一些特殊情况,欧氏距离存在着其很明显的缺陷,比如说时间序列,举个比较简单的例子,序列A:1,1,1,10,2,3,序列B:1,1,1,2,10,3,如果用欧氏距离,也就是distance[i][j]=(b[j]-a[i])*(b[j]-a[i])来计算的话,总的距离和应该是128,应该说这个距离是非常大的,而实际上这个序列的图像是十分相似的,这种情况下就有人开始考虑寻找新的时间序列距离的计算方法,然后提出了DT

DTW

DTW主要是应用在孤立词识别的算法,用来识别一些特定的指令比较好用,这个算法是基于DP(动态规划)的算法基础上发展而来的.这里介绍语音识别就先介绍下语音识别的框架,首先我们要有一个比对的模版声音,然后需要去截取其里面包含真正属于语音的部分,这个要采用一个叫做vad(voice activedetection)语音活动检测的算法,而在vad中间我们最常使用双门限端点检测这种方法,如图所示,我们采用vad判断语音的开始和结束,判断方法就是通过音量的大小做一个阈值判定,在时域上很简单就能判定. 图.s

动态时间规整(DTW) 转载

Dynamic Time Warping(DTW)诞生有一定的历史了(日本学者Itakura提出),它出现的目的也比较单纯,是一种衡量两个长度不同的时间序列的相似度的方法.应用也比较广,主要是在模板匹配中,比如说用在孤立词语音识别(识别两段语音是否表示同一个单词),手势识别,数据挖掘和信息检索等中. 一.概述 在大部分的学科中,时间序列是数据的一种常见表示形式.对于时间序列处理来说,一个普遍的任务就是比较两个序列的相似性. 在时间序列中,需要比较相似性的两段时间序列的长度可能并不相等,在语音识别

HMM隐马尔科夫模型

马尔科夫过程 在概率论及统计学中,马尔可夫过程(英语:Markov process)是一个具备了马尔可夫性质的随机过程,因为俄国数学家安德雷·马尔可夫得名.马尔可夫过程是不具备记忆特质的(memorylessness).换言之,马尔可夫过程的条件概率仅仅与系统的当前状态相关,而与它的过去历史或未来状态,都是独立.不相关的. 一个马尔科夫过程是状态间的转移仅依赖于前n个状态的过程.这个过程被称之为n阶马尔科夫模型,其中n是影响下一个状态选择的(前)n个状态.最简单的马尔科夫过程是一阶模型,它的状态