要做一个在android上离线语言识别功能。搜索了一下只有Sphinx比较适合,资料也有。Sphinx库的编译和使用方法在网上比较多的资料都是源自http://ucla.jamesyxu.com/?p=118这个老外写的,但是时间较早2011年的。这个编译是在linux下的,windows下的可以参考http://gaebolg.blog.163.com/blog/static/19826906820136232810723/。目前2015在官网http://cmusphinx.sourceforge.net/wiki/tutorialandroid上的的编译和使用方法已经太不一样。


最后,我并没有编译,而是在 Android平台使用PocketSphinx做离线语音识别,小范围语音99%识别率 这篇文章中找到了可以直接使用的APK源码,里边已经包含了Sphinx 编译出来的库文件,文章里也说了制作语言模型的方法。直接使用该源码和制作出适合自己的语言模型就达到目的了。


对于制作语言模型的方法,这里要说一下。按照博客里说的方法是不完全的。我在windows下制作语言模型并没有成功,查看到评论里Tinux的回复,原来是字符编码的问题。


原来语言模型里的test.lm和test.dic文件,他们的字符编码和换行符有要求,字符编码需要是UTF-8,换行符需要是\n(即0x0A)。Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<换行><回车 >”,即“\n\r”;Mac系统里,每行结尾是“<回车>”。根据Tinux的回复中方法,我的解决办法是在linux里编辑,里边换行是0x0A。中文通过在mandarin_notone.dic文件中搜索并拷贝生成command.txt和test.dic。

更多相关文章

  1. Android初始化语言 (init.*.rc、init.conf文件格式)
  2. Android 安全模型
  3. 从头构建android 本地C++语言可执行程序
  4. Android 4.0 开发环境离线安装(Linux)
  5. Android根据不同语言切换图片
  6. Android 用java语言执行Shell命令
  7. Android JNI 使用其它语言
  8. Xamarin Mono For Android 4.6.07004 完整离线安装破解版(C#开发A
  9. Android的多语言文件转IOS多语言文件格式

随机推荐

  1. 基于ffmpeg+opengl+opensl es的android视
  2. Android蓝牙开发简介
  3. 提升Android开发效率的最佳实践
  4. Android中添加自定义按键 ---- 非标准做
  5. Android 动态加载布局文件
  6. android 服务的应用,在Activity中实现背景
  7. Android(安卓)N预览版 权限上的一些改变
  8. Android 应用程式的基本档案结构
  9. android 广告方面知识汇总
  10. android 9 patch