果蔬识别轻松帮你区分车厘子与大樱桃
曾经一张车厘子的照片刷爆朋友圈,有一种财务自由叫车厘子自由!
网友哭了:我只能买一颗回去尝尝……
又快到了车厘子和樱桃的季节,很多人面对车厘子和大樱桃傻傻分不清楚,这两种水果看起来十分相近,但价格差别巨大,60元/斤的进口“车厘子”和15元/斤的中国“大樱桃”,有啥区别?肉眼分不清楚,交给百度Ai吧。
一.平台接入
此步骤比较简单,不多阐述。可参照之前文档:
https://ai.baidu.com/forum/topic/show/943028
二.分析接口文档
1. https://ai.baidu.com/docs#/ImageClassify-API/f0fe4219
(1)接口描述
该请求用于识别果蔬类食材,即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中的果蔬食材结果。
(2)请求说明
需要用到的信息有:
请求URL:https://aip.baidubce.com/rest/2.0/image-classify/v1/classify/ingredient
Header格式:Content-Type:application/x-www-form-urlencoded
请求参数:image, 图像数据,base64编码,要求base64编码后大小不超过4M,最短边至少15px,最长边最大4096px,支持jpg/png/bmp格式 。注意:图片需要base64编码、去掉编码头后再进行urlencode。
(3)返回示例
{'log_id': 7884358602702161307,
'result': [{'name': '车厘子', 'score': 0.60600465536118},
{'name': '大樱桃', 'score': 0.35849434137344},
{'name': '樱桃', 'score': 0.022074541077018},
{'name': '黑珍珠樱桃', 'score': 0.0061983447521925},
{'name': '黑樱桃', 'score': 0.0045025632716715}],
'result_num': 5}
2.获取accesstoken
#client_id 为官网获取的AK, client_secret 为官网获取的SK
client_id =【百度云应用的AK】
client_secret =【百度云应用的SK】
#获取token
def get_token():
host = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=' + client_id + '&client_secret=' + client_secret
request = urllib.request.Request(host)
request.add_header('Content-Type', 'application/json; charset=UTF-8')
response = urllib.request.urlopen(request)
token_content = response.read()
if token_content:
token_info = json.loads(token_content.decode("utf-8"))
token_key = token_info['access_token']
return token_key
三.识别结果
1.车厘子
识别结果: {'score': 0.60600465536118, 'name': '车厘子'}
2.大樱桃
识别结果: {'score': 0.66473871469498, 'name': '大樱桃'}
四.源码共享
# -*- coding: utf-8 -*-#!/usr/bin/env pythonimport osimport requestsimport base64import jsonfrom pprint import pprintimport time#client_id 为官网获取的AK, client_secret 为官网获取的SKapi_key = '**************'secret_key = '********************'class LandmarkRecognizer(object):def __init__(self, api_key, secret_key):self.access_token = self._get_access_token(api_key=api_key, secret_key=secret_key)self.API_URL = 'https://aip.baidubce.com/rest/2.0/image-classify/v1/classify/ingredient' + '?access_token=' \+ self.access_token#获取token@staticmethoddef _get_access_token(api_key, secret_key):api = 'https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials' \'&client_id={}&client_secret={}'.format(api_key, secret_key)rp = requests.post(api)if rp.ok:rp_json = rp.json()# print(rp_json['access_token'])return rp_json['access_token']else:print('=> Error in get access token!')def get_result(self, params):rp = requests.post(self.API_URL, data=params)if rp.ok:# print('=> Success! got result: ')rp_json = rp.json()pprint(rp_json)return rp_jsonelse:print('=> Error! token invalid or network error!')print(rp.content)return None#果蔬识别def detect(self, img_path):f = open(img_path, 'rb')strover = '识别结果:'img_str = base64.b64encode(f.read())params = {'image': img_str}tic = time.clock()rp_json = self.get_result(params)toc = time.clock()result = rp_json['result']strover += ' {} \n '.format(result[0])print(strover)print('花费时长: '+'%.2f' %(toc - tic) +' s')if __name__ == '__main__':recognizer = LandmarkRecognizer(api_key, secret_key)img = 'F:\paddle\yt2.jpg'recognizer.detect(img) 作者:wangwei8638
转载于:https://www.cnblogs.com/AIBOOM/p/11236688.html
果蔬识别轻松帮你区分车厘子与大樱桃相关推荐
- ideahtml标签不提示_「系统自带标签」如何帮门店区分价值顾客?| 早8点141期
141 期 | 系统标签 · 本文约 603 字,预计阅读 3 分钟 · 大家好,我是小檬,这是乐檬早八点为乐檬用户提供的产品应用学习栏目第 141 期. 今天的主题是:[新·会员篇]「系统自带标签」 ...
- 【基于TensorFlow2.3.0的果蔬识别系统的设计】
基于TensorFlow2.3.0的果蔬识别系统的设计 一.开发环境 Windows 10 Python 3.7.3 TensorFlow 2.3.0 Anaconda 4.12.0 CUDA 10. ...
- 苹果电脑双系统如何切换,CrossOver兼容双系统无需切换轻松帮你解决
苹果笔记本电脑双系统如何切换?其实就和我们在windows电脑上装双系统的切换方法差不多.只要进入开机启动项界面选择要登陆的系统即可,下面我们一起来看看具体的操作步骤: 首先需要在电脑上安装好双系统, ...
- 如何删除Word页眉下横线?只需1招即可轻松帮你搞定!
在我们职场办公时候经常会处理各种Word文档,这时候总会遇到各种类型的问题,就比如页眉下讨人厌的横线,经常为这个莫名其妙的横线而感到头疼,关键它还删除不掉! 针对这个问题,特意为大家整理了几个小技巧, ...
- 轻松帮你清理重复文件的工具:Cisdem Duplicate Finder mac版
Cisdem Duplicate Finder Mac版是Mac平台上优秀的重复文件清理软件,可以轻松帮你扫描出Mac中的重复文件,快速释放内存,在Cisdem Duplicate Finder fo ...
- 巧用这款报表工具,轻松帮您实现数据可视化
当今时代,同一数据,往往有多种可视化呈现方式.然而,在可视化的过程中,经常最终呈现效果会不太理想,或者付出的代价比较大.一般制作精美的数据可视化报表,需要具备一定的美术功底和技术功底等,而且如果前期投 ...
- 索爱SA-K37拉杆音箱,随时随地帮你撑起一个大舞台
你是我的小呀小苹果儿,怎么爱你都不嫌多,红红的小脸儿温暖我的心窝,点亮我生命的火火火火火火-摘下星星送给你,拽下月亮送给你,让太阳每天为你升起--每日清晨.傍晚,每每响起类似这样的旋律,我们就会看到广 ...
- OCR文字识别工具,轻松帮你识别图片上的文字
目前手机上OCR图片文识别的软件有很多,拍照识别提取图片上的文字,翻译识别出来的结果, 很方便.但是,如果你的手机上没有安装类似的软件,这个时候该怎么办呢?其实只要你的手机 上有一个微信就可以,一个小 ...
- 会议纪要手写太麻烦,手机在线语音转文字,轻松帮你搞定
最近经常有朋友问我怎么才能快速的进行语音转文字,因为每次开会的时候都因为会议记录没做好被老板批评,但是每次会议记录都是手写或者电脑码字,速度远远跟不上领导说话的速度,其实用手机就可以帮你快速的完成会议 ...
最新文章
- 使用Cloudera Manager搭建zookeeper集群及HDFS HA实战篇
- python安装包多大-如何查看安装的pip包大小?
- POJ NOI MATH-7828 最大公约数与最小公倍数
- 编程方法学8:信息隐藏
- React.js 2016 最佳实践 徬梓阅读 1584收藏 71
- DRF的序列化——Serializers 序列化组件
- 新手前端练手网站_编程到底难不难学?新手入门选择哪种语言好?
- Java 给编译器看的注释--Annotation
- java中单例模式用法详解
- lammps后处理:ovito快速提取单条位错线的伯氏矢量
- android epson wifi,epson投影仪无线投屏怎么连接手机、电脑
- AutoRunner自动化测试工具下载地址及安装步骤-泽众云测试
- LInux下Docker 傻瓜式安装一步到位
- DSB matlab仿真
- 如何才能成为一名优秀的设计师?
- 迷茫的程序员和中国软件业
- 详解Qt字体设置 (QFont)
- HTTP、FTP状态码 (share)
- 过滤器与拦截器的区别?
- “当前不会命中断点。还没有为该文档加载任何符号“解决方案
热门文章
- 深度学习/机器学习入门基础数学知识整理(六):Hoeffding不等式,
- java读取注册表_Java通过CMD方式读取注册表任意键值对代码实践
- mysql时间段到23 59_SQL获取当天0点和23点59分方法
- 大数据周会-本周学习内容总结012
- 喵惠助手软件,支持淘宝/天猫/京东/拼多多/聚划算百亿补贴/抖音直播/小米手机/华为手机抢购
- jar文件转换为可执行的exe文件!课设刚需!
- 【微信小程序遇到的坑】微信支付
- heritrix3 java_heritrix 3.2.0 详解 1 -- 环境搭建
- 海思3516DV300对接IMX327-60fps
- 【X波段雷达衰减订正方法】