1.本发明涉及人工智能技术领域,尤其涉及一种基于改进yolov5算法的移动消杀机器人目标检测方法、系统、设备及介质。
背景技术:2.伴随人工智能的兴起和人机交互技术的逐渐成熟,服务类机器人发展迅猛,防疫消毒机器人是服务机器人的一种,其涉及到自主导航、环境建图、目标识别和紫外线、酒精消毒等技术,目前,越来越多的国家对防疫消毒机器人进行了深入研究,尤其在突发疫情期间,国内外在此行业投入大量资金和人力进行研发,旨在提升防疫消毒机器人智能化程度,提升消毒效率及质量,降低工作强度,将消毒过程中产生交叉感染的风险降到最低。
3.防疫消毒机器人主要用于疫情防护,需要集成探测装置和消毒装置,探测装置用于探测外界环境,反馈信息,消毒装置用于定点、定量、定时消毒工作,实现智能化和柔性化的目标。目前,地铁公司、部分城际铁路以及铁路公司作为人流高度密集的城市大运量公共交通工具,车厢常态化的消毒杀菌已成为运营管理工作的一部分,然而,各地铁公司基本都是采用人工方式进行车厢消杀,这种方式费时费力,效率低,且存在消杀效果难以监控的问题,同时消杀人员还有被感染的风险隐患。
4.虽然服务机器人在医疗、配送、巡检、家用等领域走上了防疫一线,但是现有消杀机器人普遍只具备喷雾消杀的功能,只能对空间进行无识别无差别化的消杀,而在实际环境中,对于公共场所中多人触碰的物体,比如门把手、电梯扶手、电梯按钮、台面、桌面、地铁扶手、地铁拉环等存在着病毒集中的风险,是传染环节中非常关键的一环,普通的空间喷雾消杀往往无法覆盖这些物体,使消杀不彻底,给病毒传播留下极大的隐患,因此,如何在公共场所中对易感关键部位消杀是消杀机器人的痛点所在,只有具备精准消杀的机器人才能及时有效的避免可能的传播源的扩散。
5.目前大多采用yolo v5卷积神经网络实现图像识别,但是现有的yolo v5需要将整个图像中物体特征均匀的划分成大小为7x7的卷积神经网格,每个网格作为锚框分别产生多个输入检测框,然后将输入特征映射到卷积神经网络中,得到相应的特征区域图后,将特征数据送回卷积网络,然后采用全连接层,将每个特征区域的输入特征值分别映射得到相同大小的物体特征区域图,对每个输入检测框的特征类别和每个检测框的特征值进行回归,该方法模型较大,检测速度较慢,严重影响列车检修和消杀时间。
技术实现要素:6.本发明提供了一种移动消杀机器人目标检测方法、系统、设备及介质,解决的技术问题是,传统的车厢消杀方式人工作业效率低,且消杀机器人只对空气消毒作业,存在物表消杀不彻底、消杀效果不达标的缺陷。
7.为解决以上技术问题,本发明提供了一种移动消杀机器人目标检测方法、系统、设备及介质。
8.第一方面,本发明提供了一种移动消杀机器人目标检测方法,所述方法包括以下步骤:
9.采集车厢目标区域的目标消杀物图像,得到原始数据集;
10.对所述原始数据集进行预处理,并将经过预处理后的原始数据集分为训练集、测试集和验证集;
11.将所述训练集和所述验证集输入构建的改进yolov5模型中进行训练,得到训练好的改进yolov5模型;
12.利用训练好的改进yolov5模型对所述测试集进行检测,得到目标检测结果。
13.在进一步的实施方案中,所述对所述原始数据集进行预处理的步骤包括:
14.对所述原始数据集进行数据扩增和数据增强处理,得到预处理后的原始数据集;其中,数据增强处理包括随机翻转、局部裁剪、长宽缩放、限制对比度、自适应直方图均衡化、中值滤波、添加高斯噪声以及添加伽马噪声。
15.在进一步的实施方案中,所述改进yolov5模型的网络结构包括:backbone主干网络、neck颈部网络和head输出端;
16.在所述backbone主干网络中的所有c3模块后引入cbam注意力机制模块。
17.在进一步的实施方案中,所述cbam注意力机制模块包括依次连接的通道注意力模块和空间注意力模块;
18.所述通道注意力模块用于对输入的特征图分别进行全局最大池化、全局平均池化和全局最小池化处理,并在通过多层感知器进行特征提取后,利用加和操作进行合并,得到合并结果,最后将合并结果通过sigmoid激活函数进行归一化,得到通道注意力输出结果;
19.所述空间注意力模块用于将所述通道注意力输出结果沿着通道轴方向分别进行最大池化、平均池化和最小池化处理,并通过拼接操作进行通道拼接,再经过一层卷积层和sigmoid激活函数,得到空间特征图。
20.在进一步的实施方案中,所述改进yolov5模型采用lossα-iou损失函数替换原始的giou损失函数。
21.在进一步的实施方案中,在所述改进yolov5模型的训练阶段,设置训练的批次大小为16,学习率初始设定为0.001,训练的总迭代次数为300。
22.第二方面,本发明提供了一种移动消杀机器人目标检测系统,所述系统包括:
23.数据采集模块,用于采集车厢目标区域的目标消杀物图像,得到原始数据集;
24.数据处理模块,用于对所述原始数据集进行预处理,并将经过预处理后的原始数据集分为训练集、测试集和验证集;
25.模型训练模块,用于将所述训练集和所述验证集输入构建的改进yolov5模型中进行训练,得到训练好的改进yolov5模型;
26.目标检测模块,用于利用训练好的改进yolov5模型对所述测试集进行检测,得到目标检测结果。
27.在进一步的实施方案中,所述改进yolov5模型的网络结构包括:backbone主干网络、neck颈部网络和head输出端;其中,在所述backbone主干网络中的所有c3模块后引入cbam注意力机制模块;
28.所述改进yolov5模型采用lossα-iou损失函数替换原始的giou损失函数。
29.第三方面,本发明还提供了一种计算机设备,包括处理器和存储器,所述处理器与所述存储器相连,所述存储器用于存储计算机程序,所述处理器用于执行所述存储器中存储的计算机程序,以使得所述计算机设备执行实现上述方法的步骤。
30.第四方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
31.本发明提供了一种移动消杀机器人目标检测方法、系统、设备及介质,所述方法通过在原有yolov5算法的基础上,融入cbam注意力机制模块进行改进,以通过最大池化、平均池化和最小池化提取目标的潜在特征,并采用lossα-iou损失函数代替giou损失函数作为边界框回归损失函数,不仅增强了网络提取图像特征的能力,而且提高了边界框定位精度,从而实现快速精确识别地铁列车车厢内部空间及吊环把手、门扶手等物体。与现有技术相比,该方法对yolov5算法进行改进,在保持原有yolov5算法速度和精度的基础上,在小目标和遮挡目标检测上有较大改进,可适用于其他目标检测领域。
附图说明
32.图1是本发明实施例提供的一种移动消杀机器人目标检测方法流程示意图;
33.图2是本发明实施例提供的改进yolov5模型的网络结构示意图;
34.图3是本发明实施例提供的通道注意力模块结构示意图;
35.图4是本发明实施例提供的空间注意力模块结构示意图;
36.图5是本发明实施例提供的原有损失函数在预测框位于目标框内部的示意图;
37.图6是本发明实施例提供的网络模型检测能力对比示意图;
38.图7是本发明实施例提供的一种移动消杀机器人目标检测系统框图;
39.图8是本发明实施例提供的计算机设备的结构示意图。
具体实施方式
40.下面结合附图具体阐明本发明的实施方式,实施例的给出仅仅是为了说明目的,并不能理解为对本发明的限定,包括附图仅供参考和说明使用,不构成对本发明专利保护范围的限制,因为在不脱离本发明精神和范围基础上,可以对本发明进行许多改变。
41.参考图1,本发明实施例提供了一种移动消杀机器人目标检测方法,如图1所示,该方法包括以下步骤:
42.s1.采集车厢目标区域的目标消杀物图像,得到原始数据集。
43.为了快速准确的识别地铁列车车厢中病毒集中物体,本实施例利用消杀机器人上的摄像头采集车厢目标区域的目标消杀物图像,得到目标消杀物图像的原始数据集,其中,目标区域的目标消杀物包括车厢内的座椅、立柱、扶手、吊环等乘客接触区域或者物体。
44.s2.对所述原始数据集进行预处理,并将经过预处理后的原始数据集分为训练集、测试集和验证集。
45.在一个实施例中,所述对所述原始数据集进行预处理的步骤包括:
46.对所述原始数据集进行数据扩增和数据增强处理,得到预处理后的原始数据集;其中,数据增强处理包括随机翻转、局部裁剪、长宽缩放、限制对比度、自适应直方图均衡化、中值滤波、添加高斯噪声以及添加伽马噪声。
47.为了防止训练数据集过少发生过拟合现象,本实施例利用python工具对原始数据集进行数据扩增,并通过数据增强方法对采集到的原始数据集进行增强处理,有效提升了网络模型训练集规模和目标检测速度,本实施例采用的目标检测方法可以实现平均识别速度6ms,平均识别精度达95%。
48.同时本实施例还通过labelimg数据标注工具对所述预处理后的原始数据集中的每张图片进行标注,并将经过预处理后的原始数据集按照70%、20%、10%的比例划分为训练集、测试集和验证集。
49.s3.将所述训练集和所述验证集输入构建的改进yolov5模型中进行训练,得到训练好的改进yolov5模型。
50.在传统yolov5模型中,backbone部分的c3模块主要用于提取图像特征,该c3模块包含的位置信息、细节信息较多,但语义信息较少;而head部分的c3模块主要进行纹理特征提取,该c3模块包含的位置信息、细节信息较少,而语义信息较多;小目标特征信息在经过多个c3模块处理后,位置信息粗糙,特征信息易丢失,从而引起网络模型对小目标的误检和漏检,因此,本实施例通过在yolov5模型中融入cbam(convolutional block attention module,卷积注意力模块)注意力机制模块,增强网络模型提取图像特征的能力,并引入lossα-iou损失函数代替giou损失函数作为边界框回归损失函数,提高边界框定位精度,从而实现快速、精确地识别地铁列车车厢内部空间及吊环把手、门扶手等物体。
51.在本实施例中,所述改进yolov5模型的网络结构包括:backbone主干网络、neck颈部网络和head输出端;其中,所述backbone主干网络用于从输入的图像中提取不同层次的特征;所述neck颈部网络用于对backbone主干网络中不同网络层的特征进行融合,进一步提升检测能力;所述head输出端用于进行最终的预测输出。
52.为了提高模型对车厢小目标物体的检测精度,如图2所示,本实施例在所述backbone主干网络中的所有c3模块后引入cbam注意力机制模块,以通过cbam注意力机制模块加强对小目标物体在网络训练过程中的点特征、线特征等特征信息的学习,因此,在本实施例中,backbone主干网络的网络结构包括依次连接的focus层、第一conv层、第一c3层、第一cbam注意力机制模块、第二conv层、第二c3层、第二cbam注意力机制模块、第三conv层、第三c3层、第三cbam注意力机制模块、第四conv层、spp层、第四c3层、第四cbam注意力机制模块和第五conv层;
53.所述cbam注意力机制模块包括依次连接的通道注意力模块和空间注意力模块;如图3所示,通道注意力模块用于对输入的特征图分别进行全局最大池化、全局平均池化和全局最小池化处理,将尺寸为c
×h×
w的特征图变成c
×1×
1,并在通过多层感知器进行特征提取后,利用加和操作进行合并,得到合并结果,最后将合并结果通过sigmoid激活函数进行归一化,得到通道注意力输出结果,其中,多层感知器为权值参数共享的多层感知器,所述多层感知器包括全局池化、全连接层、relu函数激活层、全连接层和sigmiod函数激活层。
54.如图4所示,所述空间注意力模块用于将通道注意力输出结果沿着通道轴方向分别进行最大池化、平均池化和最小池化处理,并通过拼接concat操作做通道拼接,再经过一层卷积层和sigmoid激活函数,得到空间特征图。
55.本实施例采用的cbam注意力机制模块能够同时关注空间和通道信息,其中,在通道注意力模块上分别经过最大池化maxpool、平均池化avgpool和最小池化minpool将尺寸
为c
×h×
w的特征图变成c
×1×
1,经过同一个mlp(多层感知器)网络结构转换,压缩通道数,再通过加和操作进行合并结果,并由sigmoid函数进行归一化,得到通道注意力输出结果,使得提取到的高层特征更全面更丰富;同时,本实施例将通道注意力输出结果输入空间注意力模块,然后沿着通道轴方向进行最大池化、平均池化、最小池化操作,以分别对通道注意力输出结果进行压缩,得到了三个二维特征图,并通过concat操作将三个二维特征图做通道拼接,只压缩通道维度而不压缩空间维度,从而得到空间特征图。
56.本实施例通过将cbam注意力机制模块融入改进yolov5模型,cbam注意力机制模块通过通道注意力模块和空间注意力模块可有效增大小目标在整张特征图中的权重,促使小目标信息更易被网络学习,能够重点关注目标的位置信息,增强了骨干网络对特征提取的能力,关注到许多易被淹没的语义信息,表现在检测精度上的提升较为明显。
57.在一个实施例中,所述改进yolov5模型采用lossα-iou损失函数替换原始的giou损失函数。
58.传统的yolov5模型是采用lossgiou作为检测框的损失函数,但是,如图5所示,虚线矩形框为目标框,实线矩形框为预测框,lossgiou损失函数在预测框在目标框内部时,该状态下giou值是相同的,但其预测框位置是不同的,无法区分相对位置关系,导致无法精确定位到效果最佳的预测框,使得定位不准确,丢失优化和收敛方向,影响检测精度。
59.为了解决原有的损失函数giou存在的问题,本实施例采用lossα-iou损失函数替换原始的giou损失函数,本实施例采用的lossα-iou损失函数不仅可以保留原损失函数全部性质,同时可以更关注高iou目标,降低了预测框的回归的损失,并为优化所有层次的目标创造了更多空间,实现不同水平的检测框回归精度。
60.本实施例在所述改进yolov5模型的训练阶段,设置训练的批次大小为16,学习率初始设定为0.001,训练的总迭代次数为300,且通过训练可知,当迭代次数接近100次时,改进yolov5模型开始逐渐收敛,相较于传统yolov5模型,本实施例提供的改进yolov5模型收敛更加快速,精度更高。
61.需要说明的是,对于yolov5模型,相比于将cbam注意力机制模块融入到head输出端中的所有c3模块之后,本实施例将cbam模块融合于backbone主干网络的检测效果更好,yolov5模型中提取特征的关键网络在backbone部分,在backbone主干网络中隐含着易被网络忽视的小目标特征信息,将cbam注意力机制模块融入backbone主干网络,可以对backbone主干网络特征信息进行注意力重构,突出重要信息;而在网络更深的head部分,小目标的特征信息被淹没,语义信息较为粗糙,cbam注意力机制模块难以区分空间特征和通道特征。
62.s4.利用训练好的改进yolov5模型对所述测试集进行检测,得到目标检测结果。
63.为了能够更好说明本发明实施例提供的目标检测方法,本实施例选取faster-rcnn、yolov4、yolov4-tiny三种网络模型在相同的配置环境下,利用相同的数据集进行对比试验,如图6所示,相比于faster-rcnn、yolov4、yolov4-tiny三种网络模型,本实施例提供的改进yolov5模型减少了很多额外算力与内存开销,保持了较高的识别精度和较快的检测速率,同时占用内存资源也较少,适合部署于可移动嵌入式设备平台。
64.本发明实施例提供了一种移动消杀机器人目标检测方法,所述方法通过融合了cbam注意力机制模块,提高了网络的特征表征能力,其中,cbam注意力机制模块中的通道和
空间注意力模块在原有的平均池化和最大池化基础上,增加了最小池化,进一步加强对小目标和有遮挡目标的学习;同时本实施例通过引入lossα-iou损失函数代替giou损失函数作为边界框回归损失函数,提高边界框定位精度。相较于原始yolov5网络,本发明实施例采用的改进yolov5模型对小目标和遮挡目标的检测任务具有更高的检测精度和检测速度,能够改善消杀机器人在行走过程中检测和识别有遮挡地铁列车车厢内部空间及吊环把手、门扶手的目标与小目标的漏检问题,从而实现精准、快速消杀,具有一定的应用价值。
65.需要说明的是,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
66.在一个实施例中,如图7所示,本发明实施例提供了一种移动消杀机器人目标检测系统,所述系统包括:
67.数据采集模块101,用于采集车厢目标区域的目标消杀物图像,得到原始数据集;
68.数据处理模块102,用于对所述原始数据集进行预处理,并将经过预处理后的原始数据集分为训练集、测试集和验证集;
69.模型训练模块103,用于将所述训练集和所述验证集输入构建的改进yolov5模型中进行训练,得到训练好的改进yolov5模型;
70.目标检测模块104,用于利用训练好的改进yolov5模型对所述测试集进行检测,得到目标检测结果。
71.其中,所述改进yolov5模型的网络结构包括:backbone主干网络、neck颈部网络和head输出端;其中,在所述backbone主干网络中的所有c3模块后引入cbam注意力机制模块;所述改进yolov5模型采用lossα-iou损失函数替换原始的giou损失函数。
72.关于一种移动消杀机器人目标检测系统的具体限定可以参见上述对于一种移动消杀机器人目标检测方法的限定,此处不再赘述。本领域普通技术人员可以意识到,结合本技术所公开的实施例描述的各个模块和步骤,能够以硬件、软件或者两者结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
73.本发明实施例提供了一种移动消杀机器人目标检测系统,所述系统通过数据处理模块对原始数据集进行增强,有效提升了模型训练集规模;通过模型训练模块得到训练好的改进yolov5模型;通过目标检测模块实现对车厢内小目标和遮挡目标的检测。与现有技术相比,本技术对地铁列车车厢内小目标的检测上具有更强的特征提取能力和更高的检测精确度,从而进一步提升了车厢消杀的精准度和速度,满足了地铁列车在折返间隙即可实现快速精准消杀的要求,消除了传统人工操作可能存在的卫生安全隐患,有效提高了消杀效率,改善消杀效果的实际应用需求。
74.图8是本发明实施例提供的一种计算机设备,包括存储器、处理器和收发器,它们之间通过总线连接;存储器用于存储一组计算机程序指令和数据,并可以将存储的数据传输给处理器,处理器可以执行存储器存储的程序指令,以执行上述方法的步骤。
75.其中,存储器可以包括易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者;处理器可以是中央处理器、微处理器、特定应用集成电路、可编程逻辑器件或其组合。通过示例性但不是限制性说明,上述可编程逻辑器件可以是复杂可编程逻辑
器件、现场可编程逻辑门阵列、通用阵列逻辑或其任意组合。
76.另外,存储器可以是物理上独立的单元,也可以与处理器集成在一起。
77.本领域普通技术人员可以理解,图8中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有相同的部件布置。
78.在一个实施例中,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法的步骤。
79.本发明实施例提供的一种移动消杀机器人目标检测方法、系统、设备及介质,其一种移动消杀机器人目标检测方法通过在backbone主干网络中引入cbam注意力机制模块,并使用lossα-iou损失函数作为边界框回归损失函数,能够在原有yolov5算法的基础上,提高了检测精度与检测速率,优化了yolov5对小目标检测,实现了对地铁列车等公共交通工具消毒卫生工作的智能化、精准化、标准化,满足了快速、精准、实时自动化消杀的需求。
80.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如ssd)等。
81.本领域技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。
82.以上所述实施例仅表达了本技术的几种优选实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本技术的保护范围。因此,本技术专利的保护范围应以所述权利要求的保护范围为准。