APP下载

基于MobileNetV2 和迁移学习的垃圾分拣系统设计

2023-11-14吴先文叶幸福陈祖星李和霖

电子制作 2023年20期
关键词:舵机挡板垃圾桶

吴先文,叶幸福,陈祖星,李和霖

(六盘水师范学院 物理与电气工程学院,贵州六盘水,553000)

0 引言

近些年来,伴随着经济、社会的发展,以及人们的物质消费水平的不断提升,垃圾的产生数量也在不断地增加,这既是一种资源的浪费,也是一种对环境的潜在威胁,它已经成为制约经济社会持续健康发展的一个重要因素。然而,传统的垃圾分类方法需要大量的人力和时间成本,难以满足大规模的分类需求,如何高效进行垃圾分类和回收,成为人们迫切需要解决的问题之一[1]。对此,本文设计一款利用机器视觉和智能算法技术实现对垃圾的自动分类识别的垃圾桶,其具有提高垃圾分类效率、降低人工成本,并使垃圾分类更加高效和智能化。

1 系统总体设计

该系统以STM32F103 单片机作为主控核心,负责接收OpenMV 摄像头模块识别结果信号、显示垃圾种类及驱动MG90S 舵机;OpenMV 摄像头模块处理对投放的垃圾进行识别,得到的识别结果发送至STM32F103 单片机;MG90S舵机收到STM32F103 单片机的信号后,通过旋转设定好的角度而控制挡板朝向,实现自动分拣的功能;LCD 显示屏则显示分类结果以及满载等信息,系统设计框图如图1 所示。

图1 系统设计框图

1.1 摄像头模块

摄像头模块本文选用OpenMV4 H7 PLUS,它是一款低成本,功能强大的机器视觉模块。以STM32H743IICPU 为核心,主频为480MHz,内存为1M,运行速度快、功耗低。它搭载了OV5640 摄像头芯片,在QVGA(320×240)及以下分辨率时大多数简单算法都可以运行30FPS。在小巧的硬件模块上,用C 语言高效地实现了核心机器视觉算法,提供Python 编程接口[2]。通过Python 对OpenMV 进行控制,可以比较方便地通过外部终端来触发拍摄或执行算法,还可以利用算法的结果来控制IO 管脚。

1.2 MG90S 舵机

MG90S 舵机是一种位置(角度)伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。而在本系统中使用了三个MG90S 舵机作为分类垃圾桶的桶盖转轴和挡板的转轴。1、2 号舵机将挡板旋至对应垃圾桶入口上方,3 号舵机打开桶盖,将识别完成垃圾投入桶内,完成自动投放垃圾的过程。

1.3 LCD 显示屏

显示部分使用3.5 英寸TFT 电容式屏幕,可实现宣传教育视频及图片的自动播放。其显示内容有垃圾总量、分类结果、垃圾桶是否装满的提示。

2 机械结构设计

垃圾桶整体呈正方形为底部向上延伸的长方体封闭式结构。主要由七部分组成,即摄像头及主控、1 号舵机、桶盖及识别区、分拣挡板、2 号舵机、3 号舵机和垃圾桶分区隔板等。摄像头及主控放置(主控集成LCD 显示屏)桶盖及识别区正上方,而桶盖边缘连接由1 号舵机控制的转轴。垃圾桶被分区隔板平均分成四个区域,可装四个种类的垃圾,分区隔板交叉点上设置一个平台,用以放置于水平面呈45°角的分拣挡板和两个舵机,其中挡板由2 号和3 号舵机控制旋转至设定的角度。当在识别区投入垃圾后,OpenMV摄像头模块会自动拍摄并分析垃圾的种类,STM32 主控则根据分类的结果驱动2 和3 号舵机,将分拣挡板旋转至对应的分区上方,1 号舵机再翻转,使得识别完成的垃圾自由落体,经过分拣挡板滑至对应分区内,从而完成自动分拣工作,垃圾桶的模型示意图如图2 所示。

图2 垃圾桶模型示意图

3 图像处理模型设计

3.1 图像数据集的建立

数据集的建立使用OpenMV IDE 工具栏中的数据集编辑器配合OpenMV 摄像头采集的垃圾图像数据,作为分类的数据集,而不使用网络上现成的数据集,是为了得到符合实际情况,更好地模拟现实。通过OpenMV 多角度拍摄得到的2932 张数据集,包含不可回收垃圾、厨余垃圾、可回收垃圾、有害垃圾等四大种类,部分垃圾样本示例如图3所示。

图3 部分垃圾样本示例图

将数据集上传,随机抽取79%图片作为训练集,21%图片作为测试集,并做相应类别标签。因所采集的数据集较少,为了提高数据处理精度,使用几何处理和数字信号处理(DSP)技术进行图像处理,主要功能包括对图像进行尺寸缩放以及使用适合最短轴方法将图像大小统一处理为96×96 像素。采用DSP 技术对图像进行预处理,以获得RGB 彩色图像,能够更好地保留图像的信息。把图像转换成一段特征数据,以便进一步进行的图像处理。

3.2 模型选择与构建

自VGG 问世以来,深度学习领域的神经网络越来越注重计算能力和适应能力的提升。然而,随着网络规模和复杂度的增加,神经网络占有的空间也越来越大,导致了对硬件条件的更高要求。训练和预测这种神经网络模型需要更高的计算能力和成本,限制了其普及性和推广度。由于移动设备的硬件资源有限,其对深度学习网络模型的处理能力也受到了一定的限制。为此,深度学习领域内逐渐形成了神经网络小型化的发展趋势。MobileNet 等神经网络模型在移动设备和嵌入式设备的应用中在保证模型准确率的前提下,大幅减小模型体积、计算量和运行时间,同时提高准确率的优势,成为移动设备的理想选择[3]。

