0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

人都分不好垃圾,机器能分好吗?

WpOh_rgznai100 来源:lq 2019-07-18 11:37 次阅读

让垃圾自动分类

近期垃圾分类成为了一个热门话题,原来直接一次性扔掉的垃圾,现在都需要分门别类进行投放。从今年7月1日起,新的《上海市生活垃圾管理条例》正式开始施行,号称史上最严的垃圾分类就要来了。我们以后在扔垃圾前都要先将垃圾仔细分成可回收物、有害垃圾、湿垃圾和干垃圾四个类别,如果分错还会被罚款。

垃圾分类可以更好地保护我们的环境卫生,为了让大家能够正确对垃圾进行分类,官方发布了垃圾分类指南,列举了每种类别对应的常见垃圾,大家可以对照着进行分类投放。此外,脑洞大开的网友们也另辟蹊径,提供了各种有意思的分类思路。

在日常生活中,每个类别的垃圾往往包含了各式各样的内容,人们在分类投放的时候难免会出现偏差,这个时候如果有一个分类神器对垃圾拍个照就能告诉我们是什么类别就好了。

当前人工智能飞速发展,我们能否利用AI技术来对垃圾自动分类,实现上面提到的设想呢?为了回答这个问题,在今天的文章中,我们将从人工智能的角度出发,尝试利用深度学习技术来构建一个垃圾自动分类器,同时也会进一步介绍AI垃圾分类遇到的挑战和一些思考。

“垃圾”图像数据准备

为了实现一个理想的垃圾自动分类器,需要有一个已经分好类别的“垃圾”图像数据集作为训练的基础。然而当前并没有这样一个可以直接使用的数据集,所以我们首先自己动手收集海量的“垃圾”图像并为每张图像标注上相应的类别。

数据集的收集一直是一件耗时耗力的工作,为了快速便捷地完成“垃圾”图像数据集的收集,我们依据官方发布的垃圾分类指南上每一类所包含的垃圾名称,通过在百度图片上爬取名称对应的图像来实现。官方发布的垃圾分类指南如下图所示。

在实际的应用场景中,待分类的样本往往是不可控的,所以一般会增加“其他”这个类别用来收留各种异常样本。在垃圾分类中,除可回收物、有害垃圾和湿垃圾外都属于干垃圾,所以干垃圾已经扮演了“其他”的角色。我们的“垃圾”图像数据集最终分为可回收垃圾、有害垃圾、湿垃圾和干垃圾四个类别。数据集的部分图像如下图所示。

垃圾自动分类器

垃圾自动分类本质上是一个图像分类问题,当前基于深度卷积神经网络的图像分类算法发展很快,各种方法层出不穷。下面我们先回顾这些分类网络的演进思路,再进一步将分类算法应用于垃圾分类,介绍构建一个垃圾自动分类器的流程和细节。

卷积神经网络的开山之作LeNet于1998年被提出,并成功应用于手写体识别。LeNet和现在的网络结构相比虽然简单(如上图所示),但是卷积层、池化层和全连接层这些基本模块都已经具备。

随着ReLU和dropout的提出,以及GPU和大规模数据集的出现,卷积神经网络在2012年迎来了历史突破,AlexNet的出现让卷积神经网络开始逐渐成为计算机视觉任务的标配。在AlexNet的基础上,以增加网络深度为思路,出现了VGGNet;以增强卷积模块为思路,出现了基于Inception的一系列网络。

随着后来居上的ResNet的提出,层数极深的网络成为了可能。通过引入残差模块,缓解了深度网络训练过程中的梯度消失问题,让网络的深度不断加大,网络性能也得到了大幅提升。之后的DenseNet更是通过对特征图的稠密连接,加强了特征的传递,继续提升分类效果。当前ResNet及其变种形式已经被广泛地应用于图像分类任务,同时也成为了在解决目标检测和图像分割等其他计算机视觉问题时常用的主干网络结构。

