使用python和IBM speech to text 進行 語音識別

wav 轉 text ,感覺 還是IBM 的 speech to text 比較靠得住。

比百度的語音識別API好上太多。

https://speech-to-text-demo.mybluemix.net/

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

註冊拿到 帳號密碼後, 

有一個包比較 方便 調用

是SpeechRecogntion

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行

assert language in ["en-US", "es-ES", "ja-JP"], "`language` must be a valid language."
增加"zh-CN"項,

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

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

SpeechRecognition的用法 如下

import speech_recognition as sr

讀wav文件

r = sr.Recognizer()
with sr.WavFile(path) as source:
    audio = r.record(source)
然後可以調用 recognize_ibm 返回識別結果,是utf8格式的,一般寫起來 會有些問題

IBM_USERNAME = 'XXXXXXXX'
IBM_PASSWORD= 'XXXXXXXX'

text = r.recognize_ibm(audio, username = IBM_USERNAME, password = IBM_PASSWORD, language = 'zh-CN')


text 就是識別結果,可能會有編碼問題之類的。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章