首页 / 一种智能回收分类垃圾装置及其控制方法

一种智能回收分类垃圾装置及其控制方法实质审查 发明

技术领域

[0001] 本发明涉及垃圾分类装置技术领域,具体涉及一种智能回收分类垃圾装置及其控制方法。

相关背景技术

[0002] 随着城市化进程的加速,垃圾处理成为城市管理的重要议题。人们现有的家用垃圾桶基本不具备垃圾分类的功能,这样导致人们在使用时会将可回收垃圾与不可回收垃圾相互混杂在一起,不易分离。人为的手动垃圾分类不仅占用了更多的私人时间,并且效率低,而现在的大多数现代化智能垃圾桶只能实现单分类,单分类需要将垃圾一个一个的投入才能将垃圾正确分类成功。这样不仅浪费了人的时间,而且效率也很低。
[0003] 近几年,随着社会迅速的发展,社会经济不断的提高,商品销量也逐渐增多,但是公共卫生服务人员配备不足,导致垃圾生产不及时,溢出桶外的垃圾洒落满地,容易滋生细菌,再加上炎热的天气,臭味容易迅速传播,影响公共卫生。

具体实施方式

[0039] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0040] 应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
[0041] 还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
[0042] 还应当进一步理解,本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
[0043] 如在本说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0044] 需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
[0045] 如图1所示,本发明第一实施例所提供的一种智能回收分类垃圾装置,包括外桶,在外桶内设有传送模块、图像采集模块、主控模块、转动舵机、可转动挡板、二维云台托盘和通讯模块。其中,外桶作为整个产品的载体,外桶内设有多个存放垃圾的垃圾桶,外桶的顶端上设有两个投放口,一个是单分类投放口,另一个是多分类投放口,用户根据需求的不同可以选择多分类和单分类。图像采集模块采用摄像头。主控模块采用的控制芯片为STM32F103VET6芯片,该芯片基于ARM的Cortex M3内核进行设计,有100个引脚。控制板上搭载电机驱动模块接口、六路舵机接口、扩展传感器接口、以及一路串口。主要负责与云平台间的通信、蜂鸣器报警、电机驱动、以及舵机的转动角度。两控制板通过串口进行数据的通信。二维云台采用多个MG996R舵机作为动力,拥有两个自由度,搭载托盘可进行多个垃圾的分拣。MG996R舵机一共有三根连接线,红线接5V直流电源,棕线接GND,黄线为数据控制线,接单片机的GPIO口。主控模块根据图片识别结果分析出转动舵机转动的角度,发出PWM(脉冲宽度调制)信号给转动舵机,PWM信号的占空比决定了转动舵机的转动角度。转动舵机根据转动角度驱动内部马达转动,通过减速齿轮给摆臂以动力,在此同时电位器返回当前的位置信号,判断是否已经达到设定位置。该舵机正常工作电压为4.8V~6V,旋转角度为180°,脉冲周期为20ms,脉宽0.5ms~2.5ms对应的角度‑90°~+90°。
[0046] 在进行单分类时,待识别垃圾经过单分类投放口时,图像采集模块采集待识别垃圾的图像信息,并将图像信息传输给主控模块进行识别,主控模块接收到图像信息后进行垃圾识别,得到识别结果,主控模块根据识别结果分析识别区域内的可转动挡板的转动方向和转动舵机的转动角度,可转动挡板由转动舵机控制,自动调整转动角度,使垃圾精准掉入二维云台托盘内中,再由二维云台控制托盘使垃圾掉入相应的垃圾桶中。为了防止垃圾重量过大,在挡板下方设置了承重插销。
[0047] 在进行多分类投放时,传送模块起到关键作用,传送模块主要包括多段传动齿轮嵌入的传送带,每段传送带的速度不同,通过电机驱动主动轮,从而带动传送带运转。齿轮的齿数为54齿。垃圾通过多分类投放口直接投入传送带,设有光敏电阻检测传送带是否有待识别垃圾,检测到有垃圾时启动电机,垃圾通过多段传送带传输,每段传送带的速度不同,使其在传输过程中基本分散开。传输到图像采集区域,图像采集模块采集待识别垃圾图像信息传输给主控模块,传送带随即停止,主控模块接收到图像信息并进行识别,得到识别结果,识别结果分析控制转动舵机的转动角度和可转动挡板的转动方向,向转动舵机发送控制指令,主控模块向传送模块发送停止指令,转动舵机根据控制指令控制可转动挡板的转动方向,将垃圾投放到二维云台托盘中;二维云台托盘根据识别结果转动托盘将垃圾投放到对应的垃圾桶中,在完成第一个垃圾分类投放后,主控模块启动传送模块继续传输待识别垃圾,继续重复上述过程,直至所有的垃圾被识别并分类完成。
[0048] 装置还包括通讯模块、显示模块、GPS定位模块,显示模块用于显示检测图像及垃圾分类相关的数据,GPS定位模块用于定位。主控模块将处理的数据和定位信息通过通讯模块传输到云平台。通讯模块采用NB‑IoT通讯模块,云平台采用阿里云平台,确保其与阿里云IoT平台兼容。在阿里云IoT平台上创建设备和产品,将NB‑IOT模块与设备和产品进行关联。这样可以在阿里云平台上管理和控制设备,并接收设备发送的数据。并且能够定位自身的位置,通过摄像头收集每种垃圾的数量数据,将收集到的数据通过NB‑IOT模块传输到阿里云平台。在阿里云平台上创建一个适当的数据库来存储垃圾数量数据,使用阿里云的数据可视化工具(如数据可视化大屏、Quick BI等)来创建仪表盘或报表,显示不同种类垃圾的数量确保数据可视化界面能够实时更新数据。显示模块采用HDM显示屏是指支持HDMI接口的显示设备,它可以接收HDMI信号并将其显示为高清图像和声音。HDMI显示屏通常具有高分辨率、广色域和高画质的特点。采用了Python语言编写的页面,可以将垃圾的数量、种类、分类是否成功、实时监测画面与垃圾宣传片实时的显示在屏幕上。
[0049] 在本发明另一实施例中,装置还包括压缩模块,压缩模块用于对可回收垃圾进行压缩,压缩模块包括伸缩电机、压缩隔板和带光耦隔离继电器模块,在转动舵机将垃圾投放到可回收垃圾桶中,伸缩电机在带光耦隔离继电器模块的控制下推动压缩隔板压缩可回收垃圾。在本实施例中,采用XC759电动推杆直流12V往复伸缩电机,采用多路带光耦隔离继电器模块驱动伸缩电机,带光耦隔离继电器模块的工作电压为12V,通过跳线设置高电平或低电平触发,将继电器和贴片光耦结合在一起,实现低电压电路和高电压电路之间的隔离。低电压电路中的信号通过光耦输入端的LED发射光线,然后光线通过隔离材料传输到输出端的光敏二极管上,从而产生一个与输入信号相对应的电信号,控制继电器的开关状态。继电器的触点可以在高电压电路中进行开关操作,而低电压电路和高电压电路之间没有直接的电气连接,实现了电气隔离和保护低电压电路。电动机的功率,应根据生产机械所需要的功率来选择,尽量使电动机在额定负载下运行。
[0050] 在本发明另一实施例中,装置还包括满载检测模块,满载检测模块用于检测各个垃圾桶容量是否达到设定的垃圾容量阈值,并将检测信息发送给主控模块,主控模块在接收到垃圾桶容量达到设定的垃圾桶容量阈值的信号时,向显示模块发送显示相应的垃圾桶满载的信息,向云平台发送满载的信息。具体地,满载检测模块采用激光传感器模块,在每个垃圾桶内部,距离其底部75%高度的位置上,相对两侧分别安装了激光头传感器模块KY‑008。这种小型激光模块适用于5伏直流供电,能够发射点状激光。为了接收激光信号,我们在垃圾桶的另一侧对应位置安装了光敏电阻传感器模块,同样采用5伏直流供电。该模块的DO端输出为TTL开关信号。在正常情况下,即垃圾量未达到垃圾桶容量的75%时,DO端输出低电平。然而,一旦垃圾量超过75%,垃圾便会遮挡住激光,导致光敏电阻传感器无法接收到足够的光线以达到预设的阈值,此时DO端将输出高电平。为了实时监控垃圾桶的状态,我们将四个光敏电阻的DO端分别连接到STM32VET6芯片的通用输入/输出口,并设置这些端口为输入模式。这样,就能够实时检测每个DO端口的TTL数字信号状态。
[0051] 在本发明的另一实施例中,智能回收分类垃圾装置设置了太阳能供电模块,用于将太阳能转换为电能后为智能回收分类垃圾装置供电。太阳能供电模块能够在晴天时吸收太阳能充电,并在夜晚或阴天时通过内置的储能系统自行供电,从而避免了人工发电的高能源消耗。太阳能供电模块具备以下几个功能:储能功能:智能回收分类垃圾装置在运作时不依赖外部电源,而是利用太阳能供电,因此需要一个大容量的储能设备,以确保在长时间无法充电的情况下仍能正常运行。供电功能:利用太阳能电池板进行充电和储能,使用时无需外接电源,并且在长时间的阴雨天气中也能持续工作,从而提升装置的节能效果和工作效率。
[0052] 在本发明另一实施例中,主控模块包括模型构建单元,模型构建单元采用YOLOv8的目标检测算法构建垃圾分类识别,模型垃圾分类识别模型包括主干特征网络、特征提取网络和预测网络,所述主干特征网络经过卷积层提取每种垃圾的初步特征,特征提取网络用于从初步特征中提取有效特征,所述预测网络用于根据有效特征进行预测输出分类结果。还包括图像识别单元,所述图像识别单元采用垃圾分类识别模型对采集图像信息进行垃圾分类识别,识别出不同种类的垃圾。主控模块还包括识别结果处理单元,所述识别结果处理单元采用滑动窗口机制和指数滑动平均相结合对识别结果进行处理,得到最终的分类结果。
[0053] 具体地,YOLOv8是一种基于深度学习的目标检测算法,可以用于垃圾分类任务,共有4个部分分别为Backbone、Neck、Head、Loss部分。先采用了深度学习的卷积神经网络(CNN)架构‑‑‑Darknet‑53,其核心是用于特征提取网络作为Backbone,Neck负责进一步处理和融合Backbone提取的特征,以便更好地进行多尺度物体检测。常见的Neck结构包括FPN(Feature Pyramid Network)等。Head负责最终的类别和边界框预测。Loss用于计算类别、边界框和掩码的损失,基于YOLOv8的目标检测算法流程图如图2所示。
[0054] 将一张长宽高为640×640×3的图像输入到网络中,经过Conv(卷积层)提取每一种垃圾的图像特征,C2f(Cross Stage Partial with Fusion)将特征分成两部分,然后分别进行卷积操作,再将结果融合,以增强特征表达能力。最后SPPF(Spatial Pyramid Pooling Fast)空间金字塔池化层,在多个尺度上对特征进行池化操作,从而捕捉更大范围的图像信息。再经过FPN变换,他是自顶小尺寸,卷积次数多得到的结果,语义信息丰富向下大尺寸,卷积次数少得到的结果,将高层的强语义特征传递下来,对整个金字塔进行增强,增强了语义信息。
[0055] 将经过FPN后的特征图分为两部分,其中一部分直接传递到后续层,另一部分经过复杂的卷积操作后得到处理后的特征图,再将处理后的特征图与直接传递部分进行拼接得到拼接后的特征图,对拼接后的特征图进行进一步卷积操作的不同尺度的特征图,再将不同尺度的特征图进行上采样(Upsample)或下采样(Downsample),然后融合(例如通过加法或拼接操作)。最终生成多尺度融合后的特征图,用于Head部分的预测。
[0056] Head会接收Neck的部分特征图像,首先分叉成两个分支,每个分分别经过Conv提取特征,Batch Normalization标准化卷积层的输出,稳定训练过程,加快收敛速度,再引入非线性Activation(激活函数)分叉后的两个特征图会分别经过一个Conv2d卷积层,这一层的作用是将高维特征映射到最终的输出通道,准备进行分类和回归预测。
[0057] 先计算Classification Loss(分类损失)通过一个全连接层或1x1卷积层输出类别预测,然后使用Cross‑Entropy Loss(交叉熵损失函数)计算预测类别与真实类别之间的差异。最后再计算Bbox Loss(边界框回归损失)通过一个全连接层或1x1卷积)输出边界框预测,然后使用回归损失函数如Smooth L1 Loss或GIoU Loss计算预测边界框与真实边界框之间的差异。然后输出预测的图片。
[0058] 数据收集和标注:
[0059] 收集大量包含不同类别垃圾的图像数据,并进行标注,将每个垃圾物体框出来,并标注其类别。数据集来源于现实生活中通过USB摄像头对每一种垃圾进行图像采集一共1240张,将采集到的图片分成四大类,分别放入训练集和验证集中。可回收垃圾有200张,有害垃圾有271张,厨余垃圾156张,其他垃圾365张具体分类及每种垃圾数量见表1。所有的数据集中训练样本占80%,即992张,验证集样本占20%,即248张。
[0060] 表1
[0061]
[0062] 模型训练与部署:
[0063] 使用收集和标注的数据,将其分别输入到YOLOv8与YOLOv5模型进行训练。训练过程中,模型会自动学习识别不同类别的垃圾物体,并生成相应的检测结果。本实施例将训练好的模型部署在国产英伟达的Jetson nano上。将部署在Jetson nano的YOLOv8与YOLOv5进行对比,其中Jetson nano的YOLOv8模型转换成TensorRT上,再使用官方适配的DeepStream框架进行搭建。
[0064] 环境配置:
[0065] 本实施例实验在Windows10操作系统下进行,GPU为GeForce RTX 3060,CPU为R7‑5800,内存为16GB,CUDA版本为12.0,使用开发环境软件为Pycharm,语言为Python3.10,深度学习框架为Facebook开源的Pytorch。实验的迭代参数epochs设为100,批样本数量batch size为16,采用随机梯度下降法,权重衰减weight decay为0.0005。
[0066] Precision‑Confidence:
[0067] Precision‑Confidence  Curve是一种用来展示模型在不同置信度阈值(Confidence Thresholds)下精度变化情况的曲线。置信度表示模型对某个预测结果的信心程度,通常在0到1之间。通过调整置信度阈值,可以观察模型在不同置信度水平下的精度(Precision)表现,计算公式如下:
[0068]
[0069] 其中,TP(True Positives):真正例,即被正确预测为正类的样本数,FP(False Positives):假正例,即被错误预测为正类的样本数。
[0070] YOLOv8训练结果:
[0071] 从图3中可以看出,所有类别的精度随着置信度的增加而增加。这符合预期,因为更高的置信度意味着模型对预测结果更有信心,从而减少了错误检测的概率。
[0072] 蓝色粗线代表所有类别的总体表现,可以看到在置信度为0.917时,所有类别的平均精度达到了1.00。这表明在此置信度阈值下,模型的预测结果非常可靠Battery、Pills、Cans等类别:这些类别的曲线在置信度较低时精度已经接近1.0,说明这些类别的模型预测非常准确。
[0073] Waterbox、Potato、Bairob等类别:这些类别的曲线在置信度较低时精度稍微低一些,但随着置信度的增加,精度迅速提升到接近1.0。
[0074] Cipian、Redrob、Stone、Brick等类别:这些类别的曲线在置信度较低时精度较低,但随着置信度的增加,精度也逐步提升,最终接近1.0。
[0075] 在置信度低于0.2时,部分类别的精度显著下降,说明在低置信度下,模型可能会产生较多错误检测。
[0076] 在置信度高于0.8时,所有类别的精度都趋近于1.0,表明此时模型对目标检测的置信度较高,预测结果非常可靠。
[0077] YOLOv5训练结果:
[0078] 从图4可以看出,在置信度为0.929时,所有类别的平均精度达到了1.00。这表明在此置信度阈值下,模型的预测结果非常可靠。
[0079] Battery、Pills、Cans等类别:这些类别的曲线在置信度较低时精度已经接近1.0,说明这些类别的模型预测非常准确。
[0080] Waterbox、Potato、Bairob等类别:这些类别的曲线在置信度较低时精度稍微低一些,但随着置信度的增加,精度迅速提升到接近1.0。
[0081] Redrob、Cipian、Stone、Brick等类别:这些类别的曲线在置信度较低时精度较低,但随着置信度的增加,精度也逐步提升,最终接近1.0。
[0082] Recall‑Confidence
[0083] Recall‑Confidence Curve是一种用来展示模型在不同置信度阈值(Confidence Thresholds)下召回率变化情况的曲线。置信度表示模型对某个预测结果的信心程度,通常在0到1之间。通过调整置信度阈值,可以观察模型在不同置信度水平下的召回率(recall)表现。计算公式如下
[0084]
[0085] 其中,TP(True Positives):真正例,即被正确预测为正类的样本数。FN(False Negatives):假负例,即实际为正类但被错误预测为负类的样本数。
[0086] YOLOv8训练结果:
[0087] 从图5可以看出,图中的粗蓝线代表所有类别综合的表现,即“all classes”。这条线显示,随着置信度从0增加到1,召回率开始从1逐渐下降,尤其是在置信度接近1.0时,下降幅度明显加大。这表明模型在高置信度阈值下减少了误报(假阳性),但也因此漏掉了一部分真实的目标(真阳性)。
[0088] 各种颜色的细线条代表不同类别的召回率‑置信度曲线,如“battery”、“pills”、“cans”等。在较低置信度值(0到0.8)范围内,所有类别的召回率都接近1.0,表明模型在这一范围内能够检测到绝大部分目标对象。在高置信度值(0.8到1.0)范围内,各类别的召回率曲线明显分化,某些类别(如“battery”)的召回率下降较缓,而其他类别(如“brick”)的召回率则下降较快,显示出模型在这些类别上的检测不确定性。
[0089] YOLOv5训练结果:
[0090] 从图6可以看出,battery、pills、waterbox等类别:这些类别的曲线在较高的置信度阈值下仍保持较高的召回率,说明模型对这些类别的检测能力较强。
[0091] cans、potato、redrob等类别:这些类别的曲线在较低的置信度阈值下迅速下降,说明模型对这些类别的检测能力相对较弱,容易漏检。
[0092] 一些类别(如bairob、stone、brick等)的曲线比较陡峭,表明这些类别在高置信度阈值下的召回率下降较快,反映了这些类别的检测难度较大。
[0093] 其他类别(如battery、pills等)的曲线相对平缓,表明这些类别在更广泛的置信度阈值范围内保持了较高的召回率,模型对这些类别的检测效果较好。
[0094] Loss曲线是深度学习训练过程中用来评估模型表现的一个重要工具。它展示了训练和验证过程中损失函数值的变化趋势Loss值越低,模型对测试集中目标的检测准确度越高,分别采用了以下两种损失函数。
[0095] (1)分类损失:
[0096] VFL(Varifocal Loss)通过结合分类损失和焦点损失(Focal Loss)的思想,引入了焦点损失,通过调整样本的权重,使得难以分类的样本(即那些接近决策边界的样本)在损失函数中占据更大的权重,从而使模型更关注这些难样本VFL进一步引入了样本置信度分布的加权机制,对每个样本的损失进行加权,使得置信度高的样本在损失计算中占据更大的比重,计算公式如下
[0097]
[0098] (2)目标识别损失:
[0099] DFL(Distribution Focal Loss)是一种专门为目标检测任务设计的损失函数,通过分布加权,DFL能够根据样本的难度动态调整损失值。这意味着难以分类的样本会被赋予更高的权重,从而促使模型更加关注这些难样本。Focal Loss的引入帮助模型处理正负样本不平衡的问题。Focal Loss通过降低简单样本的权重,使得模型更加关注难以分类的样本,示意图如图7所示,计算公式如下:
[0100] DFL(Si,Si+1)=‑((yi+1‑y)log(Si)+(y‑yi)log(Si+1))
[0101] 图中将框的位置建模成一个General distribution,让网络快速的聚焦于和目标位置距离近的位置的分布。
[0102] YOLOv5与YOLOv8 Loss曲线图如图8、图9所示。
[0103] 1、损失函数:
[0104] 相同点:
[0105] (1)Train/Box Loss:
[0106] YOLOv5边界框回归的损失。下降趋势明显,从最初的0.08左右下降到0.02以下,而YOLOv8从1.4下降到0.4,下降幅度较大,表明模型在训练过程中逐步提高了对边界框的预测精度。
[0107] (2)Train/Cls Loss:
[0108] YOLOv5分类的损失从0.06左右下降到接近0,而YOLOv8从3.5下降到1.0左右,说明在分类损失方面有明显的降低。模型在目标分类上的性能逐渐改善。
[0109] (3)Val/Box Loss、Val/Obj Loss、Val/Cls Loss:
[0110] YOLOv5验证集上的损失也显示出类似的下降趋势,而YOLOv8损失下降趋势与训练集一致,但波动较大,可能是由于验证集的复杂性或数据量不足导致
[0111] 不同点:
[0112] (4)Train/Obj Loss:
[0113] YOLOv5目标置信度的损失。从0.025左右下降到接近0.005,说明模型对目标的置信度预测变得更加准确。
[0114] (5)Train/DFL Loss(Distribution Focal Loss):
[0115] YOLOv8从1.6下降到1.0,表明在目标分布上的损失也在减少。
[0116] 2、精度和召回率
[0117] (1)Precision:
[0118] YOLOv5的精度逐步上升并趋于稳定,最终接近1.0,表高。而YOLOv8的精度从初始的0.75左右上升并趋于稳定,最终接近1.0,显示出很高的识别准确性。
[0119] (2)Recall:
[0120] YOLOv5召回率逐步上升并趋于稳定,最终接近1.0,而YOLOv8的召回率也逐步上升,最终接近1.0,表明模型能够识别出大多数目标。
[0121] 3、平均精度(mAP)
[0122] MAP(Mean Average Precision)是目标检测中常用的评估指标,用于衡量模型在一组测试数据上的性能。使用插值方法计算精度‑召回率曲线下的面积。常用的方法是11点插值法或直接积分方法。11点插值法在0到1的召回率区间内,每隔0.1取一个点,计算该点的最大精度值将所有类别的AP值相加,计算公式如下:
[0123]
[0124] 利用AP的总和除以类别总数N得到平均精度,计算公式如下:
[0125]
[0126] YOLOv8训练结果如表2所示,YOLOv5训练结果如表3所示:
[0127] 表2
[0128]
[0129] 表3
[0130]Class Images Istance Box Right mAP50
battery 247 31 0.995 1 0.995
pills 247 31 0.993 0.968 0.97
cans 247 30 0.968 0.995 0.982
waterbox 247 20 1 0.954 0.995
potato 247 10 0.978 1 0.995
bairob 247 13 0.986 1 0.995
redrob 247 16 0.934 1 0.991
cipian 247 14 0.982 1 0.995
stone 247 72 0.998 1 0.995
brick 247 10 0.973 1 0.995
all 247 247 0.986 0.989 0.99
[0131] (1)mAP@0.5:
[0132] YOLOv5在IoU阈值为0.5时的平均精度,逐步上升并趋于稳定,最终接近1.0,而YOLOv8在IoU阈值为0.5时的平均精度,逐步上升并趋于稳定,最终接近1.0,显示出很高的检测精度。
[0133] (2)mAP@0.5:0.95:
[0134] YOLOv5在不同IoU阈值下的平均精度,从0.4左右上升到0.6以上,而YOLOv8从0.4左右上升到0.65左右,表明模型在多种IoU条件下的检测性能较好。
[0135] 综合分析:
[0136] (1)损失函数:
[0137] YOLOv8的初始损失值明显高于YOLOv5,但下降幅度也更大,表明YOLOv8在训练初期的误差较大,但经过训练后能够显著改善。验证集上的损失波动较大,可能是由于数据复杂性或模型在验证集上的泛化能力需要进一步优化。
[0138] (2)精度和召回率:
[0139] 两者在精度和召回率方面都表现出色,最终都接近1.0,显示出很高的识别准确性和全面性。
[0140] (3)平均精度:
[0141] YOLOv8在mAP@0.5和mAP@0.5:0.95上的表现略优于YOLOv5,特别是在不同垃圾情况下。
[0142] 由于计算机视觉是通过摄像头作为传感器采集图片,不同的光线强度可能对同一种物品识别效果有所差异,而且在识别过程中,光线和垃圾掉落的瞬间会造成识别错误,但是在垃圾趋于稳定的状态,识别率才是最高的。因此本实施例引用了滑动窗口机制与EMA(Exponential Moving Average)相结合,EMA用于减少时间序列数据中的波动,揭示数据的趋势。EMA对最近的数据点赋予更高的权重,因此能够更快地响应最新数据的变化。在数据序列的起始位置初始化一个固定大小的窗口,窗口内的数据点随着时间向前滑动,在窗口上进行指数加权平均,输出的值则认为是真值,计算公式为:
[0143] EMAt=α·xt+(1‑α)·EMAt‑1
[0144] 其中,EMAt是t时刻的EMA值,xt是时刻t的数据值,α是平滑系数,取值范围为0<α≤1,EMAt‑1是时刻t‑1的EMA值。
[0145] 综上,本文将测试集由两种不同的识别算法、不同光照条件下、是否有EMA组成。这个八组测试集包含了每一种垃圾的图像共1240张如下表所示,分别在有数据增强的模型和无数据增强的模型进行测试,测试结果如表4、表5所示。
[0146] 表4
[0147]
[0148] 表5
[0149]
[0150] 由表4和表5可知,YOLOv8在无论是否使用EMA的情况下,均显示出比YOLOv5更高的平均精度(无数据增强:89.92vs 87.59;有数据增强:89.96vs 88.17)。这表明YOLOv8在模型优化和性能提升方面相较YOLOv5有显著改进。使用EMA的测试数据集普遍表现出更高的精度,尤其是在YOLOv5中,这一现象尤为明显(例如测试数据集1和3相比2和4)。在YOLOv8中,EMA的影响相对较小,但仍能观察到一定程度的性能提升。数据增强显著提升了测试结果的稳定性和精度。例如,在YOLOv8的测试数据集5中,使用数据增强的平均值为90.43,而未使用数据增强的平均值为89.97。这表明数据增强在提高模型泛化能力和鲁棒性方面具有重要作用。自然光和灯光条件对测试结果的影响并不显著,但在特定情况下(如测试数据集2和4),灯光条件下的精度略有提升。这可能与数据集特性和模型对不同光照条件的适应能力有关。
[0151] 综上所述YOLOv8在各方面均优于YOLOv5,EMA和数据增强均对提升模型性能有显著作用。不同照明条件下的结果表明模型具有较好的适应能力。未来的改进方向可以集中在进一步优化模型结构和数据增强策略,以获得更高的精度和稳定性。
[0152] 将训练好的模型部署在Jetson nano上,启动相应的程序,此时屏幕会显示PYQT5的页面与摄像头所拍摄的画面,本实施例分别将10种垃圾分别投入进行测试,9种垃圾包含水瓶、易拉罐、电池、药片、白萝卜、红萝卜、土豆、石头、瓷片。同时还会将这9种垃圾分成可回收垃圾、有害垃圾、其他垃圾、厨余垃圾这四大类,最终测试结果如图10所示。
[0153] 本发明实施例提供的一种智能回收分类垃圾装置,不仅能实现垃圾自动单分类功能,还能实现多分类功能,能将所投放的垃圾的数量,种类实时的显示在垃圾桶的屏幕上,还能通过NB‑IOT上传到云平台,进行后端大数据的分析此外,桶内加装垃圾满载模块和压缩模块,当投放的是可回收垃圾压缩装置就会自动将垃圾进行压缩。满载检测模块能够检测垃圾桶是否满载,当满载以后会把垃圾满载信号与位置信息自动上传云平台,反馈给管理人员相关信息。设置太阳能供电模块,能够在晴天时吸收太阳能充电,并在夜晚或阴天时通过内置的储能系统自行供电,从而避免了人工发电的高能源消耗。采用YOLOv8目标检测算法,能准确对不同种类的垃圾进行分类,并且对识别结增加EMA机制增强数据集,就算第一次识别错误,也能通过该算法自动校正,提升了模型性能,使得分类结果具有更高的精度和稳定性。
[0154] 在上述的第一实施例中,提供了一种智能回收分类垃圾装置,与之相对应的,本申请还提供一种智能回收分类垃圾装置的控制方法。请参考图11,其为本发明另一实施例提供的一种智能回收分类垃圾装置的控制方法的流程图。由于方法实施例基本相似于装置实施例,所以描述得比较简单,相关之处参见装置实施例的部分说明即可。下述描述的方法实施例仅仅是示意性的。
[0155] 如图11所示,本发明另一实施例提供的一种智能回收分类垃圾装置的控制方法,智能回收分类垃圾装置采用上述实施例描述的装置,控制方法包括以下步骤:
[0156] 传送模块在检测到传送带有垃圾时传送待识别垃圾,将垃圾在传输过程中分散开来,在图像采集区域停止工作;
[0157] 图像采集模块采集待识别垃圾的图像信息,并将图像信息传输给主控模块;
[0158] 主控模块接收到图像信息后进行垃圾识别,得到识别结果,并向传送模块发送停止指令,根据识别结果分析控制转动舵机的转动角度和可转动挡板的转动方向,向转动舵机发送控制指令;
[0159] 转动舵机根据控制指令控制可转动挡板的转动方向,将垃圾投放到二维云台托盘或可回收垃圾桶中;
[0160] 二维云台托盘根据识别结果转动托盘将垃圾投放到对应的垃圾桶中;
[0161] 主控模块在二维云台托盘投放完成后启动传送模块继续传输待识别垃圾。
[0162] 本发明实施例提供的智能回收分类垃圾装置的控制方法智能回收分类垃圾装置出于相同的发明构思,具有相同的有益效果,在此不再赘述。
[0163] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

当前第1页 第1页 第2页 第3页