基于YOLO v3的地面垃圾检测与清洁度评定方法*

2022-04-12 08:37王一田唐开强留沧海
传感器与微系统 2022年4期
关键词:清洁度废塑料纸巾

王一田, 唐开强, 留沧海,3, 刘 东

(1.西南科技大学 制造科学与工程学院,四川 绵阳 621000; 2.南京大学 工程管理学院 控制与系统工程系,江苏 南京 210093; 3.制造过程测试技术省部共建教育部重点实验室,四川 绵阳 621000)

0 引 言

近年来,随着人口密度的增加和城市功能的复杂化,机场等大型公共场合不断增多,清洁工作压力巨大[1]。目前,地面清洁的自动化程度较低,大多公共场合仍采用人工清扫或者手推清扫车的方式,工作效率低,清洁效果判断偏主观性。虽然当今对于清洁机器人的研究众多,但是在垃圾检测与清洁度等级标定方面的相关研究较少。机器人在地面的清洁方式主要还是人为引导或全覆盖式清洁,地面的清洁度依旧需要人为视觉判断,缺乏一个自动的反馈过程,造成许多不必要的资源浪费。

因此,清洁机器人需要类似安装了视觉传感器[2],对地面的垃圾情况有较好的认识与感知。传统的垃圾检测方法主要有以下三种:1)人为视觉观察法;2)图像边缘检测法[3];3)特征匹配法[4]。其中,人为视觉观察判断的方法不能自动检测,并且判断的效率低;而边缘检测的方法虽可以检测出垃圾,却不能定量地标定出垃圾,因而检测准确率低;特征匹配的方法则需要采集大量的样本,因此效率非常低,并且无法识别出样本库里缺失的特征。近年来,基于深度学习的卷积神经网络(convolutional neural network,CNN)[5~7]在目标检测领域不断发展,受到了研究者们的一致青睐。Ren S等人设计出基于候选区域的深度学习目标检测算法Faster R-CNN[8],其在Fast R-CNN[9]检测模块上引入RPN(region proposal network)网络以提取候选框,实现了端到端的网络学习,但是检测速度仍较慢,达不到实时的要求。期间,Redmon J等人在2016年提出基于回归的目标检测算法,YOLO(you only look once)[10],实现了目标识别与定位的统一,提高了实时性,但准确率却差于Faster R-CNN。经过Redmon等人不断地研究,先后提出改进版的YOLO v2[11]和YOLO v3[12],准确率进一步提高。YOLO v3目前已是目标识别与检测方面最优秀的算法之一,准确率高且实时性好。

为此,本文提出一种基于YOLO v3算法的地面垃圾检测与清洁度评定方法与系统,利用基于YOLO v3算法的Jetson TX2进行地面垃圾检测分类和清洁度评定,将最终测出的清洁度等级结果反馈给STM32,经过控制中心的集中处理,实现通过获取巡检小车视觉信息来指挥清洁机器人完成定点清洁、再次清洁以及分类清洁等任务,以达到较好清洁效果的目的,同时更加节约资源和时间。

1 地面清洁度检测系统总方案

本文的地面清洁度检测系统主要由遥控器、USB摄像头、NVIDIA Jetson TX2,STM32F4单片机、垃圾巡检小车、地面清洁机器人组成。其中Jetson TX2属于图像检测模块,STM32F4单片机属于运动控制模块,巡检小车为摄像头和Jetson TX2的载体,清洁机器人为动作执行模块。此外,Jetson TX2的GPU为NVIDIA Pascal架构、256 CUDA核心,操作系统为Ubuntu16.04;深度学习框架为PyTorch。

