概述
1 系统环境
Ubuntu 16.04
2 CMUSphinx软件包下载和编译
Pocketsphinx —一个轻量级识别库,主要用于识别。
Sphinxbase — Pocketsphinx需要的支持库,负责语音信号的特征提取;
Sphinxtrain —声学模型训练
CMUclmtk —语言模型训练
关于以上包的详细介绍请参考:http://cmusphinx.sourceforge.net/wiki/download
2.1 安装Sphinxbase
git clone https://github.com/cmusphinx/sphinxbase
注意:安装过程可能需要安装一些依赖(如bison),按照提示进行即可
2.2 安装pocketsphinx
git clone https://github.com/cmusphinx/pocketsphinx
注意:安装前需要到处一些环境变量
export LD_LIBRARY_PATH=/usr/local/lib
当然这只是临时导出且仅对当前终端有效,为了一直有效我们可以放到/etc/ld.so.conf中加一行:
/usr/local/lib/pkgconfig
然后执行ldconfig
2.3 安装声学模型训练工具sphinxtrain
git clone https://github.com/cmusphinx/sphinxtrain
2.4 安装语言模型训练工具CMUCLMTK
下载cmuclmtk-0.7.tar.gz进行编译安装
3 测试
3.1获取声学和语言学模型
运行pocketsphinx进行语音识别需指定三个文件:声学模型、语言模型和字典文件。
方式一:网络下载https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/
方式二:自行训练
3.2 自行建立一个简单模型验证
(1)创建预料文件yuliao.txt
start
I am a man
turn left
turn right
end
(2) 利用在线工具lmtool生成模型
http://www.speech.cs.cmu.edu/tools/lmtool.html
点击Browse按钮,选择之前创建的corpus.txt, 最后点击COMPILE KNOWLEDGE BASE ,生成文件真正有用的是.dic、.lm 的文件。
(3)测试
pocketsphinx_continuous -lm 8221.lm -dict 8221.dic -inmic yes
注意:次方法适用于小批量简单词语识别,不可用于中文识别;大批量词语场合要自行训练
3.3 利用现有语言学和声学模型
这里我们下载病验证中文模型,
声学模型:zh_broadcastnews_16k_ptm256_8000.tar.bz2
语言模型:zh_broadcastnews_64000_utf8.DMP
字典文件:zh_broadcastnews_utf8.dic
下载之后把以上3文件放到同一目录解压,然后使用下面测试,pocketsphinx_continuous -hmm zh_broadcastnews_ptm256_8000/ -lm zh_broadcastnews_64000_utf8.DMP -dict zh_broadcastnews_utf8.dic -inmic yes
说明:
1)-hmm选项指定声学模型文件夹 –lm选项指定语言模型 –dict选项指定字典文件
2)-inmic yes从麦克风输入发音或者-infile file.wav从文件输入发音
最后
以上就是自觉巨人为你收集整理的CMUSphinx pocketsphinx使用的全部内容,希望文章能够帮你解决CMUSphinx pocketsphinx使用所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复