近期做项目。用到离线语音识别。整了好久,查了好多方法。最终完毕。网上资料有点乱,并且大部分就是那几个人写的。一群人转!以下我总结一下。也为后来人行个方便。

关于环境配置我就不多说了。我就是依照这个教程一步步来的,绝对是可行的。http://gaebolg.blog.163.com/blog/static/19826906820136232810723/

以下重点解说一下demo的执行和语音库的配置(注意:上面那个教程的执行demo最后写的一塌糊涂。能够从拷贝声学模型和语音库那里開始看我的。)

首先,demo执行须要下面文件:pocketsphinx/model/en_US
下lm目录(
.dic文件, .lm文件),以及hmm目录。假设认为麻烦能够下载我提供的文件。http://download.csdn.net/detail/u011747781/8034061

以下进入重头戏。就是怎样设置属于自己的中文语音库:

1、编写自己的命令集:

新建一个txt文件,输入命令。如:

百度

谷歌



点击文件。另存为。注意将编码改为UTF-8格式。(正下方编码选项)保存为txt文件。

2、利用在线工具http://www.speech.cs.cmu.edu/tools/lmtool.html将写好的txt文件生成文件。下载tgz文件就可以(里面有全部文件),复制tgz压缩包中的lm文件。由于仅仅有这个实用(假设是英语的话,dic文件能够直接用,就不用我以下介绍的方法生成dic文件了!!

3、新建一个txt文件。在我给的data目录里,有个叫做standard.dic的文件。那个是标准语音库,ctrl+F 查找你须要的发音。拷贝到你新建的txt文件里。

格式例如以下:

百度 b ai d u

完事后存为UTF-8格式,改名为 .dic文件。

4、这样属于你的语音库就建好了,仅仅需覆盖我的data目录中对应的dic , lm文件 就可以!

最后,奉上亲測可用的完整demo 
http://download.csdn.net/detail/u011747781/8034195

05-18 10:21