当用户利用遥控器发起启动命令,STM32响应并控制垃圾巡检小车运动;当用户要求检测地面清洁度时,Jetson TX2调用摄像头对地面垃圾图像进行采集;同时,STM32响应命令并要求Jetson TX2读取采集到的图像信息,并且调用YOLO v3训练好的模型进行垃圾检测分类与清洁度等级的评定,然后将检测结果通过串口通信方式下发给STM32;STM32根据用户的清洁要求对清洁度等级不达标的位置做标记(读取传感器显示的位置信息),并通过其蓝牙模块将标记的位置信息反馈给清洁机器人控制中心,进而控制机器人到达指定地点作业。期间,小车的位置标记和机器人的导向由各自配备的传感器实现,通过传感器实时采集小车和机器人状态,并将状态信息反馈给STM32,形成反馈控制。整个系统各模块间紧密相连,其框图如图1所示。

图1 清洁度检测系统框图

2 地面垃圾检测与清洁度评定

2.1 YOLO v3算法检测

YOLO v3是YOLO系列目标检测算法的第三代,其继承了YOLO v2检测速度快的优点,同时检测精度也有显著提升,特别是对于小目标的检测,因而比较适合本文的垃圾目标检测。YOLO v3使用了残差网络结构,使网络在很深的情况下仍能收敛,模型能训练下去,从而提升检测效果。

如图2所示,在YOLO v3算法的检测过程中,首先将输入图像统一归一化为416像素×416像素,然后将图像划分成13×13的网格,输入深度神经网络进行训练[13]。当某个垃圾的中心位置的坐标落入到某个网格,那么这个网格就负责检查边界框及其置信度,从而检测出该垃圾。其中,置信度则体现该网格是否含有地面垃圾目标,是什么类别以及其检测准确率。

图2 YOLO v3检测过程

截止目前,已经有许多基于YOLO v3算法的研究应用成果。Zhang X等人实现了一种自适应车道检测方法[14],提高了复杂场景下车道检测的适应能力;Li J等人实现PCB电子元器件检测[15];潘卫国等人提出基于感兴趣区域的交通标志牌检测方法[16],在无人驾驶和辅助驾驶领域做出了一定的贡献。

2.2 清洁度等级评定

本文根据Sevilla A等人提出的街道清洁度指数(cleanliness index,CI)的量化方法[17](该方法被西班牙省市联合会认可为唯一能够真实反映城市街道清洁度指数),来类似地评定地面清洁度等级。由此,地面清洁度指数(ground cleanliness index,GCI)被定义来量化地面的洁净程度,该指数与地面垃圾数量、种类,以及地面摆设情况有关。表1划分了5个地面清洁度指数值区间,以及对应的不同清洁度等级,GCI值越大,地面越脏。

表1 地面清洁度指数分类

GCI的计算方法定义为式(1)所示

(1)

式中λ和n为考虑到影响地面清洁度的修正系数。λ考虑了地面的破损情况,本文实验地面保护良好,无破损情况,即λ=1。n考虑到特殊情况下垃圾数量的突变,例如在垃圾桶附近可能增加垃圾数量,此系数取值在1~2之间,本文取n=1,即表示不存在此类情况的突变。S表示观测区域(observation area,OA),本文具体表示为摄像头的拍摄视角范围,取为12.5 m2。C表示不同垃圾类别在观测区域内的权重系数,乘以相应垃圾类别的数量即可实现该类垃圾的量化,如表2所示。表中有机垃圾与无机垃圾都根据垃圾数量被细分为小、中、大三类,分别对应不同的权重值。当垃圾数量在0~3之间,将被归为小类;在4~6之间归为中类;大于等于7归为大类。

表2 垃圾种类及其权重值

3 实验验证与分析

实验平台为11 GB NVIDIA GeForce RTX2080Ti GPU,Intel 酷睿I9—9900K,3.6 GHz处理器,64 GB运行内存,操作系统为Ubuntu 16.04。实验的训练和测试过程都是在同样的软件平台下进行,即PyCharm和OpenCV 3.4.2。

3.1 垃圾检测模型数据集的建立

