java - 如何查看Pocketsphinx词典中是否存在该单词?

标签 java android database voice-recognition cmusphinx

我只是想看看字典文件中是否存在字符串。 (字典文件位于问题底部)

我想检查语音识别器是否可以识别单词。例如,识别器将无法识别 ahdfojakdlfafiop 字符串,因为字典中未定义该字符串。那么,我可以检查一个单词是否在 pocktsphinx 的字典中吗?

类似于:

    if(myString.existsInDictionary){
startListeningBecauseExists();
    }else(
//Doesn't exist in dictionary!!!
       }

我只是想要一种方法来判断识别器是否可以监听我希望它监听的内容。

这是字典文件:

https://raw.githubusercontent.com/cmusphinx/pocketsphinx-android-demo/master/app/src/main/assets/sync/cmudict-en-us.dict

谢谢

鲁奇

最佳答案

在C中有ps_lookup_word函数允许您查找单词:

if (ps_lookup_word(ps, "abc") == NULL) {
    // do something
}

在 Java 包装器中,它是一个方法 Decoder.lookupWord:

if(decoder.lookupWord("abc") == null) {
    // do something
}

在 Android 中,您可以从 Recognizer 访问解码器:

if(recognizer.getDecoder().lookupWord("abc") == null) {
    // do something
}

关于java - 如何查看Pocketsphinx词典中是否存在该单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35737607/

相关文章:

java - 通过搜索两列从数据库返回数据

python - 使用烧杯将 session 数据存储在 Pyramid 的数据库中

java - 通过单击按钮关闭模式窗口

java - apache poi , DataFormatter 修剪超出十位小数的值

java - Excel 中 Java 中的 Selenium WebDriver 中的 2 个接口(interface)之间如何进行向下转型/向上转型

java - 我无法在我的应用程序上显示下载的图像

java - Android:使用解析的 IP 地址而不是主机名

java - 将用户输入编辑文本与 SQLite 数据库 Android Java 进行比较

java - 在android中使用onScanResult获取两个BLE设备

ruby-on-rails - 在列中存储版本号(例如 1、1.1、1.11、1.11.1)的最佳方法?