问题标签 [pocketsphinx-android]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
176 浏览

pocketsphinx-android - 即使我在说话,也会调用 Pocketsphinx android onEndOfSpeech()

我正在尝试识别应用程序中的数字。当我说数字时,它会调用onEndOfSpeech()方法,但我仍然必须说数字。有时它工作正常,有时即使有 0.5 秒的延迟也会导致语音结束。

0 投票
1 回答
375 浏览

pocketsphinx-android - PocketSphinx on Android setKeywordThreshold() 问题

我想通过 setKeywordThreshold() 方法降低阈值。官方演示应用程序中 this 的默认值为 1e-45。有人告诉我,最小值可能是 1e-200。见这篇文章:https ://sourceforge.net/p/cmusphinx/discussion/help/thread/05d09693/?limit=25

因此,我尝试将其设置为 1e-150,但 Android Studio 抱怨阈值应为“float”类型,而不是“double”类型。

谁能告诉我如何将其设置为低于 1e-45?谢谢!

0 投票
1 回答
3529 浏览

android - Pocketsphinx - 完善热词检测

我最近重新访问了CMU Sphinx并尝试为 Android 设置一个基本的热词检测器,从教程开始并调整示例应用程序

我遇到了各种问题,尽管深入研究了他们的文档,但我无法解决这些问题,直到我无法再阅读......

为了复制它们,我制作了一个基本项目,旨在检测关键字唤醒你唤醒我

我的字典:

我的语言模型:

以上两个都是使用建议的工具创建的。

我的关键短语文件:

调整上面链接的示例应用程序,这是我的代码:

注意:- 我是否应该将我选择的关键短语(和其他相关文件)更改为更加不同,并且我在安静的环境中测试实现,应用的设置和阈值工作非常成功。

问题

  1. 当我说唤醒你唤醒我时,两者都会被检测到。

我无法确定如何对结尾音节应用增加的权重。

  1. 当我说只是wakeup时,通常(但不总是)两者都会被检测到。

我无法确定如何避免这种情况发生。

  1. 在针对背景噪声进行测试时,误报太频繁了。

我无法降低我正在使用的基本阈值,否则在正常条件下无法始终如一地检测到关键短语。

  1. 当长时间针对背景噪音进行测试时(5 分钟应该足以复制),立即返回安静的环境并说出关键短语,导致检测不到。

在成功且重复地检测到关键短语之前需要一段不确定的时间 - 就好像测试是在安静的环境中开始的一样。

我发现了一个可能相关的问题,但链接不再有效。我想知道我是否应该更频繁地重置识别器,以便以某种方式将背景噪声从平均到检测阈值中重置?

  1. 最后,我想知道我对有限关键词的要求是否可以让我减小声学模型的大小?

在我的应用程序中打包时的任何开销当然都是有益的。

最后(老实说!),特别希望@NikolayShmyrev会发现这个问题,有没有计划完全通过gradle 包装一个基本的Android 实现/ sdk?

我感谢那些让我走到这一步的人...

0 投票
1 回答
166 浏览

android - 声学模型中缺少电话“MA”;单词'masoud' - 口袋狮身人面像

我的名字是masoud。现在我想当我说masoud,我的应用程序打印一个控制台日志。

为此,我制作了一个mdic.txt文件,并将我的名字放入其中:

马苏德 MA SOD

我改为mdic.txt并将mdic.dict其放在assets/syncdirecotry 中。

我制作了一个cm.txt文件,并在其中放入了一个字符串:

cm.txt改为cm.gram.

在我的 MainActivity

现在我收到了这条消息:

“dict.c”,第 195 行:第 1 行:声学模型中缺少电话“MA”;单词“masoud”忽略了“kws_search.c”,第 171 行:字典中缺少单词“masoud”

我在recognizer.addKeywordSearch(KWS_SEARCH, new File(assetsDir, "mdic.dict"));line 收到此错误。