本次设计采用MobileNetV2 作为网络模型,并在此基础上利用ImageNet 预训练权重。首先,在避免破坏已学习特征的前提下,冻结其底层,以确保其不被改动。其次,添加新的可训练层,并使用采集的数据集对这些层进行训练,以便获得不同种类的垃圾特征。最后,对模型进行微调,保存产生的权重,MobileNetv2 预训练流程图如图4 所示。

图4 MobileNetv2 预训练流程图

3.3 迁移学习

迁移学习是一种利用已经训练好的神经网络模型来解决新问题的方法,即将已经学习到的知识称为“源领域”,新问题称为“目标领域”。迁移学习的目标是将源领域的知识应用于目标领域,以提高目标领域的学习性能[4]。具体实现方式是:首先,加载已经训练好的MobileNetV2 网络模型,在此基础上添加新的可训练层,一般是全连接层或者卷积层,根据新问题的需要进行设计。然后,使用新的数据集对这些层进行训练,以适应新问题要求。在训练过程中,常常使用迁移学习中的fine-tuning 技术,即保持已有层的参数不变,只在可训练层进行微调。在迁移学习中,由于MobileNetV2 神经网络已经学习到了很多图像特征,因此可以充分利用这些特征来提取新问题中的特征,从而提高模型的精度和泛化能力[5]。此外,使用预先训练好的MobileNetV2 模型可以避免从头开始设计和训练模型的时间和计算成本,并且在不丢失已有学习的特性的情况下使用现有的偏差和权重[6],迁移学习流程图如图5 所示。

图5 迁移学习流程图

4 测试结果

4.1 MobileNetV2 模型训练

为验证本次设计所提模型的迁移性能及有效性,进行了准确度实验。实验数据集均为实际拍摄图片,并非使用网络上下载的数据集,数据集分为不可回收垃圾、厨余垃圾、可回收垃圾、有害垃圾等四大种类。在模型训练中,学习率是训练深度学习模型时的一个关键超参数,过大的学习率可能导致模型训练不稳定或模型无法收敛,而过小的学习率可能导致模型训练缓慢或可能陷入局部最优解,因此,选择了三个不同的学习率(0.001、0.0005 和0.0001),并比较它们在模型训练过程中的准确率[7],实验结果对比如表1 所示。

表1 不同学习率时模型的准确率

根据表1可知,学习率设置为0.0005,迭代次数为20时,训练效果最佳[8]。即此次模型训练的学习次数设置为20 次,学习率设置为0.0005,其模型训练结果如图6、7 所示。

图6 模型准确率变化曲线图

图6 为模型准确率变化曲线,图7 为模型交叉熵损失函数变化曲线,圆点标记蓝色实曲线表示验证集,红色实曲线表示验证集。可以从图中看出训练集的准确率为0.9765,验证集的准确率为0.9077,训练集的损失为0.9092,验证集的损失为0.4167,准确率和损失函数随着训练次数的增加而逐渐趋于平稳,最终模型验证集的损失分为0.283。

图7 模型交叉熵损失函数变化曲线图

4.2 MobileNetV2 模型测试

使用TensorFlow Lite converter 将最优模型转换成tflite 格式模型文件,部署在OpenMV 摄像头模块上,最后进行整机的调试。选择四大类垃圾,包括不可回收垃圾、厨余垃圾、可回收垃圾、有害垃圾,每类投入垃圾桶100 次,再记录其分拣结果,其分拣结果热力图如图8 所示。

图8 分拣结果热力图

如图8 所示,颜色越深表示值越高,对应的准确率越高。图中有害垃圾的准确率最低,其值为0.82,最终该系统分拣的平均准确率为0.9,且该系统反应较快,信息显示正常,舵机也能根据设定快速作出相应反应。

5 总结与心得

针对传统的垃圾分类方法需要大量的人力和时间成本,难以满足大规模的分类需求,本文提出了一种基于轻量化卷积神经网络模型,结合迁移学习和STM32F103 单片机的系统设计与研究。首先,使用迁移学习的方法,将MobileNetV2 预训练模型提取的垃圾图像特征迁移到新的可训练层,并采用TensorFlow 框架进行模型训练;其次,使用TensorFlow Lite converter 将最优模型转换成tflite 格式模型文件,部署在OpenMV 摄像头模块上。最后,对该系统整机调试及实验测试,其测试结果表明,基于MobileNetV2 和迁移学习的垃圾分拣系统,能够完成对不可回收垃圾、厨余垃圾、可回收垃圾、有害垃圾这四大类识别并自动分拣,大大提高垃圾分类的效率,减少人工分类带来的时间损失和资源浪费,同时还能对环境保护做出重要的贡献。在未来,相信此项技术将会被广泛应用,并发挥出更加重要的作用。

猜你喜欢

舵机挡板垃圾桶
平抛运动中的“挡板”问题探究
燃烧器二次风挡板开度对炉内燃烧特性的影响
垃圾桶等
投进垃圾桶的信
投进垃圾桶的信
飞进垃圾桶
含齿隙弹载舵机的全局反步模糊自适应控制
基于dsPIC单片机的飞艇舵机控制实现
基于高速同步485总线通信的多通道舵机控制器设计
基于云模型的舵机同步控制