分享

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

 gfergfer 2023-08-07 发布于辽宁

图片

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

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

图片

图片

图片

图片

图片

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

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

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

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

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

pip install baidu-aip -i https://pypi.tuna./simple

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

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操作:

# 读取文件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])

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

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])可以实现识别结果的输出。

所有的代码展示如下:

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;此外,对单个应用的每秒查询率也有一定限制。感兴趣的朋友可以尝试一下。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多