为了验证本文检测方法的有效性,选择1号实验室和寝室的地面作为实验对象,采用人工拍摄垃圾图片的形式来组成地面垃圾检测的数据库。由于地面上的垃圾种类繁多且分布复杂,因此将常见的垃圾种类分为5种,即纸巾、废塑料、烟头、灰尘堆、黏性污渍。将垃圾样本置于场地的各个方位与位置,进行不同角度和距离地采样,共采集了2 348张RGB图片。对所有图片进行缩放、旋转、翻转和对比度变换等操作得到新的样本数据,这一步可提高检测模型对于不同方向和光照下的鲁棒性,并且丰富数据库以及防止数据过拟合,最终得到共7 045张图片数据,其中5 285张作为训练集,1 760张作为测试集。接下来将每一张图片归一化为416×416尺寸,并利用Labeling进行人工标注,框选出图片中的垃圾,生成相应的标签。注意需保证每张图片中的一种垃圾只能对应一个标签,最终导出.xml文件。

3.2 垃圾检测结果

3.2.1 模型训练与测试

本文采用YOLO v3网络对地面垃圾数据集进行训练,由于垃圾巡检小车在运动过程中,采集的地面图像中垃圾尺寸可能会大幅变化,因而利用多尺度训练策略进行网络训练。经过20 000次迭代训练,最终确定模型参数为:学习率0.001,训练动量0.9,权重衰减参数0.000 5。

1)测试集检测

将测试集的图片输入到模型中进行检测,部分检测效果如图3所示。

图3 测试集部分检测效果

从图3中可以看出,模型的检测效果总体上比较好,但个别垃圾类型的检测准确率不稳定,矩形框框选得不太理想,尤其表现在废塑料和纸巾类。从实验结果分析,首先是因为检测的目标不规则性较强(如灰尘堆、废塑料),检测难度大;其次目标反光或透明(如干净的纸巾、塑料透明部分),易导致误识或框选不好的情况;另外,采集的样本数据集不够丰富,模型的适应性还不足。

统计所有测试集图片的检测结果,计算各类垃圾的检测准确率,结果分别为纸巾84.8 %,废塑料84.1 %,烟头93.6 %,灰尘堆91.3 %,黏性污渍87.7 %。

2)视频实时检测

为了测试模型的实时检测效果,利用巡检小车系统分别在1号实验室和寝室两个不同环境下采集视频文件,然后通过抽帧处理得到连续的图片,调用训练好的垃圾检测模型对图像进行检测。图4为检测效果图,各视频都是在不同距离或不同视角下拍摄的。

图4 实时检测效果

视频一为纸巾、废塑料和烟头在1号实验室的实时检测效果,视频共抽取1 600帧,最终准确率为81.12 %。可以看到由于废塑料有一部分是透明的,导致模型对废塑料的框选效果不太理想。此外,由于废塑料的一端黑色部分与黏性污渍类垃圾相似度较高,存在误识现象,共发生了189帧的误识。

视频二为烟头在1号实验室的实时检测效果,共抽取1 360帧,由图4(b)可知模型对于单类垃圾的检测效果比较好,准确率达到了86.32 %。不过也存在将地面的反光点误识为纸巾的现象,误识帧数为175帧。

视频三为烟头和纸巾在寝室环境下的实时检测效果,共抽取1 320帧,拍摄视角变化设置为沿顺时针方向。从图4(c)可以看出,模型偶尔误识白色墙壁为纸巾,原因为两者之间有一定的相似度;当摄像头处于能拍到地面比较反光的视角时,存在误识地面为纸巾的情况;此外,由于纸巾形状不规则,在不同视角下的检测准确率有较大变化,矩形框的框选也存在不太理想的情况。最终,误识帧数达到了217帧,准确率为75.38 %。

3)算法对比检测

为了进行算法对比评价,将本文的垃圾检测模型与表现优异的同类目标检测算法Faster R-CNN在相同的测试集上进行对比测试,如表3。

表3 网络对比结果

