Python简单语音识别并响应

发布时间:2024-12-23 04:37

编程入门:Python语言的简单教程 #生活技巧# #工作学习技巧# #专业技能培训#

最新推荐文章于 2024-04-25 16:28:47 发布

data-life 于 2019-08-01 11:18:26 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

Python简单语音识别并响应

https://www.cnblogs.com/warcraft/p/10112486.html

 下载最新版pyaudio地址:

https://www.lfd.uci.edu/~gohlke/pythonlibs/#pyaudio

起因是一个工作中喜欢说口头禅的同事,昨天老说“你看看你看看 操不操心”。说了几次之后我就在他说完“你看看”后面续上,“操不操心”。往复多次后,我就想,为啥不用Python识别语音并作出响应,正好没弄过语音识别。

1. 语音转文字

参考Python语音识别终极指南,吐槽一句:质量太差,是最烂的无审查的机翻。引模块中间都没空格importspeech_recognitionassr 应该是import speech_recognition as sr;并创建识一个别器类的例子应该是并创建一个识别器类的例子这块都不仅仅是机翻了吧,怎么会拆了词。但是为了了解API足够了。

语音转文字使用谷歌云平台的语音转文字服务[Google Cloud Speech API](https://cloud.google.com/speech/),因为是不需要API密钥的。其实是因为有默认密钥:

def recognize_google(self, audio_data, key=None, language="en-US", show_all=False):

...

if key is None: key = "AIzaSyBOti4mM-6x9WDnZIjIeyEU21OpBXqWBgw

...

通过另外两个函数参数还可以了解到:lanauage (指定识别的语言),show_all(False返回识别率最高的一条结果,True返回所有识别结果的 json串 字典数据)

安装pip install SpeechRecognition

1.1 本地语音文件识别测试

# coding:utf-8

"""

本地语音文件识别测试

"""

import speech_recognition as sr

import sys

say = '你看看'

r = sr.Recognizer()

# 本地语音测试

harvard = sr.AudioFile(sys.path[0]+'/youseesee.wav')

with harvard as source:

# 去噪

r.adjust_for_ambient_noise(source, duration=0.2)

audio = r.record(source)

# 语音识别

test = r.recognize_google(audio, language="cmn-Hans-CN", show_all=True)

print(test)

# 分析语音

flag = False

for t in test['alternative']:

print(t)

if say in t['transcript']:

flag = True

break

if flag:

print('Bingo')

自己录了一段语音youseesee.wav (内容为轻轻(类似悄悄话,声带不强烈震动)说的你看看你看看,持续两秒)。音频文件格式可以是WAV/AIFF/FLAC

AudioFile instance given a WAV/AIFF/FLAC audio file

去噪函数adjust_for_ambient_noise()在音频中取一段噪声(

网址:Python简单语音识别并响应 https://www.yuejiaxmz.com/news/view/544180

相关内容

Python中的语音识别技术
Python实现语音识别
百度语音识别 python
Python实现语音识别:百度baidu
Python在语音识别技术中的突破性进展
Python人工智能第一篇:语音合成和语音识别
Python 语音识别(pywin32)
实战案例:AI在语音识别与语音合成领域的应用
语音识别应用场景
构建智能语音助手应用:语音识别和语音合成的实践

随便看看