我正在尝试使用Sphinx在Python中创建一个简单的语音识别程序。我在CMD中使用pip安装它,然后我以相同的方式安装了PocketSphinx。我跟随的教程说我需要包含PocketSphinx的模型目录,但我不知道目录在哪里。我怎么找到它,我做错了什么?
答案 0 :(得分:1)
转到安装python的位置,查找其中的以下位置(此位置根据Windows安装)
LIB \站点包\ speech_recognition \ pocketsphinx数据
默认模型是en-US,但是可以从这里下载的其他语言模型很少
https://sourceforge.net/projects/cmusphinx/files/Acoustic%20and%20Language%20Models/
答案 1 :(得分:1)
如果您使用pip
通过from pocketsphinx.pocketsphinx import *
from sphinxbase.sphinxbase import *
MODELDIR = "pocketsphinx/model"
DATADIR = "pocketsphinx/test/data"
# Create a decoder with certain model
config = Decoder.default_config()
config.set_string('-hmm', path.join(MODELDIR, 'en-us/en-us'))
config.set_string('-lm', path.join(MODELDIR, 'en-us/en-us.lm.bin'))
config.set_string('-dict', path.join(MODELDIR, 'en-us/cmudict-en-us.dict'))
安装,并且遵循类似于程序包的github页面提供的示例代码,您可能会发现需要进行一些代码更改。
这是pocketsphinx-python(截至2018年3月11日):
pip
currently in the README描述了一些可能有助于我们这些人使用path.dirname(pocketsphinx.__file__)
并在下载模块目录之外处理我们的python代码的更改(至少在* nix / Mac环境中,我没有在Windows上测试)。这是一个差异片段; 关键想法是使用-MODELDIR = "pocketsphinx/model"
-DATADIR = "pocketsphinx/test/data"
+import pocketsphinx;
+POCKETSPHINXDIR = path.dirname(pocketsphinx.__file__)
+MODELDIR = path.join(POCKETSPHINXDIR, "model")
+DATADIR = path.join(POCKETSPHINXDIR, "data")
来获取查找模型目录的基本目录:
POCKETSPHINXDIR
(小注意:我冒昧地在const qb = knex
.select('id')
.from('table')
.where({ visibility: 'public' })
// some left joins here
.groupBy('id')
的拼写中修正了一个小错字,所以这段代码与拉请求完全相同