本文档介绍Sphinx4在Windows下的中文训练过程及注意事项,与本文档配套的是我自己的训练实例bergtrain和用到的软件。
本文档编写日期2013-04-231、为什么要训练?sphinx4目前的版本中仅提供了英文等语音识别库。
中文的库是PTM或semi类型的,在java版sphinx中无法使用。
2、Sphinx的训练指哪些内容?在Sphinx中有语言模型、声学模型等概念,如果你不想了解这些,请参考以下内容:a1、中文每个字的标准发音已经有一个较为全面的文件进行了标注这个文件就是zh_broadcastnews_utf8.dic(下称这类文件为发音字典),在sphinx网站上可以下载,我们也包含了它。
下面是该文件的片断,它用类似拼音的方式标注了每个字或词的发音。
昌chang昌北changbei昌必changbi昌都changdu昌赫changhea2、需要告诉sphinx我们经常使用的字、词是哪些,它们出现的频率如何由于开放式语音识别尚难实现,所以sphinx实际上只能较好的处理相对小的语言集合。
因此,针对特定的领域,告诉sphinx该领域的词汇和各词出现的频率将极大提高识别率。
a3、需要告诉sphinx每个字、词的真正读音发音字典告诉sphinx每个字的标准读音,但面对的说话人往往不会以标准读音来朗读。
因此sphinx需要学习说话人的“口音”。
如果训练时的读者发音比较标准,则sphinx能“举一反三”,识别其他不那么标准的读者的语音。
推荐的做法是训练一些典型的口音:标准男、女声,童音,最后再考虑特定用户的口音。
3、如何准备训练内容所需的原料?需要准备两大内容:1)文本语料文件,2)语料录音文件。
文本语料文件给出2.a2中需要的内容,在bergtrain的etc文件下的berginput.txt文件就是一个预料文件。
它以行为单位,给出了150个中文句子。
语料录音文件是根据文本语料文件,朗读它的每行/句话,保存到每一个语音文件即可。
语料文件中的语句应该尽量选择领域相关的,在覆盖领域内名词的前提下,覆盖尽可能多的通用词汇。
4、训练环境及注意事项本文的训练软硬件如下:硬件:T60P笔记本,机器自带录音设备;
操作系统为Win732位。
软件:Sphinx cmuclmtk-0.7-win32.zip pocketsphinx-0.8-win32.zip sphinxbase-0.8-win32.zip sphinxtrain-1.0.8-win32.zip sphinx4-1.0beta6-bin.zip,用于编写java版的识别软件所需的库 脚本执行软件 ActivePerl-5.16.3.1603-MSWin32-x86-296746.msi ActivePython-2.7.2.5-win32-x86.msi 录音和处理软件 audacity-win-2.0.3rc1.zip,可进行录音和声音文件处理(如降噪),免费软件 FairStars.zip,可进行批量录音(V3.5绿色版) 文本编辑软件UltraEdit,UltraEdit-32.rar绿色版注意: 文件格式 语料文件必须使用UltraEdit进行编辑, 在编辑后,使用文件-转换-ASCII转UTF-8(UNICODE编辑),指定文件中的中文使用utf8编码。
在保存前,设置格式如下: 换行符:UNIX终束符-LF 指定文件中的回车/换行符为编码0A的换行符 格式:UTF-8-无BOM 每个文件的末尾必须有一个回车! 这个回车将在保存时被替换为编码0A的换行符,训练脚本需要这个符号来确认文件的结束。
录音文件 如果你不希望去编辑训练中的配置文件,则在使用FairStars录音时作如下设定: 进入菜单和对话框选项-显示录音选项-编码-WMA, 设定:采样率(16000Hz)、通道(单声道)、比特率(16Kbps)5、训练步骤下面逐步从零开始进行训练5.1软件环境的安装将本文档所在的文件夹解压或拷贝到d:\,即本文档路径是d:\sphinxtrain\Sphinx中文训练教程.txt1)点击安装ActivePerl-5.16.3.1603-MSWin32-x86-296746.msi和ActivePython-2.7.2.5-win32-x86.msi;
2)解压Sphinx中除sphinx4-1.0beta6-bin.zip外的压缩文件到d:\sphinxtrain下
2023/8/14 6:38:31 53.17MB sphinx 中文 语音 训练
1
第一章....4【实例1】使用累加器进行简单加法运算:...4【实例2】使用B寄存器进行简单乘法运算:...4【实例3】通过设置RS1,RS0选择工作寄存器区1:...4【实例4】使用数据指针DPTR访问外部数据数据存储器:...4【实例5】使用程序计数器PC查表:...4【实例6】if语句实例:...4【实例7】switch-case语句实例:...4【实例8】for语句实例:...4【实例9】while语句实例:...5【实例10】do…while语句实例:...5【实例11】语句形式调用实例:...5【实例12】表达式形式调用实例:...5【实例13】以函数的参数形式调用实例:...5【实例14】函数的声明实例:...5【实例15】函数递归调用的简单实例:...5【实例16】数组的实例:...6【实例17】指针的实例:...6【实例18】数组与指针实例:...6【实例19】P1口控制直流电动机实例...6第二章....8【实例20】用74LS165实现串口扩展并行输入口...8【实例21】用74LS164实现串口扩展并行输出口...10【实例22】P0I/O扩展并行输入口...12【实例23】P0I/O扩展并行输出口...12【实例24】用8243扩展I/O端口...12【实例25】用8255A扩展I/O口...14【实例26】用8155扩展I/O口...19第三章....26【实例29】与AT24系列EEPROM接口及驱动程序...26【实例30】EEPROM(X5045)接口及驱动程序...30【实例31】与铁电存储器接口及驱动程序...33【实例32】与双口RAM存储器接口及应用实例...35【实例33】与NANDFLASH(K9F5608)接口及驱动程序...35第四章....43【实例34】独立键盘控制...43【实例35】矩阵式键盘控制...44【实例36】改进型I/O端口键盘...46【实例37】PS/2键盘的控制...49【实例38】LED显示...53【实例39】段数码管(HD7929)显示实例...54【实例40】16×2字符型液晶显示实例...55【实例41】点阵型液晶显示实例...61【实例42】LCD显示图片实例...63第五章....70【实例43】简易电子琴的设计...70【实例44】基于MCS-51单片机的四路抢答器...71【实例45】电子调光灯的制作...76【实例46】数码管时钟的制作...81【实例47】LCD时钟的制作...96【实例48】数字化语音存储与回放...103【实例49】电子标签设计...112第六章....120【实例50】指纹识别模块...121【实例51】数字温度传感器...121第七章....124【实例53】超声波测距...124【实例54】数字气压计...125【实例55】基于单片机的电压表设计...132【实例56】基于单片机的称重显示仪表设计...133【实例57】基于单片机的车轮测速系统...136第八章....138【实例58】电源切换控制...138【实例59】步进电机控制...140【实例60】单片机控制自动门系统...141【实例61】控制微型打印机...144【实例62】单片机控制的EPSON微型打印头...144【实例63】简易智能电动车...145【实例64】洗衣机控制器...149第九章....152【实例65】串行A/D转换...152【实例66】并行A/D转换...153【实例67】模拟比较器实现A/D转换...154【实例68】串行D/A转换...155【实例69】并行电压型D/A转换...156【实例70】并行电流型D/A转换...156【实例71】file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif接口的A/D转换...157【实例72】file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtmlclip1\01\clip_image002.gif接口的D/A转换...161第十章....164【实例73】单片机间双机通信...164【实例74】单片机间多机通信方法之一...166【实例75】单片机间多机通信方法之二...171【实例76】PC与单片机通信.
2023/8/13 0:42:44 929KB 51单片机 范例
1
课程1.入门课程2.从IGES文件输入几何体课程3.连柄的几何模型课程4.U形夹的三维几何模型课程5.U形夹的三维视图课程6.显示练习课程7.U形夹的三维有限元模型课程8.另一种U形夹的三维有限元网格课程9.验证及属性设置课程10.随空间和时间变化的载荷课程11.在三维U形夹上加载荷和边界条件课程12.定义材料特性课程12a.用材料选择器获得材料特性课程13.与空间相关的物理特性课程14.静态分析的建立课程15.组群和列表的使用课程16.位移结果的后处理课程17.应力结果的后处理课程18.瞬态响应结果的后处理课程19.后处理透视图课程20.瞬态和模态的动画课程21.与时间相关的结果课程22.将PATRAN2.5的模型输入到PATRAN3中果
2023/8/12 17:05:04 5.36MB patran
1
Microwind是法国青年学者EtienenSicard编制一个集成电路设计与仿真教学免费程序。
与某些仿真程序不同,Microwind在提供集成电路低层(Layout)设计工具的同时,还提供了基本的Spice仿真工具。
Microwind具有如下功能:BJTMOS元件结构设计绘制,可用来设计二极管、、管、电阻、电容和电感。
16层金属连线绘制。
3D制造过程显示。
2D器件断面显示。
Spice13BSIM4仿真,包括模型、模型和模型。
采用0.12µm设计规则检查。
Microwind作为集成电路设计课程学习的一个工具,具有比较完整的功能,完全可以满足教学的大部分需要。
需要指出的是,Microwind并不是一个工业软件,因此不能用来进行工业产品设计。
2023/8/12 16:36:51 2MB 集成电路设计 仿真
1
这个Matlab实现的程序,实现用于一维8位或16位整数数组的自适应Huffman哈夫曼编码。
2023/8/10 22:03:04 38KB Matlab Huffman
1
主要内容有C#开发环境的使用、C#语言基础应用、字符串处理技术、数组和集合的使用、面向对象编程技术、数据结构与算法、Windows窗体基础、特色窗体界面、窗体控制技术、MDI窗体和继承窗体、Windows常用控件的使用、Windows不错控件的使用、DataGridView数据控件、自定义用户控件、文件基本操作、文件夹基本操作、文件流操作、加密、解密及解压缩文件、C#与Word互操作、高效应用Excel、基本图形绘制、图像处理技术、常用图表应用、动画处理技术、音频与视频控制。
配书光盘附带了实例的源程序和部分视等第1篇C#编程基础篇第1章C#开发环境的使用21.1VisualStudio开发环境的安装与配置3  实例001配置合适的VisualStudio2008开发环境3  实例002设置程序代码行号4  实例003使开发环境全屏显示5  实例004根据需要创建所需解决方案61.2VisualStudio开发环境的使用7  实例005为程序设置版本和帮助信息7  实例006设置Windows应用程序启动窗体8  实例007统一窗体中控件的字体设置9  实例008通过“格式”菜单布局窗体101.3快速开发项目必备10  实例009为项目添加DLL文件引用10  实例010为项目添加已有类11  实例011为项目添加第三方控件12实例012为项目添加已有窗体13第2章C#语言基础应用152.1代码的注释16  实例013对单行代码进行注释16  实例014快速对多行代码进行注释17  实例015使用“///”标记给代码段添加说明182.2运算符的使用20  实例016使用引号运算符进行赋值20  实例017使用算术运算符开发简单计算器21  实例018使用“^”运算符对数字进行加密22  实例019巧用位移运算符获取汉字编码值24  实例020使用条件运算符判断指定年份是不是闰年25  实例021使用流程控制语句报销业务花销262.3关键字的使用27  实例022使用checked关键字处理“溢出”错误27  实例023使用typeof关键字获取类的内部结构28  实例024使用using关键字有效回收资源29  实例025使用is关键字检查对象是否与给定类型兼容30  实例026使用as关键字将对象转换为指定类型322.4流程控制语句的使用34  实例027小明去学校和医院分别要走哪条路34  实例028利用条件语句判断用户登录身份35  实例029判断指定月份属于哪个季节36  实例030使用switch语句更改窗体颜色37  实例031循环向控制台中输入内容38  实例032递归算法的经典面试题39  实例033制作一个数字猜猜看小游戏40实例034使用goto语句在数组中搜索指定图书42第3章字符串处理技术443.1字符及字符串转换45  实例035将字母全部转换为大写或小写45  实例036字母与ASCII码的转换46  实例037汉字与区位码的转换48  实例038将汉字转换为拼音493.2常用字符及字符串操作50  实例039根据标点符号对字符串进行分行50  实例040判断用户输入的用户名是否正确51  实例041将字符串的每个字符进行颠倒输出52  实例042去掉字符串中的所有空格54  实例043从字符串中分离文件路径、文件名及扩展名55  实例044获取字符串中汉字的个数57  实例045批量替换某一类字符串58  实例046对字符串进行加密与解密593.3常用数字处理技术61  实例047判断输入的货币值是否为数字61  实例048对计算结果进行四舍五入62  实例049商品金额的大小写转换63  实例050设置货币值中使用的小数位数64  实例051格式化输入数据为货币格式65  实例052开发一个进制转换器663.4日期时间格式的数据处理67  实例053动态获得系统当前日期和时间67  实例054手动设置系统日期时间69  实例055根据生日自动计算员工年龄70  实例056根据年份判断十二生肖71  实例0
2023/8/8 8:05:57 66B .net c#
1
Causedby:java.lang.ClassNotFoundException:org.slf4j.LoggerFactory需要jarlog4j-1.2.16.jarslf4j-api-1.6.1.jarslf4j-log4j12-1.6.1.jar
2023/8/3 6:54:01 455KB slf4j log4j
1
rancher-2.5.5K8SClientVersion:version.Info{Major:"1",Minor:"18",GitVersion:"v1.18.2",GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032",GitTreeState:"clean",BuildDate:"2020-04-16T11:56:40Z",GoVersion:"go1.13.9",Compiler:"gc",Platform:"linux/amd64"}K8SServerVersion:version.Info{Majo
2023/8/2 3:19:21 654.89MB Rancher k8s flink
1
提供给大家使用,源码可以随便使用和修改,欢迎多提意见,让这个工具更易用,方便Socket编程开发人源。
主要的功能如下:1.建立Socket测试服务器端和测试客户端,并向其他端发送或接受报文数据,支持自动发送和自动应答,支持UDP和TCP;
2.录入的IP地址和端口等参数数据进行本地XML序列化,下次自动打开。
(这个是我需要的,不用每次都录入各种IP地址端口了);
3.接受或发送的报文数据,可以直接保存在日志文件当中,便于离线分析。
4.服务器端,可以查看接入的各个连接信息;
5.支持AscII和16进制的数据发送和接收显示。
2023/8/1 13:09:32 3.4MB Socket 测试工具 源码 端口测试
1
共 1000 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