如何在Python中将语音转换为文本

语音识别是计算机软件识别口语中的单词和短语,并将其转换为可读文本的能力。那么如何在Python中将语音转换为文本?如何使用SpeechRecognition 库在Python中将语音转换为文本?我们不需要从头开始构建任何机器学习模型,该库为我们提供了各种著名的公共语音识别API的便捷包装。

如何在Python中将语音转换为文本_业界动态_数字化

 使用pip安装库:

pip3 install SpeechRecognition

Okey,打开一个新的Python文件并导入它:

import speech_recognition as sr

 从文件读取

确保当前目录中有一个包含英语语音的音频文件(如果您想跟我一起学习,请在此处获取音频文件):

filename = "speech.wav"

该文件是从 LibriSpeech 数据集中获取的,但是您可以带上任何想要的东西,只需更改文件名,就可以初始化语音识别器:

# initialize the recognizer

r = sr.Recognizer()

以下代码负责加载音频文件,并使用Google Speech Recognition将语音转换为文本:

# open the filewith sr.AudioFile(filename) as source:

# listen for the data (load audio to memory)

audio_data = r.record(source)

# recognize (convert from speech to text)

text = r.recognize_google(audio_data)

print(text)

这需要几秒钟才能完成,因为它将文件上传到Google并获取了输出,这是我的结果:

I believe you're just talking nonsense

 从麦克风读取

这需要在您的计算机中安装PyAudio,以下是取决于您的操作系统的安装过程:

 视窗

您可以点安装它:

pip3 install pyaudio的Linux

您需要首先安装依赖项:

sudo apt-get install python-pyaudio python3-pyaudio

pip3 install pyaudio

 苹果系统

您需要先安装portaudio,然后才可以点安装它:

brew install portaudio

pip3 install pyaudio

现在,让我们使用麦克风转换语音:

with sr.Microphone() as source:

# read the audio data from the default microphone

audio_data = r.record(source, duration=5)

print("Recognizing...")

# convert speech to text

text = r.recognize_google(audio_data)

print(text)

这会从您的麦克风听到5秒钟,然后尝试将该语音转换为文本!

它与先前的代码非常相似,但是我们在这里使用Microphone()对象从默认麦克风读取音频,然后在record()函数中使用duration参数在5秒后停止读取,然后上传音频数据向Google获取输出文本。

您还可以在record()函数中使用offset参数在偏移几秒钟后开始记录。

另外,您可以通过将语言参数传递给accept_google()函数来识别不同的语言。例如,如果您想识别西班牙语语音,则可以使用:

text = r.recognize_google(audio_data, language="es-ES")

在此stackoverflow答案中查看支持的语言 。

通过上述介绍,如何在Python中将语音转换为文本相信大家已经清楚了吧,想了解更多关于Python的信息,请继续关注。

2
158
0
24

相关资讯

  1. 1、有源晶振的EMC标准设计方案3997
  2. 2、储能行业迎来密集政策2019年市场或将迎来跨越式发展57
  3. 3、双路12位数模转换器AD7237A的结构、功能特点和应用分析1381
  4. 4、大电流输出缓冲器的精准电压基准LT6658简介615
  5. 5、技术+资金+政策使英国抢占自动驾驶产业先机1906
  6. 6、利用FPGA工具设置优化FPGAHLS设计2827
  7. 7、工信部:中国加快5G商用已具备现实基础235
  8. 8、七点入手让你快速掌握FPGA开发1472
  9. 9、2018年移动机器人领域融资大盘点,超十家企业金额超15亿3403
  10. 10、百家争鸣的工业互联网市场273
全部评论(0)
我也有话说
0
收藏
点赞
顶部