基于YOLOv7网络的废弃塑料瓶颜色智能分选系统研究
2024-05-20倪瑞涛邹红艳朱瑞林
倪瑞涛, 邹红艳, 倪 超, 朱瑞林
(南京林业大学 机械电子工程学院,江苏 南京 210037)
塑料是一种以合成的或天然的高分子聚合物,任意捏成各种形状最后能保持形状不变的材料或可塑材料产品。由于其质轻,化学性稳定,不会锈蚀;耐冲击性好;具有较好的透明性和耐磨性;绝缘性好,导热性低;一般成型性、着色性好,加工成本低。因此,常见的容器通常都是塑料产物,包括饮料瓶、牛奶瓶等。随着我国国民经济高速发展,人民生活水平不断提高,以塑料为原材料的饮料瓶以其超高的性价比迅速占领市场。超市、便利店都有专门的货架放置各式各样的饮料,在夏天,冰箱里的饮料更是给酷署下的人们带来凉爽的慰藉,提高了人们的生活质量[1]。
而塑料难以降解,在造福人类的同时,也带来了新的环境问题——“白色污染”。据有关数据报道,目前全球仍有55%的废弃塑料被丢弃,25%被焚化,只有20%被回收。全球每年约产生3.3亿t塑料制品,预计到2050年将倍增至6.6亿t。塑料瓶作为一次性制品,用完即丢,作为垃圾的塑料瓶通常有以下几种处理方案:一是被随手丢弃,混在土壤中或是水体中;二是随着其他垃圾一起扔进填埋场;三是在垃圾场被焚化;四是回收利用,生产成衣服等其他产品。前三者都或多或少存在着对生态环境的污染,而回收的方案才是变废为宝,实现塑料可持续发展的出路[2]。
大部分塑料瓶的生产原料都是聚对苯二甲酸乙二醇酯(polyethylene terephthalate,简称PET)。塑料瓶在生产过程中,由于每家品牌都有其独特的设计理念,比如想到雪碧就是绿色的瓶子,想到矿泉水一般则是透明或者透明的淡蓝色。塑料瓶呈现出多种不同的颜色、形状,不同颜色的PET塑料瓶由于其添加成分不一,如果不分类回收利用,则最后生产出来的塑料原料纯度低,再利用价值低[3]。
近年来,回收行业的人工智能水平不断发展,对塑料瓶进行分类回收在保护环境、节约资源等方面具有重要意义。李俊宇等[4]使用Faster R-CNN算法,对多种颜色的透明PET塑料瓶进行分类,在对ResNet网络进行损失函数的改进,并且在样本不均衡时,采用权重采样法改进ResNet网络,最终对塑料瓶颜色分类的准确率达到了96.6%。Wttaya等[5]首先通过对比PET瓶和非PET瓶的RGB的颜色直方图进行了处理,将图像缩小至统一尺寸;然后将彩色图像转换为灰度图像,再转换为黑白图像来去除背景,从而得到了色彩分布的直方图与去除背景的图像,用非背景图像对直方图进行归一化处理;用最终得到的无背景直方图,通过计算直方图的相关性来对塑料瓶进行材质分类,算法精准度为93.33%。Suzaimah等[6]提出了一种新的方法,通过实现自动分拣的成像技术的可行性来对塑料瓶进行分类。根据塑料瓶的原始图像,有明显的特征可以区分PET和非PET两类塑料瓶,该方法包括从区域分割技术中自动检测“ROI”,并提出了像素强度直方图算法,以区分两类瓶子;即PET和非PET。实验结果表明,塑料瓶分类的准确率超过80%。Wang等[7]在分拣过程中将回收瓶的颜色分为7类,由于瓶子的顶部和中间可能分别有瓶盖和标签,因此使用底部部分的颜色特征来代表回收瓶的颜色特征,采用ReliefF算法选择回收瓶的颜色特征,采用支持向量机(SVM)算法进行颜色识别。最终,回收瓶的颜色识别准确率达到了94.7%。
由上述文献的实验结果,我们可以看到,基于深度学习网络的算法在塑料瓶颜色分选上优于机器学习。由于机器学习通常通过手工提取特征,因而手工提取特征的好坏直接影响了目标检测的效果,使用任何分类器都难以弥补最后的效果。并且,这种针对特定任务设计的特征提取方法,在大数据的样本中表现较差,需要不断添加训练样本,费时费力。而深度学习由于数据集的数据数量大,在塑料瓶分类问题上的准确率普遍优于机器学习。
1 分选系统设计
1.1 分选系统的硬件设计
回收塑料瓶分选系统的硬件结构如图1所示,主要由工控机、工业相机、照明光源、可编程逻辑控制器(PLC)及喷阀机构等组成。其中,工控机与工业相机通过千兆网线连接,与PLC通过RS-485连接,使用串口通信[8]。
图1 系统结构示意图
当前市场上的相机根据所采用的传感器不同,可分为CCD(Charge Coupled Device)相机和CMOS(Complementary Metal Oxide Semiconductor)相机[9]。它们的核心感光元件都是光敏二极管(photodiode),在光照下会产生输出电流,其强度与光线强度成正比。CCD相机拥有更大的有效感光面积,在相同条件下可以接收到更强的光信号。总的来说,与CMOS相机相比,CCD相机的成像噪声更低,图像颜色更准确,图像细节更丰富,但成本更高。由于本系统的图像处理单元主要依赖颜色和残留标签的纹理、形状特征来识别塑料瓶,对图像质量有较高要求。因此,本系统选择了CCD工业相机作为图像采集设备。CCD相机根据扫描方式还可分为隔行扫描和逐行扫描两种。在捕捉快速移动物体时,隔行扫描相机由于奇数场和偶数场的采集时间不同,可能会导致图像撕裂现象,从而对本系统的性能产生不利影响。因此,在本系统的图像采集模块中,选择了逐行扫描的CCD工业相机。
综上所述,系统选用海康威视公司生产的 MV-CA050-10GC 型面阵工业相机,以及 MVL-HF0824M-10MP型 1 000万分辨率工业 镜头。工业相机的参数见表1。
表1 工业相机参数
分捡模块主要依据接收到的目标信息,对目标塑料瓶进行气动分离。分拣模块主要由 PLC、电磁阀、驱动器、气动喷嘴以及光电编码器组成。使用 PLC 结合光电编码器对目标瓶进行跟踪,光电编码器主要对传送带进行测速。上位机在获取到目标瓶的位置与类别信息后,即可计算出该目标瓶与相应气动喷嘴间的距离。通过光电编码器旋转的角度,便可计算出塑料瓶到达喷嘴时光电编码器的脉冲数,从而 PLC 控制电磁阀开关,对目标进行分离[10]。
1.2 分选系统原理与工作流程
废弃塑料瓶智能分选系统的工作流程如图2所示。首先,将去除杂质和经过热洗处理的塑料瓶引入震动装置。在震动装置的作用下,由于传送带的宽度和震动装置下料槽的限制,塑料瓶以单个的方式均匀地进入传送带上,此时它们之间保持着均匀的间距。传送带在电机的驱动下以均匀速度前进,当目标塑料瓶通过图像采集区域时,工业相机对其进行图像捕捉,并通过千兆网络将拍摄到的图像传输到图像处理计算机。计算机接收到图像后,对图像进行预处理、目标识别和定位,最终获得图像中目标物体的种类和位置信息,并通过串口将该信息发送给以PLC为核心控制单元的控制模块。PLC在接收到目标坐标后,结合传送带的速度,对目标塑料瓶进行跟踪。当目标塑料瓶的中心到达气动喷嘴的操作区域时,PLC控制气动喷嘴执行分离操作,将目标塑料瓶喷射到特定的收集装置中,从而实现了塑料瓶的自动分拣。
图2 系统工作流程图
2 基于YOLOv7网络的废弃塑料瓶颜色分类算法
YOLOv7代表了YOLO系列的最新一代目标检测器[11-12]。在5 FPS到160 FPS的范围内,无论是速度或是精度,YOLOv7都超过了目前已知的检测器。最佳模型的平均精度(mAP)达到了惊人的56.8%,这在所有已知的目标检测器中都是最高水平[13-15]。目前,YOLOv7在各行各业都取得了较好的应用[16-18]。
根据采集到的塑料瓶图像特点,对 YOLOv7卷积神经网络进行改进,实现对塑料瓶的检测和分类,然后将训练好的塑料瓶分类算法部署到工业计算机上,处理工业相机拍摄的塑料瓶图像,实现对塑料瓶的检测和分类。 YOLOv7网络模型的结构主要由 Backbone、Head 两个部分组成,如图3所示。其核心思想是将输入图像划分为若干个网格,每个网格负责预测目标框的回归坐标及置信度,过滤置信度较低的目标框并对保留的目标进行非极大值预测处理,最终得到预测结果[19]。
图3 YOLOv7 网络模型结构
2.1 Backbone网络
YOLOv7的主干组件负责进行特征提取,由三个关键模块组成:CBS(Conv - Bn - SiLU)[20]、ELAN(Extended Latent Attention Network)[21]和MP(Max-Pooling)[22]。CBS模块包括一系列层,如卷积(Conv)层、批处理归一化(BN)层和Sigmoid线性单元(SiLU)层;它采用了不同卷积核大小和步长的策略,使其能够在多个尺度上捕获特征信息,对于从输入数据中提取关键特征至关重要。ELAN模块则是一种高效的网络结构,用于管理网络中各种梯度路径的长度。这有助于鼓励网络学习更多多样和判别性的特征,从而提高模型的鲁棒性。ELAN模块增强了模型从输入数据中提取有意义表示的能力。MP模块由两个分支组成,用于执行下采样操作。它通过最大池化来减少特征图的空间维度,有效地捕捉不同尺度的基本信息。YOLOv7的主干组件中的CBS、ELAN和MP模块协同工作,从输入数据中提取相关特征,从而实现高效准确的目标检测。
2.2 Head网络
头部组件负责对提取的特征进行进一步处理并执行目标检测任务。它由多个关键模块组成,包括空间金字塔池(SPPCSPC)[23]、特征金字塔网络(FPN)[24]、路径聚合网络(PANet)[25]和检测头。SPPCSPC模块通过最大池化操作获得不同感受,以适应不同图像分辨率。FPN和PANet模块增强了网络对不同特征层的融合能力。此外,头部还引入了RepVGG模块进行训练,以实现对图像的识别和分类。YOLOv7配备了三个检测头,用于检测不同尺寸的目标。
3 数据收集与算法训练
3.1 塑料瓶分类标准说明
本文针对废弃塑料瓶在脱标过程中可能脱不干净的情况,将废弃塑料瓶根据颜色分成了4类,收集共4种类别的塑料瓶,分别为透明无色PET、透明绿色PET、透明蓝色PET、不透明乳白色PET。各类塑料瓶图像具体如图4所示。
图4 种塑料瓶类别
3.2 图像数据收集与标注
检测废弃塑料瓶的网络模型使用自制数据集进行训练,通过收集市面上不同类别的塑料瓶进行数据集的制作。由于收集塑料瓶的数量有限,而训练数据集样本的数量和多样性决定检测算法模型的训练效果和泛化能力。我们的数据集包含1 000张图像。我们选择2 000张图片作为训练集,500张图片作为每种塑料瓶的测试集。然后我们给不同的塑料瓶贴上标签。标签编号0~3分别代表透明无色PET、透明绿色PET、透明蓝色PET和不透明乳白色PET。因此,为了避免模型出现过拟合的情况,采用数据增强方法,包括旋转、翻转、高斯模糊,扩充数据集,使得数据集图片数量达到10 000张。使得训练后的检测网络模型能够满足对不同位置、角度和亮度下的塑料瓶的检测要求,具有较好的识别效果,保证模型的鲁棒性。
在训练基于 YOLOv7网络缺陷塑料瓶检测算法前需要对数据集进行标注。选择使用 LableImg数据标注软件标注废弃塑料瓶的位置及其颜色种类。
3.3 基于 YOLOv7 网络废弃塑料瓶分类算法训练
基于YOLOv7网络废弃塑料瓶分类算法在试验室服务器上进行训练,训练平台配有 Intel i7-8700 3.20 GHz的CPU、Nvidia RTX 2080Ti的GPU以及16 G的显存。
对塑料瓶数据进行训练时,模型在大约80次迭代后趋于稳定。为了应对过拟合问题,我们将总迭代次数设置为100。学习率在深度学习中是一个关键的超参数,它控制着模型参数在梯度下降优化中的更新速度。如果学习率过大,可能导致模型无法收敛,训练误差波动较大。因此,我们将初始学习率设定为0.01,学习率衰减频率为0.1,最终学习率为0.001。在YOLOv7中,批大小对模型的训练效果和速度有显著影响。批大小表示每轮梯度下降中同时处理的样本数量,影响着模型参数更新的多个方面,如方向、幅度和速度。较大的批大小可以提高训练速度,但可能导致过拟合和无法收敛等问题。因此,我们将批大小设置为16。
采用召回率、准确率和平均精度(mAP)作为废弃塑料瓶分类算法的主要评价标准。召回率是指样本中的正确类别被预测正确的概率,其公式如下,
(1)
式中,R为召回率,TP为模型预测的正类个数作为正例,FN为模型预测的正类个数作为负例,即模型误分类的样本数。
精准度[26]值的公式如下,
(2)
其中P为精度值,FP为模型预测的负样本的正样本数。
mAP@0.5用于检测网络算法的性能。它适用于单标签和多标签图像的分类和计算。mAP@0.5[27]的公式如下,
(3)
式中,k为测试集中的样本数,P(i)为i个样本被识别时的精度大小,ΔR(i)为被检测样本从i到i+1变化时召回率的变化,N为多类检测任务中的类别数。
4 结果分析
图5、图6和图7显示了训练和测试数据集在100个轮次中的召回率、精度值和mAP。结果表明,经过78个epoch后,YOLOv7的精度超过90%。在第87个epoch结束时,在测试数据集上达到了最高的mAP@0.5为95.7%。部分识别结果如图8所示。
图5 召回率曲线
图6 精度值曲线
图7 mAP曲线
图8 识别结果图
5 结论
本文提出了一种基于YOLOv7的废弃塑料瓶分类的智能分选系统,通过 YOLOv7 网络模型完成对废弃塑料瓶的检测识别,与PLC进行通讯,结合喷阀实现对废弃塑料瓶的分拣。经过测试,废弃塑料瓶召回率达到 95% 以上。检测精度高、实时性好、工作速度快,具有高度自动化和智能化水平,有效解决了人工分选存在的效率低、成本高、错误率高等问题,可以满足回收工业中的需求,具有一定的应用和推广价值。