利用HTK快速建立一个语音命令识别系统

本文详细介绍了如何利用HTK工具包建立一个语音命令识别系统,涵盖了从录音和标注,到特征提取,再到隐马模型的训练、初始化、参数重估,以及识别任务的语法和词典定义。通过实例演示了识别测试的过程。
摘要由CSDN通过智能技术生成

工具包介绍
   
    HTK的全称是“Hidden Markov Model Toolkit”,是英国剑桥大学工程学院开发的隐马尔可夫模型(后面简称为隐马模型)工具包,可以方便有效的建立及操作隐马模型。隐马模型在许多人工智能领域都有着成功的应用,比如语音识别,当前国际上主流的语音识别系统仍是基于隐马模型建立的。HTK的开发也主要是针对语音识别的应用及研究。
   
    HTK是一个开源工具包,可以在http://htk.eng.cam.ac.uk/进行免费下载,工具包中包含许许多多的模块及工具,都是用纯C代码写成的,基本都以H开头。其中也有非常详细的文档可供参考。
   
    建立语音训练数据
   
    首先我们需要录音以采集足够的语音数据,对于“打开、关闭、开始、停止”这四个命令都需要录一些相应的语音样本,同时也需要对录下的语音做一些简单的标注。录音和标注可以采用HTK工具包中的HSLab来完成。
   
    比如在命令行下运行“HSLab打开。sig”,然后点击“Rec”健开始录音,点击“Stop”键录音结束。这时就会在当前目录下生成一个名为“打开_0.sig”文件,再进行一次录音则生成“打开_1.sig”,以此类推。默认的录音采样率为16kHz,我们采用默认的设置就可以了。
   
    录音后需要对语音进行简单的标注,标注也是用HSLab工具,运行后按“Mark”键,选择需要标注的区域,按“Labelas”,输入标注的符号,然后回车确定即可。在本问的例子中,每个语音样本都是孤立的命令词,我们只需要标注出3个部分:起始静音部分(标记为sil),命令词语音部分(标记为命令词,如“打开”),结束静音部分(标记为sil)。标注完成,点击“Save”键保存,会生成一个后缀为“lab”的文件。
   
    特征提取
   
    语音识别系统并不直接在语音信号上进行识别,而是先要进行特征提取,包括分帧,加窗,求取频谱及倒谱,这样确保提取出的特征更加紧凑并尽可能多的保留语音内容的信息。
   
    HTK中负责提取特征的是HCopy工具,它将wav格式的语音文件转化为包含若干特征

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值