标签: cmusphinx

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

任何人都可以推荐可靠的开源软件来转录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软件包,这是令人惊讶的最近(4.1),考虑到Voxforge的快速启动中使用的版本是3.5.该软件包似乎包含更好的文档,甚至是用Python编写的示例(/ usr/share/doc/julius-voxforge/examples/controlapp).在阅读了示例的文档之后,我尝试通过创建一个filelist.txt包含文本"hello.wav" 的文件来调整它来读取文件,该文件引用了一个同名文件,其中包含一个说"你好"的人的录音.将它们放在同一目录中,我运行:

julius -input file -filelist filelist.txt -C julian.jconf
Run Code Online (Sandbox Code Playgroud)

得到回应:

### read waveform input
Error: adin_file: sampling rate != 16000 (8000)
Error: adin_file: error in parsing wav header at hello.wav
Error: adin_file: failed to read speech data: "hello.wav"
0 files processed
Run Code Online (Sandbox Code Playgroud)

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

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

julius -input mic -C julian.jconf
Run Code Online (Sandbox Code Playgroud)

我多次打电话,错误之间的响应不同:

Cannot read /dev/dsp
Run Code Online (Sandbox Code Playgroud)

和:

STAT: AD-in thread created
<<< please speak >>>
Run Code Online (Sandbox Code Playgroud)

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

我不知道该怎么做.我得到的错误并没有给我留下太多的意思.为什么不能读取wav?为什么不能读取/ dev/dsp?为什么它似乎能够读取/ dev/dsp,但不以任何方式作出反应?

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

python java speech-recognition speech-to-text cmusphinx

19
推荐指数
1
解决办法
1万
查看次数

使用PocketSphinx识别多个关键字

我已经安装了PocketSphinx演示版,它在Ubuntu和Eclipse下工作正常,但是尽管我尝试了,但我无法弄清楚如何添加多个单词的识别.

我想要的只是代码识别单个单词,然后我可以switch()在代码中,例如"向上","向下","向左","向右".我不想识别句子,只想单个单词.

对此有任何帮助将不胜感激.我发现其他用户有类似的问题,但到目前为止还没有人知道答案.


令我困惑的一件事是为什么我们需要使用"唤醒"常数?

private static final String KWS_SEARCH = "wakeup";
private static final String KEYPHRASE = "oh mighty computer";
.
.
.
recognizer.addKeyphraseSearch(KWS_SEARCH, KEYPHRASE);
Run Code Online (Sandbox Code Playgroud)

什么wakeup与任何事情有关?


我已经取得了一些进展(?):使用addGrammarSearch我能够使用一个.gram文件列出我的单词,例如up,down,left,right,forwards,backwards,如果我说的都是那些特定的单词,这似乎很有效.但是,任何其他单词都会导致系统与所述的"最近"单词相称.理想情况下,如果所说的单词不在.gram文件中,我不希望发生识别...

android speech-recognition cmusphinx

17
推荐指数
2
解决办法
2万
查看次数

ARPA语言模型文档

我在哪里可以找到有关ARPA语言模型格式的文档?

我正在使用pocket-sphinx STT引擎开发简单的语音识别应用程序.出于性能原因,建议使用ARPA.我想了解我可以做多少来调整我的语言模型以满足我的自定义需求.

我发现的只是一些非常简短的ARPA格式描述:

我是STT的初学者,我很难绕过这个(n-gram等等).我正在寻找更详细的文档.像这里的JSGF语法文档:

http://www.w3.org/TR/jsgf/

speech-recognition nlp sphinx4 cmusphinx language-model

15
推荐指数
2
解决办法
8482
查看次数

创建50,000字的ARPA语言模型文件

我想用近50,000个单词创建一个ARPA语言模型文件.我无法通过将文本文件传递给CMU语言工具来生成语言模型.是否有其他链接可用于获取这些单词的语言模型?

speech-recognition n-gram cmusphinx language-model

13
推荐指数
1
解决办法
6419
查看次数

实时语音识别

我有一个 Python 脚本,使用 Speech_recognition 包来识别语音并返回所说内容的文本。然而,转录有几秒钟的延迟。是否有另一种方法可以编写此脚本以在说出每个单词时返回它?我有另一个脚本来执行此操作,使用 pysphinx 包,但结果非常不准确。

安装依赖:

pip install SpeechRecognition
pip install pocketsphinx
Run Code Online (Sandbox Code Playgroud)

脚本 1 - 延迟语音到文本:

import speech_recognition as sr  

