我已经安装了pocketsphinx和sphinxbase(0.8)的最新版本。我尝试导入pocketsphinx到Python代码(Python的3.4.2版本),并使用“解码器”是这样的:
try:
import sphinxbase
import pocketsphinx as ps
except:
print ("Pocket sphinx and sphixbase is not installed in your system.
Please install it with package manager.")
speechRec = ps.Decoder(hmm = hmmd, lm = lmdir, dict = dictp, beam = '1e-80')
wavFile = file(wavfile,'rb')
wavFile.seek(44)
speechRec.decode_raw(wavFile)
不过,我得到以下错误:
AttributeError: 'module' object has no attribute 'Decoder'
是否有人知道什么是错?
正如Bhargav已经提到的,你命名你的文件pocketsphinx.py
或有pocketsphinx.py
在你的路径,所以你需要重命名的文件,并确保删除pocketsphinx.pyc
文件还。您正在试图从该文件不是pocketsphinx模块导入。
我遇到了同样的问题一次可以解决这个问题对我来说。只是任何人谁在未来,太这个问题:
首先,我安装了一个http://downloads.sourceforge.net/cmusphinx/pocketsphinx-5prealpha.tar.gz释放pocketsphinx。它被安装到swig/python/__init__.py
相应/usr/lib/python<ver>/site-packages/pocketsphinx/__init__.py
包含以下内容:
from pocketsphinx import *
当我从https://pypi.org/project/pocketsphinx/安装pocketsphinx,相应__init__.py
包含:
from .pocketsphinx import *
看来,小点使区别,如果像from pocketsphinx import *
import语句工作,或者如果你有使用from pocketsphinx.pocketsphinx import *