分别用准确率(P)、召回率(R)、平均精度(mAP)、交并比(IoU)和平均帧率(fps)来评估模型性能,检测结果如表3所示。从表中可以看出,本文模型检测准确率为90.6 %,比Faster R-CNN高2.8个百分点;平均精度为88.3 %,比Faster R-CNN高2.7个百分点;IoU为87.5 %,比Faster R-CNN略高0.6 %;平均帧率达到了28帧/s。

本文YOLO v3模型的垃圾检测性能优于Faster R-CNN,通过丰富不同环境、光照、角度和距离等数据集,模型拥有了较强的适应能力,各项指标表明其基本能够满足地面垃圾检测的要求。

3.2.2 实际场地的清洁度检测

选取2号实验室的地面作为实际测试场地,摄像头搭载在小车上的拍摄范围取为12.5 m2,拍摄点设定为每隔3.5 m距离拍摄一组图片,其中同组各图片的拍摄位置和角度不固定,最终遍历整个场地。

运行Jetson TX2并调用YOLO v3训练好的模型,对地面图像进行检测。最终,在模型检测后的图片中,被检测到的垃圾会被标记上矩形框,同时以标签形式显示出垃圾种类及其置信度。为方便后续地面清洁度指数的计算,需分别对各个观测区域内的垃圾数量进行统计,也即统计模型检测出的矩形框数量,并计算出各区域的清洁度指数,最后汇总得出整个测试场地的清洁度指数。

最终各观测区域的地面垃圾检测统计结果为:3块纸巾,1个废塑料,2个烟头,一个灰尘堆,以及3块黏性污渍。对于一个观测区域内的地面清洁度指数(GCIOA)可由式(2)表示

(2)

式中i为垃圾种类数,Ni为区域内该类垃圾的数量,Ci为该类垃圾所对应的权重值。λ和n见2.2节所介绍,本文均取1。

3.3 清洁度评定

根据所分的5种垃圾类别,在表2中找到它们相应的权重值,从而可以加权出总的清洁度指数。按照垃圾分类方法,将纸巾归类为有机垃圾,把废塑料和烟头归类为无机垃圾,灰尘堆为未收集的清扫废物,黏性污渍归类为黏性残留物。

根据2号实验室的检测统计结果,利用式(2)计算测试场地各观测区域的GCIOA值并汇总,表4所示为垃圾数量及其加权总值。因此,2号实验室的汇总后的地面清洁度指数可计算为

查表1可知,2号实验室的地面清洁度等级属于低等的4级。本文设定当清洁度等级低于2级时,就认为地面不够干净,需要清洁机器人进行垃圾定点清洁,以及不同垃圾分类清洁。对于废塑料、烟头和纸巾类垃圾可以直接采用清扫的方式清洁,灰尘堆则需要采用吸除的方式,而黏性污渍则首先需要采用物理刮除或清洁剂清洗,然后再清扫或吸除。

表4 垃圾数量及其加权总值

4 结 论

通过自建数据集来训练地面垃圾检测模型,实验检测结果表明:模型在测试集上的mAP达到了88.3 %,平均帧率达到了28帧/s,基本能够满足地面垃圾检测的要求。在实际场地测试中实现了对地面垃圾的分类与量化,评定出了清洁度等级,以便于清洁机器人高效地完成定点清洁、再次清洁以及分类清洁等作业。本文为避免机器人盲目清洁作业而浪费时间和资源提供了一种解决方案。未来研究可以增加实际的垃圾类别与场景,提高垃圾检测模型对各种垃圾特征和属性的检测适应性,使清洁机器人达到更高效、更高质量的自主和协作作业能力。

猜你喜欢
清洁度废塑料纸巾
发动机清洁度管控方法研究及应用
发动机零部件清洁度检测技术
分析护理干预对门诊患者肠镜检查前肠道清洁度的影响
碳中和背景下国内外废塑料裂解法回收进展
高校用废奶瓶铺300米道路
纸巾山水画
中国致函WTO禁止“洋垃圾”
火电厂汽轮机油系统清洁度的控制措施探讨
纸巾康乃馨
完形填空练与析