- DOI:
10.13738/j.cnki.acc.qklw60536
- 专辑:
科学Ⅰ辑;信息科技
- 专题:
信息、科学;综合科技
- 分类号:
G90;N92
摘要
随着环保意识的增强和垃圾处理需求的增加,智能垃圾分类系统在城市管理中显得尤为重要。本文设计了一款基于STM32微控制器的视觉识别的智能垃圾分类垃圾桶。该系统主要利用OpenMV摄像头实时识别投放物品的类型,通过图像处理算法进行分类并结合STM32控制器,对垃圾桶的机械结构进行智能控制,实现垃圾的自动分类投放。
关键词 智能垃圾分类,STM32,视觉识别,深度学习
1 绪论
1.1研究背景
随着全球环保意识的增强,垃圾分类已成为城市环境管理的重要组成部分。在校园环境中,传统的垃圾分类方法往往依赖人工分类和定期清理,这种方式不仅效率低下,而且分类不准确,容易导致资源的浪费和环境的污染。因此,设计一种能够自动化、智能化地进行垃圾分类的系统显得尤为迫切。
1.2研究目的与意义
本研究旨在设计并实现一种基于STM32微控制器的智能垃圾分类垃圾桶,以提高垃圾分类的效率和准确性。通过实时识别和分类物品,能够减少人为错误,优化垃圾管理流程,从而提升资源回收率,降低环境污染。
这一研究的意义在于推动智能化发展、增强公众环保意识、助力可持续发展并提供实用解决方案,为城市垃圾管理提供切实可行的对策,进而为更广泛的智能垃圾分类系统的推广奠定基础,提升整体环境质量。
2 视觉识别技术
2.1视觉识别原理
视觉识别技术,主要在于通过深度学习与模型训练,精准捕捉并解析同一类别物体在二维图像空间中的特征像素分布规律,这些规律体现在像素值的强弱以及它们在图像中的相对位置关系上。基于这些规律,系统能够拟合出描述该类物体独特性的像素特征函数,该函数如同物体的“数字指纹”,能够有效区分不同类别的物体,实现精准分类与识别。
值得注意的是,为了构建高精度的视觉识别模型,必须依赖庞大的基础数据集进行训练,以确保模型能够学习到足够丰富的特征信息,提升识别的准确性。在实际应用中,图像处理往往聚焦于图像中的特定区域,即感兴趣区域(ROI),这一区域包含了分析所需的关键信息。提取ROI的过程,即图像分割,是图像处理流程中的关键步骤。常见的图像分割技术包括阈值分割、区域分割、边缘检测分割以及基于模糊集理论的分割方法等,其中,阈值分割法凭借其实现简便、计算效率高、稳定性强的特点,成为众多应用场景中的首选。通过精确提取ROI,不仅可以显著减少数据处理的时间成本,还能有效提升识别的精度,进一步系统性能。
2.2模型训练
视觉识别的第一步是图像采集。图像采集包括构建数据集、确定采集量以及拍照采集等步骤,图像采集流程如图2-1所示。
图2-1 图像采集流程图
图形采集主要有两种方式。一种是用手机或相机拍照采集,并且新建起存放各个种类数据文件夹,将拍好的图片上传至电脑文件夹中,最后在OpenMV IDE中引用存放好数据的文件。另一种方法是直接在OpenMV IDE 中创建数据集,用于存放各个种类的数据,并在已创建的数据集中添加种类。创建分类后连接OpenMV并运行。此时IDE上的framebuffer 帧缓冲区可以看到OpenMV 的实时图像。点击拍照即可完成当前图像的采集。
采集数量的多少直接影响后期识别结果的准确程度。目前的数据显示,每个采集的样本数量应在100张以上,才能使准确率保持在较高水平。
完成采集后得到四个不同种类垃圾的数据集。其中包括厨余垃圾8类1872张照片,可回收垃圾4类786张照片,有害垃圾4类692张照片,其他垃圾3类625张照片,对于每一类的不同形态,均采集图像约200张。四个种类采集照片共约4000张。其中,将78%的图片用作训练模型进行训练,22%用作测试模型。
数据采集完成后,即可进行模型训练。模型训练可在EDGE IMPLUSE 网站完成。EDGE IMPLUSE 是一个在线网站,可以为嵌入式产品快速生成嵌入式系统神经网络模型。
将图片上传至该网站,对图片进行DSP预处理,根据种类特征会生成一个三维函数模型。图中不同的点代表不同种类特征,相同的点越聚集,代表该种类特征越明显;反之,如果不同的点混合在同一区域,这说明数据集前期的采集特征不够明显。图2-2为厨余垃圾的预处理函数模型,该模型具有明显的聚集区域,是较为理想的训练模型。
图2-2 预处理函数模型图
预处理后选择transfer learning,开始正式的模型训练。不同的训练次数对结果的准确率有影响,训练次数与准确率不完全成正比,次数过多会导致训练模型过拟合,准确率下降,所以在训练中开启Data augmentation功能,在训练期间随机变换数据,可以在不过度拟合的情况下运行更多训练周期,提高准确性。其中,厨余垃圾的模型性能如图2-3所示。
图2-3 厨余垃圾模型性能图
3 系统硬件设计
3.1总体方案
该系统包括识别模块、控制模块以及执行模块。当垃圾落入时,系统将启动摄像头对垃圾进行识别,将其与标准特征数据进行比对,获得垃圾信息,生成识别结果(垃圾种类)并发送给控制模块。控制模块根据收到的结果信息完成投放垃圾并复位。系统结构框图如图3-1所示。
图3-1 系统结构图
3.2电路设计
硬件电路由STM32F103C8T6 核心板、Openmv4 H7 plus 摄像头、TCRT5000红外传感器、OLED,SG90舵机和DFPlayer Mini MP3构成。所有元器件均与单片机相连。图3-2为系统接线原理图。
图3-2 系统接线原理图
OpenMV与STM32单片机串口通信至少需要3根线:TXD,RXD,GND。TXD是发送端,RXD是接收端,GND是地线。连线的时候,需要把OpenMV 的RXD和TXD分别连到STM32单片机的TXD与RXD。脱机运行时,OpenMV可通过单片机对其供电。
SG90度舵机必需使用PWM引脚进行驱动。因此选择STM32单片机的A0、A1、A8、A11四个引脚分别控制四个舵机。红外传感器的输出信号为数字信号,可连接到单片机的任意I/O口,只需要避免占用特殊引脚即可。
原理图完成后,即可依据原理图画出PCB电路图并下单打板。该系统的PCB电路图如图3-3所示。
图3-3 系统PCB电路图
4 系统软件设计
4.1 STM32控制程序
STM32单片机的程序主要为通过接收OpenMV的指令并控制多个舵机动作来实现对垃圾桶的控制。其主要内容包括初始化舵机和串口模块、接收串口数据并解析指令。根据指令控制指定的舵机旋转到特定角度,延时保持后复位,舵机控制程序流程图如图4-1所示。每个舵机的动作独立实现,方便扩展更多舵机控制。同时使用非阻塞延时优化程序性能,并增加数据包校验和状态反馈功能,增强了系统可靠性和用户交互体验。
其中,串口部分实现了STM32通过USART1串口进行数据通信的初始化配置和中断接收功能。串口通信流程图如图4-2所示。在USART1的中断服务函数中,核心采用状态机的设计方式实现数据包解析,串口通信流程图如图4-3所示。通过判断接收的数据,依次识别包头、数据内容和包尾。整体代码通过串口初始化和中断接收的配合,实现了稳定的串口数据通信。在接收过程中,状态机设计避免了数据丢失或异常,提高了数据解析的可靠性。代码结构清晰,方便扩展和调试,为数据通信的应用提供了良好的基础。
图4-1 舵机控制程序流程图
图4-2 串口通信流程图
4.2 OpenMV识别程序
识别程序是整个系统的核心部分,识别的准确程度也决定了系统的性能。图4-3为视觉识别程序工作流程图。
图4-3 识别程序工作流程图
OpenMV的程序基于OpenMV摄像头和FOMO模型实现嵌入式物体检测,集成了摄像头采集、模型推理、串口通信和显示输出功能。通过初始化摄像头、串口和SPI,加载Edge Impulse训练的FOMO模型,实时捕获图像并进行物体检测。检测结果通过非极大值抑制优化后,发送至外部设备,并在显示屏上以图像可视化。程序设计高效,适合资源受限环境,支持实时检测与数据通信,便于扩展应用场景。
4.3 系统集成与调试
4.3.1 系统调试与优化
当使用OpenMV进行模型训练时,初始训练效果并不理想,但通过分析问题、重新调整训练数据及模型参数,最终成功优化了模型效果,显著提升了识别性能。此外,在尝试利用舵机设计并实现垃圾桶盖的开合控制时,我们在设计过程中探索了多种机械结构,针对不同的实现方式进行了多次实验和改进,最终完成了功能稳定、结构优化的设计方案。
4.3.2 异常情况处理
在使用OpenMV进行该项目开发时,曾遇到过诸多困难,其中最频繁的报错便是OpenMV运行内存不足的问题,我们通过查找资料和实践,先后尝试了多种不同解决方法。首先,我们选择降低图像分辨率(如使用QQVGA而非VGA)或采用图像压缩格式(如RGB565替代RGB888),以减少每帧图像的内存占用。其次,合理使用垃圾回收机制,虽然OpenMV自带自动垃圾回收功能,但在内存占用较高时,可以手动调用gc.collect()来强制清理无用的对象,释放内存。最后,为了进一步减少内存压力,我们优化了图像处理和深度学习推理过程,使用较小的图像块进行处理,并采用更轻量级的神经网络模型(如MobileNetV2等),以减少内存需求。此外,我们还尝试了更换固件和减少GC所占内存等多种方法,最终在多番努力之下成功训练出大小合适的模型并使程序正常运行。
5 系统功能测试与性能评估
该系统通过OpenMV训练的优化模型,能够精准识别多种类型的垃圾。尽管在模型训练初期效果不佳,但通过重新训练和参数优化,最终取得了显著提升,具有高达95%以上的识别准确率。系统硬件部分设计巧妙,使用舵机控制垃圾桶盖的开合,经过多次尝试和对机械结构的调整,最终实现了高效、可靠的垃圾分类与处理功能。
6 未来发展方向
未来,自动垃圾分类系统的发展方向将集中在功能优化、技术集成和智能化提升三个主要领域,以进一步增强系统的效率、灵活性和适应性。
垃圾自动分类系统的功能优化将朝着更高精度和更大灵活性的方向发展。首先,在垃圾识别方面,未来的系统将具备更准确更精细的识别能力。这可以通过引入高精度的传感器和更先进的控制算法来实现。其次,在自动化操作方面,系统可以扩展更多的功能模块,进一步减少人工干预,提高分类识别效率。此外,系统的可扩展性设计将更加注重模块化,使得用户能够根据自身的需求灵活地添加或移除功能模块,增加系统的适用范围和用户友好性。
7 总结
基于国家政策和环境问题,本文设计了基于STM32的智能分类垃圾桶。设计方案运用智能化和自动化技术对现有的垃圾分类问题进行分析解决。这项技术可以帮助人们快速进行垃圾分类,从而促进资源回收利用,减少环境污染,提高城市垃圾处理效率,在一定的程度上还兼具教育意义。
参考文献
[1]黄明宇,曹一鹏,佟英芝,等.基于视觉分析的垃圾分类识别系统的设计与实现[J].物联网技术,2024,14(09):25-27.DOI:10.16667/j.issn.2095-1302.2024.09.006.
[2]金玮,孟晓曼,武益超.深度学习在图像分类中的应用综述[J].现代信息科技,2022,6(16):29-31+35.DOI:10.19850/j.cnki.2096-4706.2022.16.008.
[3]孙雨萌.深度学习在计算机视觉分析中的应用分析[J].中国新通信,2018,20(23):169-171.
[4]郑可建,张劲东,黄少波.基于OpenMV视觉分拣机器人的研发[J].电子制作,2022,30(09):27-30.DOI:10.16589/j.cnki.cn11-3571/tn.2022.09.003.
[5]马含章,王淼鑫,钟拼扬,等.视觉识别的生活垃圾分类系统设计[J].天津农学院学报,2023,30(04):53-57.DOI:10.19640/j.cnki.jtau.2023.04.010.
[6]王晶,赵爽,朱美军.高校垃圾分类的现状及建议[J].皮革制作与环保科技,2022,3(4):180-182.
[7]李继超,贺晓倩,权亚腾,等.一种室内智能语音识别垃圾分类系统的设计[J].自动化与仪表,2021,36(11):103 108.
相关文献推荐
- 节点文献
- 读者推荐
- 相关基金文献
- 关联作者
- 相关视频
- 批量下載
