知识目录
- 一、写在前面✨
- 二、百度AI能力介绍
- 三、植物识别
- 四、总结撒花😊
一、写在前面✨
大家好!我是初心,希望我们一路走来能坚守初心!
今天跟大家分享的文章是 Python调用百度AI能力进行植物识别。
,希望能帮助到大家!本篇文章收录于 初心 的 Python从入门到精通 专栏。
🏠 个人主页:初心%个人主页
🧑 个人简介:大家好,我是初心,和大家共同努力
💕欢迎大家:这里是CSDN,我记录知识的地方,喜欢的话请三连,有问题请私信😘
💕 大家即将各自展开旅程,挥别这个没落的城镇。 —— 桥本纺「仰望半月的夜空」
事情是这样的:
二、百度AI能力介绍
百度开放平台:官网。
百度是人工智能领域公司里面位于前列的公司,百度的AI的模块化也逐渐成熟了,AI使用的场景会逐步体验在智能小程序上面,百度已经提供了110项的AI能力会逐步向开发者开放,开发者可以用最低的门槛、最便捷的方式使用百度AI的能力。
首先说一下AI能力,整个的申请步骤也非常的简单,进入到百度开放平台官网,点击百度AI能力,然后根据大家的需要,在这个界面勾选需要使用的开发能力,提交通过以后,大家就可以获得免费的AI能力的调用,目前百度AI能力主要集中在语音、文字、图像这些方面,后续百度还将开放更多的AI能力,如果大家有什么特别需要AI的能力,也可以反馈给百度。
三、植物识别
编写程序,利用百度AI能力,支持提交网络图片识别动物类型,取识别得分最高,相关文档:接口文档。
import base64
import requests
class PlantDetect:
"""
>>> ai = PlantDetect('', '') # 此处用自己的ak, sk
>>> None != ai.access_token
True
>>> ai.detect('https://img2.baidu.com/it/u=2724224251,1865036366&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=666')
{'score': 0.82613623, 'name': '蒲公英'}
>>> ai.detect('https://img2.baidu.com/it/u=726091391,2350289349&fm=253&fmt=auto&app=138&f=JPEG?w=751&h=453')
{'score': 0.8454113, 'name': '向日葵'}
"""
# Edit Your Code Here
def __init__(self, ak, sk):
def detect(self, image_url):
import doctest
doctest.testmod()
具体实现:
注意下面的代码不能运行,因为要使用自己的 ak和sk 去获取 access_token ,这里我将我的抹去了,所以大家在创建应用后复制自己的到case中的第一条去。
import base64
import requests
import json
# 忽略InsecureRequestWarning: Unverified HTTPS request is being made. Adding certificate verification is strongly advised.警告
requests.packages.urllib3.disable_warnings()
class PlantDetect:
def __init__(self, ak, sk):
self.ak=ak
self.sk=sk
self.access_token=PlantDetect.get_access_token(ak,sk)
# 只需要更改access_token和url,就可以得到响应
def detect(self, image_url):
request_url = "https://aip.baidubce.com/rest/2.0/image-classify/v1/plant"
r = requests.get(image_url,verify=False)
img = base64.b64encode(r.content)
params = {"image":img}
access_token = self.access_token
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,verify=False)
if response:
print (response.json().get('result')[0])
# 只需要修改client_id和client_secret的值,分别是ak和sk,就可以获得access_token
def get_access_token(ak,sk):
url = "https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id="+ak+"&client_secret="+sk
payload = ""
headers = {
'Content-Type': 'application/json',
'Accept': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
access_token = json.loads(response.text)['access_token']
return access_token
四、总结撒花😊
本文主要讲解了Python如何调用百度AI能力的接口进行植物识别。😊
✨ 这就是今天要分享给大家的全部内容了,我们下期再见!😊
🏠 本文由初心原创,首发于CSDN博客, 博客主页:初心%🏠
🏠 我在CSDN等你哦!😍