2014-11-21 129 views
6

我建立一个语音识别的Android应用程序,将作为一个虚拟私人助理的任务,如:Pocketsphinx VS谷歌的语音识别API

请预约/提醒

天气信息

一般查询到Wolfram | Alpha/Wikipedia - (即谁指挥捉鬼敢死队,最新英镑兑换汇率)

我的问题是使用Pocketsphinx还是Google API?

本来我用“android.speech.RecognitionListener”设置了这个,效果很好,但是我想实现关键字定位,所以用户不需要进行任何交互而不只是说话。

显然谷歌API不支持这个,所以我看着使用pocketsphinx这个,并仍然使用谷歌的应用程序的其余部分(因为我听说pocketsphinx是不是准确?) 但是,这两个不因为他们不能同时占据麦克风而相处得很好。

在识别器之间切换是否有很好的方法? (甚至不能进口到同一个项目)

我应该只是与pocketshinx去处理较低的准确性?

建议将是有益

干杯

+1

你用pocketsphinx实现唤醒词,然后通过用pocketsphinx停止录音切换到谷歌识别器的问题是什么? – Florent 2014-11-21 16:42:15

+0

尽我所知,他们不能同时导入到同一个项目中,但是我觉得我可能在过去的5分钟内解决了这个问题,当我明白为什么以及如何多一点时,我会发表一个答案在这里让未来的人受益 – Aphire 2014-11-21 17:24:59

+0

与GSR相比,Pocketsphinx显得非常糟糕。通过抽样/ dev/random可以获得更好的结果。 – Cerin 2014-12-09 02:43:58

回答

1

对于谁想要实现一个类似的项目任何人,我发现周围的工作。它的技巧很高尚,并且不完全干净,但是很有效。

在web上的许多示例中,使用android语音识别器和开关切换开关,当onResults返回时,将检查字符串是否存在所述“热门词汇”,如果不存在,则丢弃该字符串,如果是,处理它。一旦处理完查询并且文本到语音正在响应,以编程方式重新点击切换按钮,确保持续监听。

对“onError”也做同样的事情。 我也有过部分结果,但它似乎使线程崩溃,不完全确定为什么,但一旦它被删除,一切似乎很好地工作。

+0

所以你已经使用Google API的权利? – thanga 2016-06-15 03:54:14

+0

我最终没有触及项目近两年,虽然 – Aphire 2016-06-15 08:17:03

+0

哦好..感谢Aphire – thanga 2016-06-15 09:33:45