使用Python的`SpeechRecognition`库可以很容易地实现语音识别。以下是一个基本的步骤指南:
安装库
使用pip安装`SpeechRecognition`库和`pyaudio`库(如果需要录音功能):
```bash
pip install SpeechRecognition
pip install pyaudio
```
对于Mac用户,还需要安装`portaudio`:
```bash
brew install portaudio
```
录音并识别
使用麦克风录音并识别成文字:
```python
import speech_recognition as sr
新建识别器对象
r = sr.Recognizer()
打开麦克风
with sr.Microphone() as source:
print("说点啥吧...")
读取音频数据
audio = r.listen(source)
try:
识别语音
text = r.recognize_google(audio, language='zh-CN')
print(f"听到你说: {text}")
except sr.UnknownValueError:
print("没听清楚哦,再说一遍")
except sr.RequestError as e:
print(f"网络不太好,待会再试吧: {e}")
```
识别音频文件
读取音频文件并识别:
```python
import speech_recognition as sr
新建识别器对象
r = sr.Recognizer()
打开音频文件
with sr.AudioFile('test.wav') as source:
audio = r.record(source)
try:
识别音频
text = r.recognize_google(audio, language='zh-CN')
print(f"听到你说: {text}")
except sr.UnknownValueError:
print("没听清楚哦,再说一遍")
except sr.RequestError as e:
print(f"网络不太好,待会再试吧: {e}")
```
注意事项
确保网络通畅,因为`recognize_google`方法依赖于Google的语音识别服务。
如果第一次使用时报错,可能是缺少某些依赖,按提示安装即可。
其他语言支持
可以通过更改`language`参数来支持其他语言,例如:
```python
text = r.recognize_google(audio, language='en-US') 英文识别
```
示例代码
```python
import speech_recognition as sr
新建识别器对象
r = sr.Recognizer()
打开麦克风
with sr.Microphone() as source:
print("说点啥吧...")
读取音频数据
audio = r.listen(source)
try:
识别语音
text = r.recognize_google(audio, language='zh-CN')
print(f"听到你说: {text}")
except sr.UnknownValueError:
print("没听清楚哦,再说一遍")
except sr.RequestError as e:
print(f"网络不太好,待会再试吧: {e}")
```
通过以上步骤和代码,你可以轻松地实现语音识别功能。