# obtain audio from the microphone  
r = sr.Recognizer()  
with sr.Microphone() as source:  
    print("Please wait. Calibrating microphone...")  
    # listen for 5 seconds and create the ambient noise energy level  
    r.adjust_for_ambient_noise(source, duration=5)  
    print("Say something!")  
    audio = r.listen(source)  

    # recognize speech using Sphinx  
    try:  
        print("Sphinx thinks you said '" + r.recognize_sphinx(audio) + "'")  
    except sr.UnknownValueError:  
        print("Sphinx could not understand audio") …
Run Code Online (Sandbox Code Playgroud)

python speech-recognition speech-to-text cmusphinx pocketsphinx

13
推荐指数
1
解决办法
6017
查看次数

如何在pocketsphinx中关闭E_INFO?

E_INFO正在打印一堆日志.我不知道怎么能把它关掉.我从口袋/基础狮身人面像的所有源文件中搜索了E_INFO,但我无法找到它设置标志的位置.

cmusphinx

11
推荐指数
1
解决办法
4160
查看次数

CMUSphinx PocketSphinx - 识别所有(或大量)单词

在我尝试使用PocketSphinx for Android之前,我使用了Google的语音识别API.我不需要设置搜索名称或字典文件.它只是承认了所说的每一个字.

现在,在PocketSphinx中,我需要这样做.但是我只能找到如何为一个单词设置识别,或者设置字典(演示项目中可用的字典只有很少的单词),识别器认为这些是唯一存在的单词,这意味着如果有人说类似的话,识别器认为它是字典中列出的单词.

我只是想问,我怎么能设置一些搜索名称,或者如何设置它来识别所有可用的单词(甚至是大量的单词)?也许某人有一个包含大量单词的字典文件?

android dictionary cmusphinx pocketsphinx-android

11
推荐指数
1
解决办法
5825
查看次数

Pocket Sphinx on Android

What are the steps required to use PocketSphinx on Android?

I have found various hints around the web that it is possible, but not real answers and hence I ask my question here.

android speech-recognition cmusphinx

10
推荐指数
1
解决办法
9968
查看次数

如何使用CMU Sphinx 4将语音转换为带有英语voxforge模型的文本

我正在试图弄清楚如何使用sphinx4或pocketsphinx与英国voxforge模型,但我不能让它工作.我试过阅读doc页面(比如这个http://cmusphinx.sourceforge.net/sphinx4/doc/UsingSphinxTrainModels.html),但它对我没有帮助.

我要的是一个可执行文件,我可以指定要使用的模型和音频文件作为源使用,并具有可执行文件打印出来它是什么在录音的声音说最好的猜测.

我喜欢运气:pocketsphinx_continuous -infile recording.wav 2>/dev/null

但它在转录完整的音频文件之前中止,并且默认模型可以通过几个单词从音频创建可读文本.

我已经编译并测试了sphinx4源程序包中的演示,但是所有示例似乎都只有很少的单词,并且需要一个模型来使用voxforge对我有用.

我怎么设置它?

java speech-to-text cmusphinx

10
推荐指数
1
解决办法
3万
查看次数

RaspberryPi + Pocketsphinx + ps3eye错误:无法打开音频设备

刚刚在我的覆盆子pi上安装了pocketsphinx.我觉得我疯了但不确定我是否提供了正确的设备.

每当我跑:

src/programs/pocketsphinx_continuous -adcdev plughw:1,0 -nfft 2048 -samprate 48000

我得到以下内容:

root @ scarlettpi:/usr/install/pocketsphinx-0.8#src/programs/pocketsphinx_continuous -adcdev plughw:1,0 -nfft 2048 -samprate 48000 INFO:cmd_ln.c(691):解析命令行:/ usr/install/pocketsphinx -0.8/src/programs/.libs/lt-pocketsphinx_continuous\-adcdev plughw:1,0\-nfft 2048\-samprate 48000

当前配置:[NAME] [DEFLT] [VALUE] -adcdev plughw:1,0 -agc无无-agcthresh 2.0 2.000000e + 00 -alpha 0.97 9.700000e-01 -argfile
-ascale 20.0 2.000000e + 01 -aw 1 1 -backtrace无无-beam 1E-48 1.000000e-48 -bestpath是是-bestpathlw 9.5 9.500000e + 00 -bghist无无-ceplen 13 13 -cmn当前电流-cmninit 8.0 8.0 -compallsen无无-debug 0 -dict
- dictcase无无-dither无无-doublebw无无-ds 1 1 -fdict
-feat 1s_c_d_dd 1s_c_d_dd -featparams
-fillprob 1E-8 1.000000e-08 -frate 100 100 -fsg …

audio speech-recognition speech-to-text cmusphinx raspberry-pi

10
推荐指数
1
解决办法
2万
查看次数