在没有互联网的情况下iPhone的大词汇量语音识别
我用了需要字典的Openears。 当我们在字典中提到这个词时,它是有用的。 我想转换我们说的所有的话。 所以我用Nuance的演讲来认可dragaon SDK。 但它与networking服务器通信。 由于安全问题,我想避免服务器通信。 是否有可能将语音转换为文字,而不是在离线模式下与服务器进行通信?
无限词汇表的语音识别需要非常大的计算和内存资源(千兆字节的内存),因此在其他embedded式设备的iPhone上很难做到这一点。 iPhone比桌面慢了9倍。 iPad比较容易,因为它具有更强大的CPU。
谷歌已经付出了很大的努力,使他们的引擎工作离线听写,仍然倾向于发送数据到服务器,因为它更准确。
因为大部分在小设备上运行的解决scheme都使用有限的词汇。 虽然这个词汇可能足够大,所以你不会注意到这一点。 通常500-1000字足以覆盖大多数实际情况。 你可以使用OpenEars来识别这些词汇。
要训练语言模型,您需要从您的域(文字和expression)的文本。 CMUSphinx教程介绍了语言模型培训。 要使用语言模型,您可以使用以下OpenEars API调用:
- (void) changeLanguageModelToFile: (NSString *) languageModelPathAsString withDictionary: (NSString *) dictionaryPathAsString
请参阅API参考了解更多详情。
您可以使用OpenEars这样的词汇表和相应的语言模型来支持设备的自由格式文本input。
它可以做到,但是如果你正在寻找一个无限的词汇语音转换器,那么最好是如果计算是在服务器上完成的。 对于像智能手机这样的系统来说,这样一个系统的要求可能太大了。 您将有巨大的需求的主要领域如下:
- 词典将input语音映射到文本。
- 计算语音识别algorithm运行。
我相信这就是为什么像Google这样的公司在服务器上运行语音识别服务而不是在电话上运行的原因。
但是,如果应用程序是一个有限的话语文本,那么它可能是值得一试的。
祝一切顺利!
没有networking连接的情况下, pocketsphinx不能在iPhone上工作吗? 有没有像VocalKit漂浮在一些演示应用程序
http://www.rajeevan.co.uk/pocketsphinx_in_iphone/可能会有所帮助。