0 投票
1 回答
916 浏览

android - Pocketsphinx Android 演示错误:“无法初始化识别器 java.io.IOException:无法初始化录音机。麦克风可能已在使用中。”

我一直在使用 Pocketsphinx Android 演示并收到错误:“无法初始化识别器 java.io.IOException:无法初始化记录器。麦克风可能已经在使用中。”

错误是什么意思,我能做些什么来解决它?

0 投票
2 回答
576 浏览

android - 如何告诉 Android Studio 不要在 jniLibs 文件夹中查找特定库?

我是 android studio 的新手,正在开发一个使用 OpenCV 的现有项目。我需要为 Android 实现 CMU 的 Pocketsphinx,并且按照他们提供的安装步骤,我在项目的 /src 目录中创建了一个 jniLibs 文件夹,并将用于 pocketsphinx 的适当文件放在那里。

这就是问题发生的地方 - 当我这样做时,我突然收到以下错误消息:

如果我在 /src 目录中没有 jniLibs 文件夹,我不会收到此错误,但当然我会从 pocketSphinx 收到一个错误,说它找不到所需的 .so 文件。

更重要的是,在查看了 OpenCV 的 SDK 之后,我注意到没有“libjniopencv_core.so”这样的文件。它在任何地方都不存在,还有其他 .so 文件,但没有一个具有该名称。即使我将所有 armeabi 和其他目录从 openCV 安装到我的新 jniLibs 文件夹,我仍然会收到此错误消息。

如何告诉 android studio 仅加载 pocketsphinx jniLibs 文件,而忽略在该目录中搜索 openCV .so 文件?

0 投票
1 回答
204 浏览

android - 拥有作为 android pocketsphinx 的输出

我们正在使用 pocketsphinx 来帮助我们将 .wav 文件转换为文本文件。我们不知道为什么它给我们一个奇怪的输出,因为它只给我们<s>并且</s>在转换之后。我们使用 cmusphinx 社区提供的默认字典、语言模型和声学模型。

这是我们用于转换的代码:

0 投票
1 回答
723 浏览

speech-recognition - 同时使用语音识别和可视化工具

目前我正在使用pocketsphinx进行语音识别和可视化器来显示我对麦克风所说的音频波形但是,我一次只能运行一件事。因为麦克风将被可视化器使用,并且在语音识别中没有任何反应。请查看我的代码并帮助我同时运行它们

主要活动

这是可视化视图

这是布局

0 投票
1 回答
372 浏览

android - 个别关键短语的分裂假设

我在我的 Android 应用程序中使用 Pocketsphinx。我有一组相对较少的命令需要独立识别,所以我最终使用了来自如下文件的关键字搜索:

实际列表不是英文的,因此为了示例,这些关键字是任意选择的。我意识到这些阈值可能不太理想,而且短词容易出现不匹配。

这种方法会出现问题:

请注意,有些词听起来非常相似。事情是,

  • “一”导致"done one" recognized
  • “完成”导致"one done" recognized

不幸的是,我找不到任何文档hypstr_get(如果您能指导我,我将不胜感激)但实际上它似乎以概率递增的顺序返回了可能匹配的连接字符串。

如何从中检索实际命令hypothesis?我不能只hypothesis.getHypstr()用空格分割,因为有些命令是关键短语而不是关键字。我只想要一个最可能的结果。

谢谢。

0 投票
0 回答
182 浏览

android - Pocketsphinx 解码器无法初始化

我正在尝试在我的应用程序中实现一个启动指令,它将使用 CMUSphinx 启动语音输入。我从教程中复制了代码,做了一些更改以启动语音输入,但它不起作用。我用于识别的 mainActivity 代码如下所示:

我的关键词是“HI”。问题是,每当我运行此代码时,我都会收到一条“失败”的 toast 消息,原因是:

这可能有什么问题?

我对这些东西很陌生,所以这方面的任何帮助都会非常有帮助。

谢谢你。