2010-06-30 185 views
16

我正在看做android中的语音识别。该程序需要持续的语音识别。图书馆只需要大约10个字。我曾考虑过使用谷歌API,但我认为它不会起作用。 (我不能有任何东西覆盖屏幕)。我一直在寻找其他方法,但似乎没有任何工作。有没有可能使用java的语音识别库,或者有没有其他的方式来解决这个问题?连续语音识别Android

总之
1.需要连续语音输入在最大
3.
2 10个字可以训练如果程序的必要
4.概述 - 显示画面,等待语音输入或触摸输入时,更新屏幕重复
5.不能涵盖屏幕上显示的内容

任何帮助,将不胜感激。
在此先感谢

+0

4a。语音命令无法识别时会发生什么? – 2010-06-30 14:55:48

+0

如果该命令无法识别,程序应继续等待可理解的语音或触摸输入 – Joe 2010-07-01 11:36:21

+3

嘿乔,我有类似的需求。你能得到你想要的东西吗? – wullxz 2011-05-17 07:00:07

回答

1

下面是Oracle对Java的说明Speech API Frequently Asked Questions

+0

谢谢,我一直在看。我的问题是可以打包为Android?我想最好的办法就是去尝试实施你好的演讲。 – Joe 2010-07-01 11:30:54

+6

这项工作在Android上完成吗? – longhairedsi 2011-06-29 14:53:31

+0

链接已损坏。 – Zammbi 2012-10-28 22:16:31

6

我认为你必须直接从手机的麦克风捕捉音频并将其传输到自己的识别服务。 Google识别API是作为一种意图构建的,它启动了他们自己的识别对话框并为您提供结果。如果你想在没有UI的情况下持续识别,你必须自己构建这个功能。

+4

如果您想摆脱默认的语音识别UI,您需要实现RecognitionListner,直接调用SpeechRecognition服务。您可以在http://code.google.com/p/my-work-and-play-android/source/browse/trunk/android/speech/SpeechRecognizer/SpeechRecognizer/src/com/SpeechRecognizer/SpeechRecognizerActivity找到示例。 java – JeeZ 2012-11-05 08:13:35

5

CMUSphinx最近在Android平台上实现了连续监听。您可以在wiki page

上找到演示您可以配置一个或多个关键字进行收听,默认关键字是“oh mighty computer”。您也可以配置检测阈值。目前支持的语言是美国英语和少数其他语言(法语,西班牙语,俄语等)。你可以训练你自己的语言模型。

听力很简单,你创建一个识别器和只添加关键词识别搜索:

recognizer = defaultSetup() 
      .setAcousticModel(new File(modelsDir, "hmm/en-us-semi")) 
      .setDictionary(new File(modelsDir, "lm/cmu07a.dic")) 
      .setKeywordThreshold(1e-5f) 
      .getRecognizer(); 

    recognizer.addListener(this); 
    recognizer.addKeywordSearch(KWS_SEARCH_NAME, KEYPHRASE); 
    switchSearch(KWS_SEARCH_NAME); 

,并定义一个监听器:

@Override 
public void onPartialResult(Hypothesis hypothesis) { 
    String text = hypothesis.getHypstr(); 
    if (text.equals(KEYPHRASE)) 
     // do something 
} 

,而不是一关键短语,你可以指定一个命令文件路径在文件系统上:

recognizer.addKeywordSearch(KWS_SEARCH, new File(assetsDir, 
      "commands.lst").toString()); 

哪个命令文件commands.lst个包含命令每行一个:

oh might computer 
    ok google 
    hello dude 

要放在文件系统这个文件,你可以把它的资产和运行在应用程序启动syncAssets。

+0

我已经成功下载并运行了口袋狮身人面像的android演示,但是如何在现有的应用程序中使用它? – 2016-02-13 18:49:57

0

,它会开始监听我有同样的要求几个月前,并决定写我自己的library

我相信它也应该符合你的要求;)