600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Ubuntu16.04实现Sphinx离线语音识别

Ubuntu16.04实现Sphinx离线语音识别

时间:2020-02-07 23:26:08

相关推荐

Ubuntu16.04实现Sphinx离线语音识别

Ubuntu16.04实现Sphinx离线语音识别

版权声明:本文为博主原创文章,未经博主允许。 /boke14122621/article/details/79871224

自带Python2.7或3.0+版本都可以 使用的是3.5编译需要安装SpeechRecognition模块需要.wav作为测试数据

1 安装SpeechRecognition模块

pip install SpeechRecognition`

若是3版本则使用pip3 .

2 安装验证

>>> import speech_recognition as sr>>> sr.__version__'3.8.1'

还可以看看它具备属性函数

3 创建Recognizer实例

>>> r = sr.Recognizer()

每个Recognizer实例有七个语音识别方法:

recognize_bing(): Microsoft Bing Speech

recognize_google(): Google Web Speech API

recognize_google_cloud(): Google Cloud Speech - requires installation of the google-cloud-speech package

recognize_houndify(): Houndify by SoundHound

recognize_ibm(): IBM Speech to Text

recognize_sphinx(): CMU Sphinx - requires installing PocketSphinx

recognize_wit(): Wit.ai

这次使用recognize_sphinx(),安装:

pip install PocketSphinx

如果出现以下错误:

输入图示命令:

sudo apt-get build-dep python-PocketSphinx

再次安装:

sudo pip install PocketSphinx --upgrade

则提示安装成功

4 使用测试

#!/usr/bin/env python3# NOTE: this example requires PyAudio because it uses the Microphone classimport speech_recognition as sr# obtain audio from the microphoner = sr.Recognizer()harvard = sr.AudioFile('harvard.wav')with harvard as source:audio = r.record(source)# recognize speech using Sphinxtry: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))

前期可以在解析器上一行行输入是否能运行,测试语音harvard.wav在/realpython/python-speechrecognition/tree/master/audio_files

可以下载。或者自己提供也行,也可以通过调用麦克风录音保存文件。

with sr.Microphone() as source:print("Say something!")audio = r.listen(source)

5 结果

效果其实比百度api好一些,因为是英文识别

尝试其他的应用接口的话可以查阅其他文档。

参考:

1./Uberi/speech_recognition

2./python-speech-recognition/

3./info-detail-93746.html

4,/qiaocuiyu/article/details/52093509

5./16582684/viewspace-1243341/

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。