Python语音识别实践【百度AI平台】

这几天想要用Python来体验一下语音识别技术,虽然我知道有很多开源免费的语音识别库,例如,CMU Sphinx,好像以前玩过,但只为了愉快地体验,这次选择百度AI平台来简单实践一下,后期再深入研究开源免费的语音识别库。
在这里插入图片描述
1 基础知识

打开百度智能云–>产品–>人工智能–>选择短语音识别–>立即使用–>创建应用。得到
在这里插入图片描述
创建完毕应用后,平台将会分配给开发者此应用的相关凭证,主要为AppID、API Key、Secret Key。以上三个信息是在应用实际开发的主要凭证。
说明:百度短语音识别支持将 60 秒以下的音频识别为文字。适用于语音对话、语音控制、语音输入等场景。
支持音频格式:pcm、wav、amr、m4a音频编码要求:采样率 16000、8000,16 bit 位深,单声道(音频格式查看及转换)

2 安装语音识别 Python SDK

进入百度智能云-管理中心,sdk下载:SDK下载_文字识别SDK_语音识别SDK-百度AI开放平台进入百度智能云-管理中心,sdk下载:
https://ai.baidu.com/sdk#asr
安装使用Python SDK有如下方式:

如果已安装pip,执行pip install baidu-aip即可。
如果已安装setuptools,执行python setup.py install即可。

SDK装好以后即可开始愉快地编程喽!

3 编程体验

(1)新建AipSpeech

AipSpeech是语音识别的Python SDK客户端,它为我们提供了一系列语音识别的交互方法,在编程时需要import 导入 AipSpeech模块,这样就可以调用该模块中的方法啦。


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)

这里将创建应用时得到的3个字符串对应复制进去就ok了,用于标识用户,为访问做签名验证,防止别人使用你账号的权限功能,可在AI服务控制台中的应用列表中查看。
(2)语音识别
这里的语音识别的流程要理解,它是将本地语音文件整段上传到远程服务进行语音识别,举例上代码。

# 读取文件
def get_file_content(filePath):
    with open(filePath, 'rb') as fp:
        return fp.read()

# 识别本地文件
client.asr(get_file_content('audio.pcm'), 'pcm', 16000, {
    'dev_pid': 1537,
})

(3)完整实例

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 fp:
        return fp.read()

# 识别本地文件
res = client.asr(get_file_content('16k.pcm'), 'pcm', 16000, {
    'dev_pid': 1537, # 默认1537(普通话 输入法模型)
})

print(res.get("result")[0])

在这里插入图片描述
需要特别注意:语音识别对测试的音频文件是有要求的,我自己录的音搞了半天没识别出来,后来还是乖乖去官网下载了测试音频16k.pcm。https://cloud.baidu.com/doc/SPEECH/s/Vk38lxily

相关参考:
https://cloud.baidu.com/doc/SPEECH/s/Bk4o0bmt3
https://www.cnblogs.com/DragonFire/p/9208195.html

  • 0
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

DaveBobo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值