10行python代码实现动物识别(百度API方式)


前言

百度应该是咱们中国目前做AI做的最好的公司。提供深度学习框架paddlepaddle,也提供免费的算力。不的不说,这点还是很不错的。


一、获取鉴权码

实际上调用API进行图像识,可以实现的不仅仅是动物识别。参看下图。功能太强大了,以后一些低性能的板子,都可以通过上传图片的方式实现AI识别。树莓派可以,香橙派可以,K210也可以,只要能运行python、有带摄像头以及wifi功能的板子都可以。
在这里插入图片描述
没有鉴权码无法调用api进行识别。账号登录成功,需要创建应用才可正式调用AI能力。应用是调用API服务的基本操作单元,可以基于应用创建成功后获取的API Key及Secret Key,进行接口调用操作,及相关配置。
AK和SK在哪里,在下图的个位置。一定要先找到这两个码。
在这里插入图片描述

鉴权码获取代码如下。

# encoding:utf-8
import requests 
# client_id 为官网获取的AK, client_secret 为官网获取的SK
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【官网获取的AK】&client_secret=【官网获取的SK】'
response = requests.get(host)
if response:
    print(response.json())

执行代码以后会返回access_token回来,记录下这个access_token。后面的程序需要。
另外,弄了一个小工具获取access_token,这个用python就是两三行代码的事,但是作成exe文件在给个别人使用的时候还是有一定方便的。另外,类似于这个百度的鉴权工具,我也做了一个OneNetAI的鉴权工具,有需要可以留下邮箱获取。
在这里插入图片描述

二、调用API实现动物识别

动物识别代码如下(python示例):

import requests
import base64

request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v1/animal"
# 二进制方式打开图片文件
f = open('banma.jpg', 'rb')
img = base64.b64encode(f.read())
f.close()
params = {"image":img,"top_num": 3} #返回前3个概率比较大的
access_token = '24.06c287c63f92387ac47c52128fbccd63.2592000.1651057178.282335-25860964'
request_url = request_url + "?access_token=" + access_token
headers = {'content-type': 'application/x-www-form-urlencoded'}
response = requests.post(request_url, data=params, headers=headers)
if response:
    print (response.json())

输出结果:
在这里插入图片描述


总结

调用API是非常省事,但是也有缺点。
一,图片上传和接收,一个来回速度就慢了,一张图片的识别有时候要好几秒。
二,需要付钱。API不是完全免费的,一开始会给你1000次还是多少次的调用额度,超过就要付钱了,不过这个好像不贵。
适用于不需要频繁进行识别且识别速度没有要求的场合。

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
好的,下面是一个简单的Python代码实现百度语音识别API的过程: 1. 安装Python SDK 首先需要安装百度语音识别APIPython SDK,可以使用以下命令: ``` pip install baidu-aip ``` 2. 导入SDK 在Python代码中使用以下代码导入SDK: ```python from aip import AipSpeech ``` 3. 设置API信息 在代码中设置API的相关信息,包括App ID、API Key和Secret Key: ```python APP_ID = 'Your App ID' API_KEY = 'Your API Key' SECRET_KEY = 'Your Secret Key' client = AipSpeech(APP_ID, API_KEY, SECRET_KEY) ``` 4. 读取语音文件 使用Python的`wave`库读取语音文件,可以使用以下代码: ```python import wave with wave.open('audio.wav', 'rb') as f: audio_data = f.readframes(f.getnframes()) ``` 这里的`'audio.wav'`是语音文件的路径,需要根据实际情况进修改。 5. 调用API识别 使用以上设置的`client`对象调用API语音识别,可以使用以下代码: ```python result = client.asr(audio_data, 'wav', 16000, {'dev_pid': 1536}) ``` 这里的`audio_data`是上一步读取的语音文件数据,`'wav'`表示语音文件的格式,`16000`表示采样率,`{'dev_pid': 1536}`表示使用普通话识别模型。 6. 处理识别结果 最后根据API返回的结果进处理,可以使用以下代码: ```python if result['err_no'] == 0: print(result['result'][0]) else: print('识别失败:', result['err_msg']) ``` 这里的`result['result'][0]`表示识别结果,`result['err_no']`表示错误码,如果为0表示识别成功,否则表示识别失败。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

粒子白

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

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

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

打赏作者

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

抵扣说明:

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

余额充值