Android:上海垃圾分类必备,图像识别垃圾分类app的制作 – Python量化投资

Android:上海垃圾分类必备,图像识别垃圾分类app的制作

随着6月结束,7月开始,最近上海最火的话题是垃圾分类无疑了。。上海人民是每天早晚两小时定时定点扔垃圾。

Ps:小编好几个上海朋友都已经请假回老家了2333

干湿垃圾要分开,把湿垃圾从垃圾袋里倒进桶里,再把垃圾袋扔进干垃圾桶

龙虾 壳是干垃圾,龙虾 肉是湿垃圾,请你分开扔,谢谢

猪能吃的是湿垃圾,不能吃的是干垃圾,吃了会死的是有毒垃圾,卖了能买猪的是可回收垃圾

看完是不是要崩溃了?!别担心,本人周末花一下午精心制作的 看图识垃圾 app,主要依赖 tensorflow coco-ssd 来识别照片中的多物体,然后找了个不知名的api,返回垃圾的分类。例如:

制作过程简述

首先,网上已经有很多可以输入文字查询垃圾分类的网站了,我灵光一闪:要是可以直接通过图像垃圾分类岂不更好。然后找到了tensorflow.js 的官方指南:

<script src=”https://cdn.jsdelivr.net/npm/@tensorflow/tfjs”> </script>

<script src=”https://cdn.jsdelivr.net/npm/@tensorflow-models/coco-ssd”> </script>
<img id=”img” src=”cat.jpg”/>
<script>
// Notice there is no ‘import’ statement. ‘cocoSsd’ and ‘tf’ is
// available on the index-page because of the script tag above.
const img = document.getElementById(‘img’);
// Load the model. 在浏览器里fetch和加载模型到内存可能要花1分钟以上
cocoSsd.load().then(model => {
// detect objects in the image.
model.detect(img).then(predictions => {
console.log(‘Predictions: ‘, predictions);
});
});
</script>

可见,Google tensorflow 已经把常用的机器学习模型做到开箱即用的水平,非常方便。当然,这个多物体检测的函数返回的是个数组,包含了对象在图中的bbox,而且里面的分类标签都是英文的:

[{
bbox: [x, y, width, height],
class: “person”,
score: 0.8380282521247864
}, {
bbox: [x, y, width, height],
class: “kite”,
score: 0.74644153267145157
}]

那么问题来了:网上的垃圾分类api 都是要求输入中文的!!我第一时间想到了 Bing Translate API 把英文翻译成中文再去查询分类。所以又去申请了个Azure 的免费账号,还好我有master card,付了一美金才搞定。具体的可以参考最后的官方文档链接

经过一顿折腾,终于搞定,就是识别率很低。毕竟没有专门训练垃圾分类的模型,只是用现成的物体检测模型。

所以有很多搞笑的结果:

————————分割线————————

如果你看到了这里,觉得文章写得不错就给个呗?如果你觉得那里值得改进的,请给我留言。一定会认真查询,修正不足。谢谢。

为什么某些人会一直比你优秀,是因为他本身就很优秀还一直在持续努力变得更优秀,而你是不是还在满足于现状内心在窃喜!希望读到这的您能点个小赞关注下我,以后还会更新技术干货,谢谢您的支持!

转发分享+关注,每天获取更多资料

Android架构师之路很漫长,一起共勉吧!

你或许想:《去原作者写文章的地方

竹鼠:活下去下载
「点点赞赏,手留余香」

    还没有人赞赏,快来当第一个赞赏的人吧!
3 条回复 A 作者 M 管理员
  1. 博主,你用的垃圾分类API叫什么名字啊

  2. 楼主可以开发一个小程序啊,很好

    • 倒是可以考虑,只是如果计算放在手机上,速度就会慢,放在服务器上,费用又太高。

欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论