我在Python(版本3.5)中尝试使用语音识别模块,并且遇到了以下错误:
'AttributeError:'识别器'对象没有属性'识别''
这是我使用的代码。
import pyaudio
import speech_recognition as sr
r=sr.Recognizer()
r.energy_threshold=4000
with sr.Microphone() as source:
audio=r.listen(source)
try:
print("Speech was:" + r.recognize(audio))
except LookupError:
print('Speech not understood')
我在Stack Overflow本身上找到了这个代码,并且还从这里给出的语音识别模块中读取了文档:https://pypi.python.org/pypi/SpeechRecognition/但是由于某种原因它没有在我的系统中执行。我尝试使用谷歌搜索解决方案,但找不到任何有类似错误的人。
如果有人可以帮我解决这里的错误,我将不胜感激。提前谢谢。
答案 0 :(得分:5)
根据documentation,Recognizer
类没有方法recognize
,这就是你得到的错误的含义,来自
print("Speech was:" + r.recognize(audio))
在这里,您尝试调用一种不存在的方法,您必须使用该类提供的多种recognize_*
方法之一,例如recognize_google
,{{1} },recognize_wit
或recognize_ibm
答案 1 :(得分:0)
该方法已从recognize
更改为recognize_google
。您的代码应该适用于此更改
import pyaudio
import speech_recognition as sr
r=sr.Recognizer()
r.energy_threshold=4000
with sr.Microphone() as source:
audio=r.listen(source)
try:
print("Speech was:" + r.recognize_google(audio))
except LookupError:
print('Speech not understood')
希望这有助于你
答案 2 :(得分:0)
您必须将r.recognize(audio)
更改为r.recognize_google(audio)
并通过命令行以这种方式运行:python3x path_your_file.py
。