垃圾分类图像识别API接口,小程序源码

前几天分别分享了垃圾分类文字版接口和微信机器人、微信小程序源码,今天在分享一个垃圾分类图像识别接口和升级版小程序源码、支持拍摄和选择相册图片进行图像识别、垃圾分类热搜榜等功能。另外文章底部附有多种语言的post请求演示代码和素材包方便测试。
 
先看效果图(仅供调用API的示例参考,UI可自行调整美化)

微信图片_20190715111928.jpg

 
垃圾分类图像识别API:https://www.tianapi.com/apiview/101
 
该接口支持垃圾分类图像识别,请用post方式请求,img参数应该传递经base64编码后的图片且字节大小不得大于3M。成功识别后返回一个列表,其中包含trust和lajitype参数。trust是图像可信度,单位是百分比,越接近100表示识别结果越可信。lajitype表示垃圾类别,其中0表示为可回收垃圾、1为有毒有害垃圾、2为厨余或湿垃圾、3为其他或干垃圾。
 
接口参数:
其中img应该是经过base64编码后的图片资源(天行数据也提供了图片转base64编码的接口),base64编码的调用方法非常简单,各编程语言都有对应的系统内置函数直接处理就行。当然img也支持直接传递图片url地址(暂未开放,根据大家反馈视情况放开),同时需指定imgtype=1即可。
 
另外需注意,不要把base64编码直接拼接到url中,get请求支持的url长度是有限的。请用post方式发送请求,数据类型为application/x-www-form-urlencoded

1.png


返回示例:
返回参数中,trust表示可信度,最高为100,越接近100表示识别结果的可信度越高。lajitype是垃圾分类,0表示为为可回收、1为有害、2为厨余(湿)、3为其他(干)、4为未识别的分类。

2.png

 
附件imglajifenlei_debug.zip为php接口测试文件包,包含两张测试图片和debug.php文件,替换debug.php文件顶部的apikey为自己在天行数据平台注册获得的apikey的即可使用。
 
附件ajax_demo.zip是一个html文件,通过前端ajax的方式post请求API接口来获取结果,在html.html文件中修改key为自己的,点击发送请求按钮,如成功获得识别结果则会将结果写入浏览器控制台并在页面弹窗提示。
 
附件lajifenlei3.0.zip是升级版同时支持文字识别和图像识别、垃圾分类热搜榜数据的小程序源码,在utils/utils.js文件顶部替换apikey为自己在天行数据中的即可。
 
附件Python_debug.zip是python语言的演示代码,替换key参数值为自己在天行数据平台获得apikey即可。
 
附件node_debug.zip是node.js语言的演示代码,同样填入key参数值即可使用。
 
附件go_debug.zip是go语言的演示代码,同样替换自己的key参数值即可使用。
 
 

20 个评论

你好,为什么突然提示没有调用api权限了
图片识别?图片识别时会员接口,只有会员权限才可以调用,之前新用户有一定的试用期限
图片识别需要高级会员才可以用吗?
是的呢
新增一个热门搜索词排行接口,欢迎使用https://wenda.tianapi.com/question/13296
秒懂垃圾分类微信小程序源码
一共三个参数全写在url中吧?为何还会返回错误代码280,缺少必要参数??
一共三个参数全写在url中吧?为何还会返回错误代码280,缺少必要参数??
请用post请求,不要把参数写在url里。url的长度是有限的,图片编码至少几百K以上
谢谢您,已经解决了。能咨询一下这个api粗略的算法原理吗,使用的框架之类的信息?写文档需要说明一下。
返回的参数是什么类型的?python中怎么把返回参数中的内容分开
根据返回的json字段取值,如果不太理解,可百度一下json。
图片识别转base64 接口太慢了
不是很建议用接口转图片,base64是个很常见的编码方式,一种各种语言都有内置函数直接转换的。
买了会员测试这个API
1. 测试页面粘贴不下Base64编码,就用自带的打火机图
2. POSTMAN返回<title>414 Request-URI Too Large</title>
这个提示很明显啊,你想想Base64有多长!!url怎么可能支持那么多字符,所以这个接口必须post方式发送请求,接口介绍页已经红色提示了。。
我就是用直接转的base64, 但是估计图片太大了 还是要压缩一下才行
数据量最好不要超过3M
请问 如果我要是想识别本地的图片我的图片参数应该怎么写写在哪里
base64编码就是方便本地化的。把获取到的图片二进制数据流编码成base64就行。任何开发语言,都有内置的函数直接处理,可以百度一下,你开发的语言+base64就行。

要回复文章请先登录注册