使用Python将语音转换为文本的方法

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

使用 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:www.zpedu.com/

# 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”)

总结

到此这篇关于使用Python将语音转换为文本的方法的文章就介绍到这了,更多相关python语音转换文本内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python转换HTML到Text纯文本的方法

    本文实例讲述了Python转换HTML到Text纯文本的方法.分享给大家供大家参考.具体分析如下: 今天项目需要将HTML转换为纯文本,去网上搜了一下,发现Python果然是神通广大,无所不能,方法是五花八门. 拿今天亲自试的两个方法举例,以方便后人: 方法一: 1. 安装nltk,可以去pipy装 (注:需要依赖以下包:numpy, PyYAML) 2.测试代码: 复制代码 代码如下: >>> import nltk  >>> aa = r''''' <html

  • python将文本转换成图片输出的方法

    本文实例讲述了python将文本转换成图片输出的方法.分享给大家供大家参考.具体实现方法如下: #-*- coding:utf-8 -*- from PIL import Image,ImageFont,ImageDraw text = u'欢迎访问我们,http://www.jb51.net' font = ImageFont.truetype("msyh.ttf",18) lines = [] line ='' for word in text.split(): print wor

  • Python网页正文转换语音文件的操作方法

    天气真的是越来越冷啦,有时候我们想翻看网页新闻,但是又冷的不想把手拿出来,移动鼠标翻看.这时候,是不是特别想电脑像讲故事一样,给我们念出来呢?人生苦短,我有python啊,试试用 Python 来朗读给你听吧. 网页转换成语音,步骤无外乎: 网页正文识别,获取到正文的文本内容: 文本转语音,通过接口将文本转换成语音文件: 语音文件的发声,即将语音文件读出: 1 网页正文识别 之所以用 Python,就是因为 Python 有着丰富的库,网页正文识别也不在话下.这里用 readability.go

  • Python实现把json格式转换成文本或sql文件

    python如何将json格式的数据快速的转化成指定格式的数据呢?或者转换成sql文件? 下面的例子是将json格式的数据准换成以#_#分割的文本数据,也可用于生成sql文件. [root@bogon tutorial]# vi json2txt.py #-*- coding: UTF-8 -*- import json data = [] with open('./tencent_test.json') as f: for line in f: data.append(json.loads(l

  • python实现pdf转换成word/txt纯文本文件

    本文实例为大家分享了python实现pdf转word/txt,供大家参考,具体内容如下 依赖包:pdfminer3k 可以通过pip安装:也可以到官网下载,解压,进入文件夹,输入命令setup.py install安装软件. 源代码: #!/usr/bin/python # -*- coding: utf-8 -*- import sys import importlib importlib.reload(sys) from pdfminer.pdfparser import PDFParser

  • python实现将文本转换成语音的方法

    本文实例讲述了python将文本转换成语音的方法.分享给大家供大家参考.具体实现方法如下: # Text To Speech using SAPI (Windows) and Python module pyTTS by Peter Parente # download installer file pyTTS-3.0.win32-py2.4.exe # from: http://sourceforge.net/projects/uncassist # also needs: http://ww

  • 使用Python将语音转换为文本的方法

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

  • Python将字典转换为XML的方法

    问题 你想使用一个Python字典存储数据,并将它转换成XML格式. 解决方案 尽管 xml.etree.ElementTree 库通常用来做解析工作,其实它也可以创建XML文档. 例如,考虑如下这个函数: from xml.etree.ElementTree import Element def dict_to_xml(tag, d): ''' Turn a simple dict of key/value pairs into XML ''' elem = Element(tag) for

  • JAVA过滤标签实现将html内容转换为文本的方法示例

    本文实例讲述了JAVA过滤标签实现将html内容转换为文本的方法.分享给大家供大家参考,具体如下: /** * 把html内容转为文本 * @param html 需要处理的html文本 * @param filterTags 需要保留的html标签样式 * @return */ public static String trimHtml2Txt(String html, String[] filterTags){ html = html.replaceAll("\\<head>[\

  • Python实现对象转换为xml的方法示例

    本文实例讲述了Python实现对象转换为xml的方法.分享给大家供大家参考,具体如下: # -*- coding:UTF-8 -*- ''''' Created on 2010-4-20 @author: 忧里修斯 ''' import xml.etree.ElementTree as ET import xml.dom.minidom as minidom from addrbook.domain import Person class Converter(object): ''''' 实现P

  • Python将阿拉伯数字转换为罗马数字的方法

    本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法.分享给大家供大家参考.具体实现方法如下: def numToRomanNum(Num): """digital will be converted into Roman numerals,Ex: numToRomanNum(3999)""" if Num < 1 or Num > 3999: print 'The Num must in 1-3999' else: NumDi

  • python读取中文txt文本的方法

    对于python2.7 字符串在Python2.7内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码成unicode,再从unicode编码成另一种编码. 先用一些编辑器(如editplus )看一下你的txt文件保存的是utf-8,还是gb2312或其他的.当你读行时可以这样 line = (file1.readline()).decode('utf-8').encode('gb2312')或 line = (file1.re

  • python utc datetime转换为时间戳的方法

    最近python代码遇到了一个神奇的需求, 就是如果将python utc datetime转换为时间戳. 百度找到都是使用time.mktime(xxx) 但是看到官网文档里写 time.mktime(t) This is the inverse function of localtime() 而且亲测 这样将UTC datetime格式的转换完并不是utc时间戳. 这里会当作带时间戳的datetime来处理. 正确的做法是: import calendar calendar.timegm(t

  • Python中将字典转换为列表的方法

    说明:列表不可以转换为字典 ①转换后的列表为无序列表 a = {'a' : 1, 'b': 2, 'c' : 3} #字典中的key转换为列表 key_value = list(a.keys()) print('字典中的key转换为列表:', key_value) #字典中的value转换为列表 value_list = list(a.values()) print('字典中的value转换为列表:', value_list) 运行结果: ②转换后的列表为有序列表 import collecti

  • python实现语音常用度量方法的代码详解

    语音信号处理一般都要进行主观评价实验和客观评价实验. 主观评价:邀请测听者对语音进行测听,给出主观意见得分 客观评价:根据算法来衡量语音质量 主观投票受多种因素影响,如个体受试者的偏好和实验的语境(其他条件).一个好的客观质量度量应该与许多不同的主观实验有很高的相关性 信噪比(SNR) 有用信号功率与噪声功率的比(此处功率为平均功率),也等于幅度比的平方 其中:$P_{signal}$为信号功率(平均功率或者实际功率):$P_{noise}$为噪声功率:$A_{signal}$为信号幅度:$A_

随机推荐