虽说直接调用的人家接口比较方便,但是对于第一次写这个东西的人来说一开始也没有什么头绪,只能慢慢摸索,所以我想把整个过程梳理一下,对有这方面想法的小伙伴可以有个参考。
首先百度搜索“百度AI开放平台”,点击右侧控制台,进入登录界面,若日常曾使用过百度产品(如百度网盘),可以直接登录。
接下来要选择具体的服务项,要实现的花卉识别属于图像识别,因此进入图像识别的控制面板。(图像识别中除花卉识别外,还包括logo识别、动物识别、车型识别等。)
创建应用是为自己的项目申请接口权限,申请成功后才能正式调用。
点击“创建应用”,进入申请界面。
如实填写后点击“创建”即可创建该应用。
创建完成后选择“应用列表”,显示自己创建的应用。
应用创建成功后生成对应的API Key和Secret Key,用于后续操作。
实际应用中并不根据API Key和Secret Key进行接口调用,而是根据access_token
access_token,代表自己获得的百度授权,调用API时必须在URL中带上access_token参数。获取方法是编写代码向服务器请求数据,向授权服务地址发送请求(推荐使用POST),并在URL中带上以下参数:
- grant_type: 必须参数,固定为client_credentials
- client_id: 必须参数,应用的API Key
- client_secret: 必须参数,应用的Secret Key
获取access_token示例代码(python):
服务器返回信息为JSON文本格式,重要参数包括:
- access_token: 要获取的Access Token
- expires_in: Access Token的有效期,(秒为单位,一般为1个月,这也意味着需要每隔一段时间重新获取一次)
(其它参数可以忽略)
若感觉返回信息繁琐,可以直接获取access_token参数:
上述工作完成后,即可利用接口实现花卉识别。
该接口用于识别一张图片,即对于输入的一张花卉图片,输出花卉识别结果。
参数说明:
- 请求URL:https://aip.baidubce.com/rest/2.0/image-classify/v1/plant
- access_token:第三部分请求的access_token
- Header:
示例代码:
给出示例图片:
识别结果:
score可看作是概率,图片被识别为向日葵的概率为0.872,被识别为心叶向日葵的概率为0.001,识别为黑心金光菊的概率为0.0006。因此大概率为认为是向日葵,符合我们自身的判断。由此看来识别结果还是非常好的。
觉得文章不错的话就请留一个大大的赞吧,十分感谢!!
百度识别技术文档