问题标签 [cmusphinx]

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 回答
718 浏览

speech-recognition - 使用 htk 进行非数字识别

我一直在尝试将 HTk 与 sphinx4 结合用于语音识别应用程序。我将输入作为 wav 文件提供,并且我正在使用 sphinx 提供的“转录器演示”和“格子演示”,但是输出几乎是不可接受的。所以我决定用 Sphinx4 引入 HTK。但由此产生的输出似乎遥遥无期。我相信配置可以进一步调整..比我正在做的。我已经很好地搜索了是否有任何与使用 htk 和 sphinx4 相关的教程。除了这个惊人的博客(http://nsh.nexiwave.com/2009/09/using-htk-models-in-sphinx4.html)我还没有发现其他任何东西。任何人都可以在这里帮助我以提高我的识别准确性..

我的配置文件是狮身人面像如下:

任何帮助将非常感激

0 投票
1 回答
12200 浏览

java - 用于在音频文件中转录语音的开源软件

任何人都可以推荐可靠的开源软件来在 wav 文件中转录英语语音吗?我研究过的两个主要程序是SphinxJulius,但我从来没有能够让任何一个工作,而且每个关于转录文件的文档充其量是粗略的。

我正在 64 位 Ubuntu 10.04 上开发,其存储库包括 sphinx2 和 julius,以及 voxforge 的 julius 英语声学模式。我专注于转录文件,而不是直接处理来自麦克风的声音,因为我已经放弃了期望像这样的项目与 Ubuntu 的音响系统一起工作。这不是对 Ubuntu 的打击,因为我可以使用 Audacity 完美地用我的麦克风录制声音,但是这两个系统似乎都无法访问我的麦克风,所以我希望我可以通过从文件中读取来简单地配置它们。

我首先尝试了来自 Ubuntu 软件包 sphinx2-bin 的 Sphinx2。尽管示例 sphinx2-demo 似乎可以用于转录文件,但实际上没有关于配置的文档,所以我不确定如何自定义它以从任意 wav 读取。演示中使用的音频文件是一些未记录的“16k”格式,通过2个配置文件间接引用。有一个简短的说明,将 sphinx2-demo 描述为运行 sphinx2-batch,但检查脚本表明它实际上是在调用 sphinx2-continuous。更糟糕的是,每个脚本的 --help 文档列出了大约 6 打选项,并且没有提及哪些是必需的或可选的。总的来说,sphinx 文档的缺乏以及现有文档的质量差让我抓狂。

接下来我尝试了 Julius,再次来自 Ubuntu 软件包,考虑到 Voxforge 的快速入门中使用的版本是 3.5,它是令人惊讶的最新版本(4.1)。该软件包似乎包含更好的文档,甚至还有一个用 Python 编写的示例 (/usr/share/doc/julius-voxforge/examples/controlapp)。在阅读了示例的文档后,我尝试通过创建一个filelist.txt包含文本“hello.wav”的文件来调整它以从文件中读取,该文件引用了一个同名文件,其中包含有人说“hello”的录音。将它们放在同一个目录中,我运行:

得到回应:

通过为 filelist.txt 和 hello.wav 指定绝对文件名重试会产生相同的错误。

我还尝试了示例中使用的 Julius 调用,直接从麦克风录制:

我多次调用它,响应因错误而异:

和:

在后一种情况下,无论我对着麦克风说什么,都没有任何反应。我不知道它是否仍然无法读取麦克风,或者它是否正在读取某些内容,但根本无法转录音频。

我不知道该怎么做。我遇到的错误并没有给我留下太多的余地。为什么不能读wav?为什么它不能读取 /dev/dsp?为什么它看起来能够读取 /dev/dsp,但没有任何反应?

有没有其他人在开源语音识别器方面取得任何成功,尤其是在 Linux 上?

0 投票
2 回答
1553 浏览

java - 在 Java 中运行连续批处理

我有一个批处理文件,它执行收听麦克风并将其转换为文本的操作(我使用的是袖珍狮身人面像)。

我用来运行批处理文件的命令是pocketsphinx_continuous.exe -dict <dict name> -lm <language model> -hmm <acoustic model location>. 批处理文件启动并继续收听麦克风。每当我们说完一个句子时,它就会在命令提示符下将其转换为文本。由于它连续运行,我们通过Ctrl-终止此任务C

我试图把它变成一个独立的 Java 应用程序。我想通过 Java 运行这个批处理文件,所以我使用Runtime.getRuntime().exec("cmd /c start pocketsphinx_continuous.exe ...")了所有参数。然而奇怪的是,它在单独的命令提示符下启动批处理但立即退出。我尝试使用process.waitfor(),但它只是开始执行批处理然后终止。我还没有打电话process.destroy,所以我无法弄清楚它为什么退出批处理。

另一个问题是,由于批处理文件是连续运行的,在每个口语句子都被转录后,我希望在我的 Java 应用程序中获得输出。我知道我可以将批处理重定向到文件然后读取文件,只是想知道是否有更直接的过程。你能帮我弄清楚我在哪里犯了错误。

0 投票
1 回答
1117 浏览

android - 为Android编译pocketsphinx时出错

我正在尝试为 Android 编译 pocketsphinx,但在编译过程中出现以下错误:

我已按照http://cmusphinx.sourceforge.net/2011/05/building-pocketsphinx-on-android/comment-page-1/中提到的所有步骤进行操作

文件 pocketsphinx_wrap.odorg 甚至不存在,但 pocketsphinx_wrap.od 存在于指定位置。

我将pocketsphinx_wrap.od 复制到pocketsphinx_wrap.odorg,并为每个文件赋予rwx 权限。仍然发生错误。

但是,当我运行它运行的应用程序并且在 logcat 中看到以下错误

有没有其他人遇到过类似的问题?这是否必须对文件权限做任何事情,或者文件的名称是否由于发生错误而设置错误?

提前致谢!!

0 投票
2 回答
445 浏览

android - 用于语音到文本转换的 API。

我在互联网上查看了语音到文本转换 API。CMUSphinx、Android 内置 API(级别 3)和 pygooglevoice 存在。

其中哪个最准确?(我正在寻找在移动平台上使用的 API)。

谢谢。

0 投票
1 回答
969 浏览

speech-recognition - 如何减少pocketshpinx中的语音采集时间

正如标题一样,我在嵌入式设备上使用pocketshpinx 开发语音识别系统。我在嵌入式设备上安装了pocketshpinx。但是获取语音的时间很慢,识别结果很差。在应用程序运行期间,获取语​​音时间约5000ns到compute_frame_pow。有必要吗?如何提高计算率?

0 投票
3 回答
4636 浏览

android - 更改包名会破坏 JNI

我尝试为我的应用程序使用 pocketsphinx 包,并且需要将演示包名称重命名为有用的名称(例如 com.myname.foo)

我花了几个小时弄清楚,但我根本无法让它发挥作用。

问题是,如果我留下包名并且没有任何问题(除了随机崩溃),项目运行良好,但是当我重命名它时,我得到了错误

我已经尝试过修改 Swig 命令,但也没有用。

有任何想法吗?

我只更改了Manifest的包名声明和正常Activity的包文件夹。

0 投票
2 回答
2841 浏览

cmusphinx - CMU Sphinx的德语发音词典

我正在寻找德语发音词典,以便用于 PocketSphinx / CMU Sphinx。

字典看起来像这样:

找到这些英文版没问题,但我找不到德文版。你知道在哪里可以找到它吗?

0 投票
1 回答
255 浏览

iphone - pocketsphinx 配置错误

当我开始在 mac 上配置 pocketsphinx 时,在 SphinxBase 中使用此命令在终端上发生了 3 个错误

这些是错误

bitvec.lo 错误 1
​​安装递归错误 1
​​安装递归错误 1
​​安装递归错误 1

我该如何解决?

0 投票
1 回答
1190 浏览

java - 是否有适用于 java 的 CMU Sphinx 本地 lmtool?

我想将单词转换为其 Arpabet 翻译。

就像是:

但我想在 java 中以编程方式进行,sphinx 在http://www.speech.cs.cmu.edu/tools/lmtool.html提供了一个网络工具。我知道我可以使用套接字在 Java 中请求这个工具并嗅出返回的 .dic 文件,但我不能使用它,因为并非我的应用程序的所有用户都有互联网连接。

我还检查了 Sphinx 的 logios 包,但它是用 perl 和批处理文件编写的。我可以使用它,但我想让我的应用程序独立于平台,如果我在项目中包含 perl shell,我认为这有点过火了。

如果有任何我可以重用的 java 库或算法,那么我可以执行类似的操作ConvertToSphinxArpabet("HELLO"),然后我会返回“HH AH L OW”字符串。