在本文中,我们使用50层的ResNet来构建垃圾自动分类器。具体我们采用在ImageNet数据集上预训练的ResNet50模型参数作为初始化,利用上一节中收集的“垃圾”图像数据集对其进行微调。

其中我们将上述ResNet50的最后一层输出从1000(ImageNet数据集的分类数量)修改为4(垃圾分类数量),同时在训练过程中冻结了部分卷积层参数的更新。此外还进一步利用水平翻转、随机裁剪和色彩抖动等方式对训练的“垃圾”图像进行数据增强。在完成垃圾自动分类器的训练后,我们对一些垃圾进行了自动分类的测试,准确率达到近90%。虽然对复杂的情况还是存在一定的误判,但大部分常见的垃圾都得到了正确的区分,具有较强的实用性。

从单个垃圾分类到一群垃圾分类

上一节中我们介绍了垃圾自动分类器的构建,但是这样的垃圾分类器的输入都是单个垃圾图像。在实际的垃圾分类投放过程中,对单个的垃圾进行一一拍照分类显得过于繁琐和缓慢。那能不能对一群垃圾直接拍照后进行批量分类呢?要实现对一群垃圾的批量分类,其实就是要构建一个垃圾的目标检测器。输入一张含有多个垃圾的图像,让模型输出图像上每种垃圾对应的类别。

在深度学习出现之前,可变形部件模型(DPM)一直是流行的目标检测方法。深度学习出现后,以R-CNN、Fast R-CNN、Faster R-CNN为代表的两阶段算法和以YOLOv1-3、SSD、RetinaNet为代表的单阶段算法成为主流。前者是先由算法生成一系列待检测目标的候选框,再通过卷积神经网络进行候选框的分类;后者则不用产生候选框,直接将目标边框定位的问题转化为回归问题处理。

和垃圾分类器一样,一个理想的垃圾检测器,需要大量的“垃圾”标注数据来支撑。但是与分类数据集相比,检测数据集除了标注类别外还要标注图位置坐标,这样的标注工作更为艰巨。在完成垃圾检测的图像数据集后,就可以利用当前主流的深度学习检测算法来实现批量垃圾的分类。

写在最后

垃圾分类最近成为了大家生活中经常讨论的话题,这篇文章分享了如何利用深度学习技术来构建一个垃圾自动分类器,也进一步介绍了从单个垃圾分类到批量垃圾分类的思路和挑战。

在实际的垃圾分类中,由于垃圾多种多样,同一类别的垃圾可能差异很大,而不同类别的垃圾可能差异很小,在复杂情况下分类器效果可能会不尽如人意,后续可以考虑加入垃圾之间的高层次语义关系信息,进一步提升分类器的性能。最后希望大家都能做到正确的垃圾分类投放,毕竟生活不易,还是不要被罚款。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 图像
    +关注

    关注

    2

    文章

    1062

    浏览量

    40016
  • 人工智能
    +关注

    关注

    1773

    文章

    43356

    浏览量

    230126
  • 机器
    +关注

    关注

    0

    文章

    755

    浏览量

    40459

原文标题:上海居民被垃圾分类逼疯!这款垃圾自动分类器也许能帮上忙

