前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >10行内Python代码实现语音识别

10行内Python代码实现语音识别

作者头像
用户9925864
发布2022-07-27 09:17:12
1.3K0
发布2022-07-27 09:17:12
举报
文章被收录于专栏:算法工程师的学习日志

最近在做一个语音识别的项目,故分享一下相关内容

Python在语音识别方面功能很强大,程序语言简单高效,下面编程实现一下如何实现语音识别。本文分享如何调用百度AI开放平台实现语音识别技术。

要调用百度AI开放平台的API,首先需要一个百度账号。

登录https://ai.baidu.com/,注册用户,然后创建应用。

创建应用完成后,进入管理页面,可以看到应用对应的 “AppID”、“API Key”与“Secret Key”,这些信息在调用语音识别需要提供。

创建了应用,我们便可以调用接口实现语音识别了。相关的文档在这个网址:

https://ai.baidu.com/ai-doc

文档中对于使用不同编程语言的调用方法做了详细说明。

使用Python调用该接口之前,需要安装一个外部库,

代码语言:javascript
复制
pip install baidu-aip -i https://pypi.tuna.tsinghua.edu.cn/simple 

接下来进行进行客户端的创建,在Python编辑器中输入以下语句:

代码语言:javascript
复制
from aip import AipSpeech

""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'

client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

其中,“AppID”、“API Key”与“Secret Key”都可以从我们刚刚创建的应用中得到。这几行代码便实现了一个可以与百度AI开放平台交互的客户端。

接下来进行文件的读取,这部分使用Python的IO操作:

代码语言:javascript
复制
# 读取文件
def get_file_content(filePath):
    with open(filePath, 'rb') as audio:
        return audio.read()

接下来,便是惊心动魄的语音识别过程了:

代码语言:javascript
复制
# 识别本地文件
res= client.asr(get_file_content('test.wav'), 'wav', 16000, {'dev_pid': 1536, })
print(res['result'][0])

在这里,我们提前录制了一个语音文件“test.wav”并放在当前Python文件的同一目录下。

代码语言:javascript
复制
client.asr(get_file_content('test.wav'), 'wav', 16000, {'dev_pid': 1536, })

这一行代码实现了具体的语音识别过程,其中,get_file_content('test.wav')表示“test.wav”中的内容,'wav'表示文件类型,16000表示采样率,{'dev_pid': 1536, }表示识别类型为普通话。下面的print(res['result'][0])可以实现识别结果的输出。

所有的代码展示如下:

代码语言:javascript
复制
from aip import AipSpeech

""" 你的 APPID AK SK """
APP_ID = '你的 App ID'
API_KEY = '你的 Api Key'
SECRET_KEY = '你的 Secret Key'
client = AipSpeech(APP_ID, API_KEY, SECRET_KEY)

# 读取文件
def get_file_content(filePath):
    with open(filePath, 'rb') as audio:
        return audio.read()
# 识别本地文件
res = client.asr(get_file_content('test.wav'), 'wav', 16000, {'dev_pid': 1536, })
print(res['result'][0])

除去注释一共十行,可以说非常方便耐用了。但是这个API也有一些缺点,比如待识别的录音需要上传完整的录音文件,并且录音文件时长不超过60s;此外,对单个应用的每秒查询率也有一定限制。感兴趣的朋友可以尝试一下。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算法工程师的学习日志 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
语音识别
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档