加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 语音识别在ubuntu中不起作用

发布时间:2020-12-20 13:13:46 所属栏目:Python 来源:网络整理
导读:我正在开始一项需要将??音频转换为文本的作品.我正在使用 python的speechrecognition库.我在github上看到了如何使用它的教程.该程序并不能通过麦克风识别我的声音. 我在ubuntu 16.04上使用python 2.7. 码: import speech_recognition as sr# obtain audio f
我正在开始一项需要将??音频转换为文本的作品.我正在使用 python的speechrecognition库.我在github上看到了如何使用它的教程.该程序并不能通过麦克风识别我的声音.

我在ubuntu 16.04上使用python 2.7.

码:

import speech_recognition as sr

# obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone() as source:
    print("Say something!")
    r.adjust_for_ambient_noise(source)
    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")
except sr.RequestError as e:
    print("Sphinx error; {0}".format(e))

github code link

终端输出:

shivam@shivam-HP-Pavilion-15-Notebook-PC:~/Python/audio$python temp.py
ALSA lib pcm_dsnoop.c:606:(snd_pcm_dsnoop_open) unable to open slave
ALSA lib pcm_dmix.c:1029:(snd_pcm_dmix_open) unable to open slave
ALSA lib pcm_dmix.c:1029:(snd_pcm_dmix_open) unable to open slave
Say something!

之后,“说点什么!”,它继续闪烁,但我的声音无法识别.

mic settings


解决方法

我无法安装PocketSphinx模块,遇到问题.
但是,如果我使用recogn_google切换recogn_sphinx,它会为我工作.

这是您修改过的代码.

import speech_recognition as sr

# obtain audio from the microphone
r = sr.Recognizer()
with sr.Microphone() as source:
    print("Say something!")
    r.adjust_for_ambient_noise(source)
    audio = r.listen(source)

# recognize speech using Sphinx
try:
    #print("Sphinx thinks you said " + r.recognize_sphinx(audio))
    print("Sphinx thinks you said " + r.recognize_google(audio))
except sr.UnknownValueError:
    print("Sphinx could not understand audio")
except sr.RequestError as e:
    print("Sphinx error; {0}".format(e))

产量

Python 2.7.9 (default,Dec 10 2014,12:24:55) [MSC v.1500 32 bit (Intel)] on win32
Type "copyright","credits" or "license()" for more information.
>>> ================================ RESTART ================================
>>> 
Say something!
Sphinx thinks you said hello
>>>

希望这很有用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读