10行python代码实现动物识别(百度API方式) | 您所在的位置:网站首页 › 动物扫码识别 › 10行python代码实现动物识别(百度API方式) |
文章目录
前言一、获取鉴权码二、调用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次还是多少次的调用额度,超过就要付钱了,不过这个好像不贵。 适用于不需要频繁进行识别且识别速度没有要求的场合。 |
CopyRight 2018-2019 实验室设备网 版权所有 |