文章出处:【微信号:rgznai100,微信公众号:rgznai100】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    【开源项目】Emo:基于树莓派 4B DIY 笑会动的桌面机器人

    置于底座上,并为电源线的自由移动预留了充足的空间。为了提高机器人运动的稳定性,我们还特意使车身与底座轻微接触。 另外,我们特意选择蓝白配色方案,因为蓝白组合提升机器人的视觉吸引力。 3D 打印 我们
    发表于 12-26 15:18

    元器件越小越好吗

    元器件越小越好吗
    的头像 发表于 12-14 18:32 291次阅读
    元器件越小越<b class='flag-5'>好吗</b>?

    机器人编程需要什么软件?

    机器人编程需要什么软件
    发表于 11-01 07:34

    STM32智能垃圾桶自动识别各类垃圾概述

    离线语音识别识别垃圾种类并且垃圾桶自动翻盖:** 说出唤醒词“垃圾桶”后,再说一句垃圾名称,语音识别模块端识别到相应关键词
    的头像 发表于 10-25 09:58 608次阅读
    STM32智能<b class='flag-5'>垃圾</b>桶自动识别各类<b class='flag-5'>垃圾</b>概述

    Arduino教学机器人的使用教程

    本文档的主要内容详细介绍的是Arduino教学机器人的使用教程
    发表于 09-27 06:53

    ai人工智能机器人

    的运营成本、人力成本还在不断提高(如:办公场地的租金、员工的工资、社保公积金、节假日福利等)。 如今的智能电话机器人,每天的电话拨打量可达800-1000通,相比人工提高了3-5倍,大大缩短了名单的筛选
    发表于 09-21 11:09

    使用UVC和垃圾场材料的自主消毒机器

    电子发烧友网站提供《使用UVC和垃圾场材料的自主消毒机器人.zip》资料免费下载
    发表于 06-30 09:47 0次下载
    使用UVC和<b class='flag-5'>垃圾</b>场材料的自主消毒<b class='flag-5'>机器</b>人

    【科普】干货!带你从0了解移动机器人(四) ——移动机器人导航技术

    .. 05GNSS导航 通过GNSS导航模块接收GPS卫星信号进行导航定位。一般采用伪距差动态定位法,用基准接收机和动态接收机共同观测4颗GPS卫星,按照一定的算法即可求出某时某刻机器人的三维位置坐标。差动态
    发表于 06-28 09:52

    自编程机器人,售后难做吗?

    要无人值守才能卖,否则就是个机器爹。用户不可能自己提供技术,而机器人公司也不可能每次提供维护和编程。
    发表于 06-08 16:20

    如何快速地让机器人投入生产

    一帧。 而机器人提供些什么动作呢?它主要提供几个圆的转动和距离。难度多是三维坐标以及圆形,三角形的计算。如果要更智能,需要加入眼睛,耳朵等其它功能。它主要要生产一个产品的建模数据。或者障碍物,设备
    发表于 06-06 16:18

    快递机器人在垃圾站工作,有人买不到,有人卖不出。你们无聊吗?

    垃圾站分拣机器人很好用啊!为什么不用在快递业?
    发表于 05-23 18:16

    机器人如何计算简单的运动

    模型要具备齿轮,导轨几种基本的运动原理。 要分辨基本图形,视觉模型要能分辨圆形,方形和三角形。 有了这两点,机器人就基本上计算开模和注塑这种简单的工作了。要替代人类的工作,还要进一步学习。
    发表于 05-19 20:40

    浅谈儿童陪护机器人

    儿童陪护机器人越来越受到人们的关注,其中转动控制是其重要组成部分之一。步进电机芯片作为一种常用的控制芯片,被广泛应用于儿童陪护机器人中的转动控制。本文将从步进电机芯片的工作原理、优势和应用场景等方面
    发表于 05-11 15:12

    扫地机器人是如何实现液位检测的

    至关重要。它可以确保机器按照正确的水量清洁地面,并及时将污水清除。在未来,液位检测技术将继续得到进一步发展,以提高机器人的清洁效率和便携性。点科技光电液位传感器灵敏度高,主要供应液位开关,倾倒开关,小型流量计,分离式液位开关,
    发表于 04-15 11:21

    如何实现拥有强悍功能智能巡检机器人

    整个检测系统的工作效率,在特种机器人领域的发展中扮演着十重要的角色。以上就是基于飞凌嵌入式FETMX8MP-C核心板的智能巡检机器人应用方案,希望能够对您的项目选型提供帮助。点击上图进入飞凌嵌入式官网,即可了解有关FETMX8
    发表于 04-12 15:49