使用python和IBM speech to text 进行 语音识别

CSDN日报20170303——《百亿互金平台救火故事》       程序员2月书讯      社区有奖问答--一起舞动酷炫的iOS动画      基于Spark的分布式深度学习和认知计算
 

使用python和IBM speech to text 进行 语音识别

标签: 语音识别ibmpythonapi
  1403人阅读  评论(0)  收藏  举报
  分类:
程序模块(14)    编程语言(13) 

wav 转 text ,感觉 还是IBM 的 speech to text 比较靠得住。

比百度的语音识别API好上太多。

[html]  view plain  copy
  1. https://speech-to-text-demo.mybluemix.net/  

--------------------------------------------------------------------

注册拿到 帐号密码后, 

有一个包比较 方便 调用

是SpeechRecogntion

[html]  view plain  copy
  1. https://pypi.python.org/pypi/SpeechRecognition/  

pip install 或者 按照说明 安装就行了

---------------------------------------------------------------------

SpeechRecognition包含多个网站的API 

然而Google的并不能用,AT&T的没试过。

--------------------------------------------------------------------

在debian 上测试的时候有个问题,需要 管理 员权限 。

可能是内部有过wav  2 flac 然后把临时文件 保存在dist-package下了,

--------------------------------------------------------------------

SpeechRecognition有示例代码wav_transcribe.py;

如果用于识别中文,需要在speechrecognition/__init__.py中,

修改recognize_ibm函数的482行

[python]  view plain  copy
  1. assert language in ["en-US""es-ES""ja-JP"], "`language` must be a valid language."  
增加"zh-CN"项,

[python]  view plain  copy
  1. assert language in ["en-US""es-ES""ja-JP""zh-CN"], "`language` must be a valid language."  

---------------------------------------------------------------------

SpeechRecognition的用法 如下

[python]  view plain  copy
  1. import speech_recognition as sr  

读wav文件

[python]  view plain  copy
  1. r = sr.Recognizer()  
  2. with sr.WavFile(path) as source:  
  3.     audio = r.record(source)  
然后可以调用 recognize_ibm 返回识别结果,是utf8格式的,一般写起来 会有些问题

[python]  view plain  copy
  1. IBM_USERNAME = 'XXXXXXXX'  
  2. IBM_PASSWORD= 'XXXXXXXX'  
  3.   
  4. text = r.recognize_ibm(audio, username = IBM_USERNAME, password = IBM_PASSWORD, language = 'zh-CN')  


text 就是识别结果,可能会有编码问题之类的。

你可能感兴趣的:(linux)