HTK(V3.1)基础指南中文版
- 格式:pdf
- 大小:250.05 KB
- 文档页数:15
智能控制键盘使用手册中文版 V3.01在使用智能控制键盘之前,敬请您仔细阅读本使用手册目录欢迎 0第一章注意事项 (1)第二章安装指南 (2)2.1设备配置清单 (2)2.2安装准备 (2)2.3安装说明 (2)2.4E2、E3英文键盘前面板说明 (3)2.5C2、C3中文键盘前面板说明 (6)2.6摇杆操作说明 (8)2.7控制DVR操作指南 (9)第三章典型接线示意图 (10)3.1接云台 (10)3.2接DVR (10)第四章技术参数 (11)附录:快速设置协议&波特率指南 (11)欢迎感谢您购买智能控制键盘。
本手册旨在供您作为操作和编程系统时的参考工具。
您可以在本手册中找到有关功能和命令的信息,以及详细的快速操作指南。
在安装和使用系统之前,请充分了解本手册中的信息。
本手册的内容将做不定期的更新,对于本产品功能上的提升,我们会在新的版本中加入,恕不另行通知;更新的内容将会在本手册的新版本中加入。
我们随时会改进或更新本手册中描述的产品或程序。
第一章注意事项本使用手册是智能控制键盘用户的基本说明书。
本使用手册由重要安全和警告信息、智能控制键盘产品的功能说明、性能特点及参数、安装步骤等使用智能控制键盘时必须了解的内容组成。
首次使用智能控制键盘者及以前使用过类似产品者在使用本产品前最好先阅读一遍本使用手册。
如可能,请最好从第1页开始按顺序阅读。
如用户希望只看需要的部分,也可参考目录加以选择。
★小心运输运输及保管过程中要防止重压、剧烈振动和浸泡等对产品造成的损坏。
本产品必须采用分体包装形式运输,无论工程商发货或返回工厂维修,若因采用装配后的整体运输方式而造成的任何产品损坏,不属保修范围。
★小心安装对键盘要轻拿轻放,勿用力挤压各结构部件、防止重压、剧烈震动等不正确的操作方法,否则可能引起机械故障,影响键盘的整体性能。
安装时必须遵守各项电气安全标准,配用本机自带的专用电源适配器。
控制信号在传输过程中应与高压设备或电缆保持足够的距离,必要时还要做好防雷击、防浪涌等防护措施。
第一篇教程概览 1 HTK基础1.1MM基本原理1.2立词识别1.3出概率说明1.4aum-Welch Re-Estimation1.5别和Viterbi解码1.6续语音识别1.7话者适应2 HTK工具包概览2.1TK软件架构2.2TK工具的一般属性2.3具包2.3.1据准备工具2.3.2练工具2.3.3别工具2.3.4析工具2.4本3.4中的更新2.4.1本3.3中的更新2.4.2本3.2中的更新2.4.3本3.1中的更新2.4.4本2.2中的更新2.4.5本2.1中的新特征3 一个教程示例3.1据准备3.1.1骤一任务语法3.1.2骤二字典3.1.3骤三录制语音数据3.1.4骤四创建脚本文件3.1.5骤五语音数据编码3.2建单元音HMM3.2.1骤六创建Flat start单元音3.2.2骤七确定Silence模型3.2.3骤八Realigning训练数据3.3建Tied-Stated三元音3.3.1骤九从单元音创建三元音3.3.2骤十创建Tied-Stated三元音3.4别器评估3.4.1骤十一识别测试数据3.5行识别器3.6MM自适应3.6.1骤十二准备自适应数据3.6.2骤十三生成Transforms(转移矩阵)3.6.3适应系统评估3.7emi-Stated和HLDA Transform3.8结第一章HTK基础HTK是一个用于构建隐马尔可夫模型(HMM)的工具包。
隐马模型可用于对任意时间序列建模,与此类似,HTK的核心部分也是具有通用性的。
然而,HTK主要还是用于构建基于HMM的语音处理工具,特别是语音识别工具。
因此HTK的在基层架构上提供的功能,主要是为了完成这个任务。
如上图所示,这个任务主要由两个阶段构成。
首先,HTK的训练工具基于语音数据和关联的脚本进行HMM参数的估算,其次,未知的语音数据被HTK的识别工具识别,输出识别结果。
本教程主要关注于以上两个处理过程的机制。
然而在深入细节之前,理解HMM的一些基本原理是有必要的,对HTK工具包有一个大概的认识也是有帮助的。
版权声明
本手册内容,包括文字、图表、标志、标识、商标、产品型号、软件程序、版面设计等,均受《中华人民共和国著作权法》、《中华人民共和国商标法》、《中华人民共和国专利法》及与之适用的国际公约中有关著作权、商标权、专利权或其他财产所有权法律的保护,为北京和利时系统工程有限公司专属所有或持有。
本手册仅供商业用户阅读、查询,在未得到和利时系统工程有限公司特别授权的情况下,无论出于何种原因和目的,均不得用任何电子或机械方法,以任何形式复制和传递本手册的内容。
否则本公司将依法追究法律责任。
已核对本手册中的内容、图表与所述硬件设备相符,但误差难以避免,并不能保证完全一致。
同时,会定期对手册的内容、图表进行检查、修改和维护,恕不另行通知。
1993-2009 Copyright HollySys
HOLLiAS MACS、HollySys、和利时
的字样和徽标均为北京和利时系统工程有限公司的商标
或注册商标。
Microsoft、Windows和WindowsNT是微软公司在美国和/或其他国家分支机构的商标或注册商标。
手册中涉及到的其他商标或注册商标属于它们各自的拥有者。
HT32 MCU入门套件包用户手册版本: V1.10 日期: 2020-08-07目录目录1 简介 (5)特色 (5)2 硬件布局 (6)e-Link32 Lite 是否折下 (7)SWD 串行调试接口开关 – S1 (8)SWD-10P 连接器 – CN2,CN6 (8)e-Link32 Lite 电源选项 – R8 (8)e-Link32 Lite 电源选项 – J8 (9)启动选项 – 位于板子的背面 (9)高速外部晶振(HSE)选项 (9)低速外部晶振(LSE)选项 (9)USB D+/D-选项 (9)MCU 电源跳帽 – J1 (10)UART 选项跳帽 – J2 (10)e-Link32 UART 连接器 – CN8 (10)扩展连接器CN4-1 (10)扩展连接器CN4-2 (11)Micro USB B 型连接器 – CN5 (13)3 e-Link32 Lite 和目标板之间的连接 (14)4 原理图 (15)表列表表列表表1. SWD-10P连接器 (8)表2. 扩展连接器1 (11)表3. 扩展连接器2 (12)表4. Micro USB B型连接器 (13)图列表图列表图1. HT32入门套件包 (5)图2. 图2 HT32入门套件包方框图 (6)图3. HT32入门套件包布局(以ESK32-30501 V2.0为例) (7)图4. SWD-10P 连接器 (8)图5. 扩展连接器1 (10)图6. 扩展连接器2 (11)图7. Micro USB B 型连接器 (13)图8. e-Link32 Lite V2.0和目标板之间的连接 (14)图9. e-Link32 Lite V2.3和目标板之间的连接 (14)图10. e-Link32 Lite V2.0 (16)图11. e-Link32 Lite V2.2 (17)图12. e-Link32 Lite V2.3 (18)图13. HT32F52352目标板(ESK32-30501) (19)简介简介HT32入门套件包是基于Holtek 32-bit Arm ® Cortex ®-M0+/M3高性能单片机,其目的是帮助用户快速启动和运行Holtek 32-bit 系列单片机。
TriStation 1131 中文培训手册前言 (4)T RI S TATION 1131版本4.1的新特性: (4)摘要: (4)1.项目管理 (5)1.1.综述 (7)1.2.项目管理步骤 (8)1.3.T RI S TATION 1131安装 (9)1.3.1.系统需求 (9)1.3.2.从以前TriStation 1131版本的升级 (9)1.3.3.安装 TriStation 1131 软件 (9)1.3.4.卸载 TriStation 1131 软件 (10)1.3.5.校验 TriStation 1131 的安装 (10)1.4.T RI S TATION 1131项目 (12)1.4.1.项目Workspace (12)1.4.2.显示项目版本号和文档 (12)1.4.3.把已有项目升级到4.1版 (14)1.4.4.添加旁注 (15)1.5.项目创建 (16)1.5.1.新建一个TriStation 1131项目 (16)1.5.2.添加项目描述 (17)1.5.3.登录到一个已有的项目 (18)1.6.项目选项 (19)1.6.1.语言设定 (19)1.6.2.注释设定 (20)1.6.3.监控BOOL量的颜色 (22)1.7.T RI S TATION 1131选项 (23)1.7.1.指定目录位置 (23)1.7.2.指定制图颜色 (24)1.7.3.指定 FBD(功能块图表)编辑器选项 (25)1.7.4.指定 LD(梯形图)编辑器选项 (26)1.7.5.指定 CEM(因果矩阵)编辑器选项 (27)1.8.用户权限 (29)1.8.1.管理员用户权限 (30)1.8.2.增加和修改用户权限 (31)1.8.3.修改特别的安全级别 (32)1.8.4.修改安全级别名称 (33)1.9.库文档 (35)1.9.1.创建一个项目元素的库 (35)1.9.2.库管理 (38)1.9.3.添加库 (39)1.9.4.升级库 (39)1.9.5.删除库 (40)1.9.6.校验库版本 (40)1.10.报告 (41)1.10.1.升级报告数据库 (41)1.10.2.察看和打印报告 (41)1.10.3.给项目添加用户报告 (43)1.10.4.输出报告 (43)1.10.5.报告数据库信息 (44)前言TriStation 1131™ 开发平台是一款针对Triconex控制器,用来开发、测试、存储危险保护和过程控制的软件。
Using HTKHidden Markov Model ToolkitChi-Yueh Lin2006/07/17HTKHTK (Hidden Markov Model Toolkit) ਢطᏦࢬ࿇ऱឆ(HMM)Δ៶طHTKHMMऱΖHTKΔࠃऱᇷΚ–უᙃᢝऱڗᇿী–(Speech Corpus)ᚾ(Transcription/Label files)–شڗᐋऱᑓীΔᝫऱᑓীHTK–HCopy––HInit& HRest–ী(Label)–HCompV& HERest-ী(Transcription)–HHEd–ী–HParse–ᙃᢝऱ֮–HVite–ᙃᢝ૽ግ໘ࢤHCopy-abstractHCopyਢHTK ऱਐΔ،––ऱյ–ࢨऱפਢشᑇΔڕPCMऱंMFCCHCopy–block diagramΔא֗ᐷconfig֗script ᚾHCopy–config file (1)(2)NATURALREADORDER=TRUENATURALWRITEORDER=TRUE–ຍࠟႈࡳᇿᖲᕴΕ܂ΔԫࡳTRUE SOURCEFORMAT=NOHEAD–ᚾਢڶᚾᙰऱSOURCEKIND=WAVEFORM–ᚾਢTARGETKIND=MFCC_E_D_A–ऱᚾਢMFCCΔאenergy (E), delta (D), delta-delta (A)–SOURCEFORMAT ࡳHTKHCopy–config file (3)SOURCERATE=1250–ᚾ࠷0.125 msTARGETRATE=100000–ऱၴ10 msWINDOWSIZE=250000–ऱ९25 msࣹრΚΚڇHTKΔழۯ100ns ࣹრHCopy–config file (4) ZMEANSOURCE=T–zero meanΔܛDCଖ USEHAMMING=T–Hamming WindowPREEMCOEF=0.97–0.97HCopy–config file (5) NUMCHANS=31–ڇMel 31ଡ᙮USEPOWER=F–c(0)NUMCEPS=13–13ၸMFCCHCopy–config file (7)SAVECOMPRESSED=F–HTKऱᚾΔԫFalseSAVEWITHCRC=F–HTKڇขऱᚾ৵CRCΔԫFalseHCopy–script fileScript ᚾਢܫHCopyᚾڇΔא֗ऱؾऱᚾΖ/source/dir/001.wav /target/dir/001.mfc/source/dir/002.wav /target/dir/002.mfc/source/dir/003.wav /target/dir/003.mfcΔؐsourceΔڶtargetHCopy-Usage$ Hcopy-T 1 -C XXX.config-S XXX.script –-T 1 Trace Level 1Δຍڇᘛࠩhcopyऱመ–-C () configᚾூΔᚾټᚾټૡΔԫᚾټconfigࢨcfg–-S () script ᚾூHMM -definitionHMMऱط<BeginHMM> ࡉ<EndHMM>ࢬץ<NumStates> 5–5Δ3+2ኔ᧯णኪऱ<Mean> ࡉ<Variance>–<Mean> 3939 ଡ0.0–<Variance> 3939 ଡ1.0HMM -TrainingΔૹऱਢᒔऱᑑᚾਢ᥆–Label :0 180000 sil180000 450000 voc450000 610000 voc–Transcription :silvocvocHMM -TrainingऱਢLabel ᚾ–شHinit+ HRestऱਢTranscription ᚾ–شHCompV+ HERest?–شHinitࡉHRest Label ऱᚾூΔ٦شHCompVࡉHERest Transcription ᚾூHMM -TrainingHMM -TrainingHCompV–ڇHTK flat start–Δ٦ऱMeanࡉVarianceHMM -TrainingHCompV–$ HCompV-C config-S script -M dir1 -l aa-o aa-I label.mlf proto–config۩SOURCEFORMAT=HTKSOURCEKIND=MFCC_E_D_A–scriptஞࠐಝऱᚾூ।–-l aa–o aa aaऱHMMᚾூΔࠀaa–-M dir1 ژᚾூऱؾ–-I master label fileΔٍش–L–protoऱHMM prototype ᚾHMM -TrainingHERest–$ HERest-C config-S script -I label.mlf-d dir1-M dir2 hmmlist-Iࡳmaster label fileΔٍ–L ࡳؾ-d HMMᚾூऱؾ(ൕHCompVऱ)-MࡳᚏHMMऱؾhmmlist HMMऱټ–۩ݙ৵Δᄎڇdir2ऱHMM Macro FileHMM –mixture incrementingHHEd–split.hedᚾ–MU 16 {*.state[2-4].mix}ଡHMMऱኔ(2~4)16ଡmixture –MU 8 {aa.state[2-4].mix}aaऱHMM(2~4)8ଡmixture –$ HHed-M mix2 -w newHMM-d mix1 split.hed -M mix2ऱHMMᚾᄎڇmix2-w newHMMऱHMMᚾټ-d mix1ڇmix1ऱHMMᚾHMM –mixture incrementingHHEd–ش֮ڗᒳࠐऱnewHMMΔױmixtureऱᦞΔڂച۩HERestΔऴࠩઌַΖ–ऱᑓীΔܛऱHMMীΔຍHMM.model໘ࢤRecognition –Dictionary & WordNet Dictionary ऱشHTKΔ܃ऱଃਢୌ? ਢطୌHMMࢬΖRecognition –Dictionary & WordNet WordNetऱ֮Recognition -HViteᅝWordNetΕDictionary ᅝΔױHVite–$ HVite–C config–w –H HMM.modelphone.dic hmmlist XXX.wavXXX.recᚾΔܛ0 700000 sil-428.991882700000 1100000 b -276.1031491100000 1700000 t -493.9649661700000 3000000 weng-1099.999023Recognition -WaveSurferRecognition -WaveSurfer༙b t wengиছ”Ԃ”ᙃګ”ԁ”+”Ԇ”ঊj yingиᙃګ“ᙩ”ऱଃݛh wangиᙃګ“႓”ऱଃڇz aiᄎh wei৵h ou। b yaoقsh FNULL1。
HTK工具包孤立词识别系统(详细过程)1.前言介绍HTK工具包建立孤立词识别系统,包含详细过程和可能出现的错误,分享错误分析和解决心得。
主要参考书籍博客:HTK,/jamesju/blog/1161512.孤立词识别系统2.1搭建流程A:创建语料库,brightness,channel,color各录制5次。
B:声学分析,把wavform的声音文件转换为mfcc格式。
C:模型定义,为词典里面的每一个词建立一个HMM原型。
D:模型训练,HMM模型初始化和迭代。
E:问题定义,即语法定义。
F:对测试结合进行识别G:评测2.2.工作环境的搭建创建如下目录结构:(1) data/: 存储训练和测试数据(语音文件、语音标签、特征矢量文件)。
子目录:data/train/lab data/train/wav data/train/mfcc data/test/lab data/test/wav data/test/mfcc(2)analysis/:存储声学分析步骤的文件(3)training/:存储初始化和训练步骤的文件(4)model/:存储识别系统的模型(HMMS)的相关文件。
子目录:model/proto(5)def/:存储任务定义的相关文件。
(6)test/:存储测试相关文件2.3.标准HTK工具选项一些标准选项对每个HTK工具都是通用的。
将使用以下一些选项:1. -A :显示命令行参数2. -D :显示配置设置3.-T 1:显示算法动作的相关信息3.语料库的准备录制{brightness,channel,color}这三个词的读音。
每个读9次。
同时对每个录音都要进行标注,也就是有一个文本文件与其对应描述它的内容。
3.1语料库的准备每个词各录制9次,保存为wav格式。
5次存放在data/train/wav/brightnessdata/train/wav/channeltrain/train/wav/color4次作为测试音频,存放在:data/test/wav/brightnessdata/test/wav/channeltrain/test/wav/color3.2 语音标注我使用的是praat软件进行语音标注。
HTK(V3.1)基础指南(原文:HTK(v.3.1):Basic Tutorial)Nicolas Moreau/02.02.2002陶阳译taoyangxp@江西.南昌2009.6.1目录0HTK简介 (1)1Yes/No识别系统 (1)1.1搭建步骤 (1)1.2工作环境构建 (1)1.3标准HTK工具选项 (1)2创建训练集 (1)2.1录音 (2)2.2标注信号 (2)2.3文件重命名 (2)3声学分析 (2)3.1配置参数 (3)3.2源/目标规范 (3)4HMM定义 (4)5HMM训练 (6)5.1初始化 (6)5.2训练 (8)6任务定义 (8)6.1语法和字典 (8)6.2网络 (9)7识别 (10)8性能测试 (12)8.1主标签文件 (12)8.2错误率 (13)0HTK简介HTK是指隐马尔可夫模型工具箱(Hidden Markov Model Toolkit),由剑桥大学工程系(CUED)研发而成。
该工具箱的目的是搭建使用隐马尔可夫模型(HMMs)。
HTK主要用于语音识别研究(但是HMMs应用范围很广,还有很多其它可能的应用…)HTK由一系列库模块构成,包括C语言形式的可用工具,可自由下载,包括一个完整的文档说明(大约300页),见/。
1Yes/No识别系统本指南中,我们将基于HTK工具集建立一个2-单词识别系统,词汇集是{Yes,No}。
这是可以设计出来的最基本的自动语音识别(ASR)系统。
1.1搭建步骤构建语音识别系统的主要步骤如下:(1)训练库的创建:词汇集中的每个元素进行多次录制,且与相应词汇做好标签;(2)声学分析:训练波形数据转换为一系列系数向量;(3)模型定义:为总词汇集中的每个元素定义一个HMM原型;(4)模型训练:使用训练数据对每个HMM模型进行初始化、训练;(5)任务定义:识别系统的语法(什么可被识别)的定义;(6)未知输入信号识别;(7)评估:识别系统的性能可通过测试数据进行评估。
翰和物流管理教学软件实验操作指导手册第一章物流概论第一节专业介绍1.1基本概念物流就是将物料或商品在空间与时间上的位移。
现代物流指的是将信息、运输、仓储、库存、装卸搬运以及包装等物流活动综合起来的一种新型的集成式管理,其任务是尽可能降低物流的总成本,为顾客提供最好的服务。
第三方物流则是指现代专业物流公司。
物流的概念最初来自美国,然后经日本到中国。
第二次世界大战以前,人类虽然早已从事了数千年的物流活动,具有一定的物流意识,但是,没有形成明确的物流概念和理论。
“二战”期间,美国及其盟军的军事、物资、装备的制造、供应、战前配置与调运,战中补给与养护等军事后勤活动,需要运用系统的思想和分析方法进行管理,于是产生了物流的概念,并形成了军事后勤学。
战后,这些概念、理论和方法被用于民用领域,极大地促进了经济的发展。
1979年6月,中国物资工作者代表团赴日本参加国际物流会议,回国后首次引用“物流”这一术语。
1985年,美国物流管理协会正式将物流的名称从“Physical Distribution”改为“Logistics”,并将此定义为“物流是以满足顾客需要为目的,对货物、服务及相关信息从起源地到消费地的有效率、有效益的流动和储存进行计划、执行和控制的过程”。
中文翻译为区别这两个概念的前后演变,将前者译为“传统物流”,而将后者译为“现代物流”。
现代物流( Modern logistics )是相对于传统物流而言的。
它是在传统物流的基础上,引入高科技手段,即运用计算机进行信息联网,并对物流信息进行科学管理,从而使物流速度加快,准确率提高,库存减少,成本降低,以此延伸和放大传统物流的功能。
在中国许多专家学者认为:“现代物流是根据客户的需要,以最经济的费用,将物资从供给地向需求地转移的过程。
它主要包括运输、储存、加工、包装、装卸、配送和信息等活动。
”中国六部委(国家经贸委、铁道部、交通部、信息产业部、外经贸部、民航总局)于 2001 年 3 月在“加快物流发展若干意见”的通知中,对现代物流的定义是这样表述的:“原材料、产成品从起点至终点及相关信息有效流动的全过程。
HMM的理论基础一、HMM定义1.N:模型中状态的数目,记t时刻Markov链所处的状态为2.M:每个状态对应的可能的观察数目,记t时刻观察到的观察值为3.:初始状态概率矢量,,,4.A:状态转移概率矩阵,,,5.B:观察值概率矩阵(适用于离散HMM),,,;对于连续分布的HMM,记t时刻的观察值概率为一个离散型的HMM模型可以简约的记为。
二、关于语音识别的HMM的三个基本问题1. 已知观察序列和模型参数,如何有效的计算。
a. 直接计算2-1 当N=5,T=100时大概需进行次乘法!b. 前向算法定义t时刻的前向变量(forward variable),可以通过迭代的方法来计算各个时刻的前向变量:1)初始化(Initialization)当t=1时2-22)递归(Induction)当时即: 2-3 3)终结(Termination)2-4乘法次数大约为:N2Tc. 后向算法定义t时刻的后向变量(backward variable),可以通过迭代的方法来计算各个时刻的后向变量:1)初始化(Initialization)当t=T时, 2-52)递归(Induction)当时即:, 2-6 3)终结(Termination)2-7 乘法计算次数约为:N2T2. 已知观察序列和模型参数,在最佳意义上确定一个状态序列。
定义一个后验概率变量(posteriori probability variable)2-7 则最优序列可以通过, 2-7求得。
不过,这样求得的最优序列有些问题。
如果,那么这个最优序列本身就不存在。
这里讨论的最佳意义上的最优序列,是使最大化时的确定的状态序列。
即,使最大化时确定的状态序列。
定义为t时刻沿一条路径,且,输出观察序列的最大概率,即:2-8下面介绍迭代计算的Viterbi算法:1)初始化(Initialization),回溯变量:,2)递归(Induction)即: 2-82-93)终结(Termination)2-102-114)回溯状态序列, 2-123. 已知观察序列和模型参数,如何调整模型参数使最大。
HTK(V3.1)基础指南(原文:HTK(v.3.1):Basic Tutorial)Nicolas Moreau/02.02.2002陶阳译taoyangxp@江西.南昌2009.6.1目录0HTK简介 (1)1Yes/No识别系统 (1)1.1搭建步骤 (1)1.2工作环境构建 (1)1.3标准HTK工具选项 (1)2创建训练集 (1)2.1录音 (2)2.2标注信号 (2)2.3文件重命名 (2)3声学分析 (2)3.1配置参数 (3)3.2源/目标规范 (3)4HMM定义 (4)5HMM训练 (6)5.1初始化 (6)5.2训练 (8)6任务定义 (8)6.1语法和字典 (8)6.2网络 (9)7识别 (10)8性能测试 (12)8.1主标签文件 (12)8.2错误率 (13)0HTK简介HTK是指隐马尔可夫模型工具箱(Hidden Markov Model Toolkit),由剑桥大学工程系(CUED)研发而成。
该工具箱的目的是搭建使用隐马尔可夫模型(HMMs)。
HTK主要用于语音识别研究(但是HMMs应用范围很广,还有很多其它可能的应用…)HTK由一系列库模块构成,包括C语言形式的可用工具,可自由下载,包括一个完整的文档说明(大约300页),见/。
1Yes/No识别系统本指南中,我们将基于HTK工具集建立一个2-单词识别系统,词汇集是{Yes,No}。
这是可以设计出来的最基本的自动语音识别(ASR)系统。
1.1搭建步骤构建语音识别系统的主要步骤如下:(1)训练库的创建:词汇集中的每个元素进行多次录制,且与相应词汇做好标签;(2)声学分析:训练波形数据转换为一系列系数向量;(3)模型定义:为总词汇集中的每个元素定义一个HMM原型;(4)模型训练:使用训练数据对每个HMM模型进行初始化、训练;(5)任务定义:识别系统的语法(什么可被识别)的定义;(6)未知输入信号识别;(7)评估:识别系统的性能可通过测试数据进行评估。
1.2工作环境构建建议创建如下的目录结构:(1)data/:存储训练和测试数据(语音信号、标签等等),包括2个子目录,data/train/ Array和data/test/,用来区分识别系统的训练数据和评估数据;(2)analysis/:存储声学分析步骤的文件;建立以下目录(3)training/:存储初始化和训练步骤的相关文件;(4)model/:存储识别系统的模型(HMMs)的相关文件;(5)def/:存储任务定义的相关文件;(6)test/:存储测试相关文件。
1.3标准HTK工具选项一些标准选项对每个HTK工具都是通用的。
我们将使用以下一些选项:(1)-A:显示命令行参数;(2)-D:显示配置设置;(3)-T1:显示算法动作的相关信息。
完整的选项列表请参见:HTK文档,第50页(第四章操作环境)。
2创建训练集Array图1录制标签训练数据首先,我们录制Yes和No两个语音信号,作为要训练的单词模型(训练集)。
然后为每个语音信号打上标签,也就是说,关联一个文本来描述语音内容。
录制和打标签,可以使用HSLab HTK工具来做(也可使用其它工具)。
创建和标注语音文件,使用下面的工具命令:HSLab any_name.sig回车之后,该工具的图形界面呈现在面前。
2.1录音按下Rec按钮,开始录制语音信号,Stop停止录音。
缓冲文件any_name_0.sig自动创建在当前目录下(如果录制一个新的文件,第二个缓冲文件命名为any_name_1.sig)。
说明:-这里的信号文件(.sig)以一种特定的HTK格式存在。
当然,也可能使用其它音频格式(如.wav等),参见HTK文档第68页(第五章音频输入/输出)。
-缺省采样率是16kHz。
2.2标注信号要为语音波形打标签,首先按下Mark按钮,然后选择你要打标签的区域。
当区域标注之后,按下Labelas,键入标签名称,然后按下回车Enter。
本指南中,我们仅录制孤立词(Yes或者No),通过短暂停顿隔开。
对于每个信号,我们标注三个连续的区域:开始停顿(标记为sil)、录音单词(标记为yes或no)、结束停顿(标记为sil)。
这三个区域不能重叠(即使它们之间间隙很小)。
这三个标注完成之后,按下Save按钮:标签文件any_name_b被创建完成。
这个时候,你就可以按下Quit退出按钮了。
说明:.lab文件是一个简单的文本文件。
它包括每个标注的类型信息,每行对应每个标签:41712509229375sil922937515043750yes1504375020430625sil其中数字代表每个标签的开始和结束采样点。
这样的文件可以进行手工修改(比如调整标签的开始或结束点),甚至创建(并不一定使用HSLab工具)。
2.3文件重命名录音/标签之后,你可以依据自己的方便,对.sig和.lab文件进行重命名(如yes01.sig和b)。
本指南中,两个词的每个进行10个录音应该足够了。
信号文件存储在data/train/sig/目录(训练集)里面,标签存储在data/train/lab/目录(训练标签集)。
关于HSLab图形界面的更多详细信息参见HTK文档,第237页(参考小节,HSLab)。
3声学分析图2训练数据转化语音识别工具不能直接处理波形语音,需要通过更简洁有效的方法来表示波形语音。
这一步就是声学分析:-信号分成连续的帧,一般每帧长度介于20ms和40ms之间,段与段交织在一起;-每帧与窗口函数相乘(如Hamming函数);-从每个窗口帧中提取声学系数向量(给出一种该帧的频谱属性的简洁表示)。
HCopy HTK工具可用来转换原始波形文件,生成一系列声学向量,命令为:HCopy–A–D–C analysis.conf–S targetlist.txtanalysis.conf是配置文件,设置声学系数提取参数。
targetlist.txt用于指定用于处理的每个波形文件的名称和存放位置,以及目标系数文件的名称和存放位置。
3.1配置参数配置文件是一个文本文件(#用来注释)。
本指南中,使用的配置文件如下:##Example of an acoustical analysis configuration file#SOURCEFORMAT=HTK#Gives the format of the speech filesTARGETKIND=MFCC_0_D_A#Identifier of the coefficients to use#Unit=0.1micro-second:WINDOWSIZE=250000.0#=25ms=length of a time frameTARGETRATE=100000.0#=10ms=frame periodicityNUMCEPS=12#Number of MFCC coeffs(here from c1to c12)USEHAMMING=T#Use of Hamming function for windowing framesPREEMCOEF=0.97#Pre-emphasis coefficientNUMCHANS=26#Number of filterbank channelsCEPLIFTER=22#Length of cepstral liftering#The End列表1分析配置文件从该配置文件可看出,使用了MFCC((Mel Frequency Cepstral Coefficient)分析,在TARGETKIND标识符的值的前缀“MFCC”表明了这一点。
对每个信号帧,可提取以下系数:-12个首MFCC系数[C1,…,C12](因为NUMCEPS=12)-null MFCC系数c0,与帧的总能量成正比(在TARGETKIND中,后缀_0)-13个Delta coefficients,估计首次序[c0,c1,…,c12]派生(在TARGETKIND 中,后缀_D)-13个Acceleration coefficients,估计第二次序[c0,c1,…,c12]派生(在TARGETKIND中,后缀_A)总之,每个信号帧提取39个系数向量。
关于声学分析配置更详细内容参加HTK文档第58-66页(第五章语音输入/输出)3.2源/目标规范一个或多个源/目标文件对(如,原始波形文件/系数文件),可在HCopy命令行中直接指定。
如果要处理大量数据,可使用-S选项。
一般允许指定脚本文件格式为:data/train/sig/yes01.sig data/train/mfcc/yes01.mfccdata/train/sig/yes02.sig data/train/mfcc/yes02.mfccetc...data/train/sig/no01.sig data/train/mfcc/no01.mfccdata/train/sig/no02.sig data/train/mfcc/no02.mfccetc...列表2转换脚本文件可自动生成这样的文本脚本文件(比如使用Perl脚本编辑工具)。
新生成的训练集(.mfcc 文件)存储在data/trail/mfcc/目录下。
更多关于HCopy工具的详细信息参见HTK文档第195页(参考小节HCopy)4HMM定义本指南中,3个声学事件需要使用HMM隐马尔可夫模型建模,即Yes、No、Silence。
每个事件设计一个HMM模型。
第一步,为每个HMM模型选择一个priori结构:-状态数-观察函数的形式(对应每个状态)-状态转换排列这种定义不是一成不变的。
其实并没有固定的规则。
在这里,我们为3个HMM模型选择同一个结构(如图3所示)图3基本结构该模型包含4个活动状态{S2,S3,S4,S5},开始和结束状态(这里是S1、S6),是非发散状态(无观察函数),仅供HTK用于一些功能的实现。
观察函数b i是带对角矩阵的高斯分布。
状态的可能转换由a ij表示。
在HTK中,HMM模型是通过文本文件来描述的。
如图3一样的HMM模型一般描述如下:~o<VecSize>39<MFCC_0_D_A>~h"yes"<BeginHMM><NumStates>6<State>2<Mean>390.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.00.0<Variance>391.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.01.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.01.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0 1.0<State>3<Mean>390.00.0(...)0.0<Variance>391.0 1.0(...) 1.0<State>4<Mean>390.00.0(...)0.0<Variance>391.0 1.0(...) 1.0<State>5<Mean>390.00.0(...)0.0<Variance>391.0 1.0(...) 1.0<TransP>60.00.50.50.00.00.00.00.40.30.30.00.00.00.00.40.30.30.00.00.00.00.40.30.30.00.00.00.00.50.50.00.00.00.00.00.0<EndHMM>列表3HMM描述文件(原型)~o<VecSize>39<MFCC_0_D_A>文件头,给出系数向量大小(这里是39个系数)、系数类型(MFCC_0_D_A)。