旋转框定位的多尺度再生物品目标检测算法
Multi-scale object detection algorithm for recycled objects based on rotating block positioning
收稿日期: 2021-11-25
基金资助: |
|
Received: 2021-11-25
Fund supported: | 国家自然科学基金资助项目(61773347);浙江公益技术研究项目(LGF19F030001) |
作者简介 About authors
董红召(1969—),男,教授,从事智能交通、智能机电系统的研究.orcid.org/0000-0001-5905-597X.E-mail:
针对传统目标检测算法未考虑实际分拣场景目标物形态尺度的多样性,无法获取旋转角度信息的问题,提出基于YOLOv5的改进算法MR2-YOLOv5. 通过添加角度预测分支,引入环形平滑标签(CSL)角度分类方法,完成旋转角度精准检测. 增加目标检测层用于提升模型不同尺度检测能力,在主干网络末端利用Transformer注意力机制对各通道赋予不同的权重,强化特征提取. 利用主干网络提取到的不同层次特征图输入BiFPN网络结构中,开展多尺度特征融合. 实验结果表明,MR2-YOLOv5在自制数据集上的均值平均精度(mAP)为90.56%,较仅添加角度预测分支的YOLOv5s基础网络提升5.36%;对于遮挡、透明、变形等目标物,均可以识别类别和旋转角度,图像单帧检测时间为0.02~0.03 s,满足分拣场景对目标检测算法的性能需求.
关键词:
An improved algorithm MR2-YOLOV5 based on YOLOv5 was proposed aiming at the problem that the traditional target detection algorithm did not consider the diversity of the target shape scale in the actual sorting scene and could not obtain the rotation angle information. Precise rotation angle detection was completed by adding angle prediction branches and introducing angle classification method of ring smooth label (CSL). The target detection layer was added to improve the detection ability of different scales of the model. Transformer attention mechanism was used at the end of the backbone network to give different weights to each channel and strengthen feature extraction. The feature graphs of different levels extracted from the backbone network were input into the BiFPN network structure to conduct multi-scale feature fusion. The experimental results showed that the mean average precision (mAP) of MR2-YOLOV5 on the self-made data set was 90.56%, which was 5.36% higher than that of YOLOv5s with only angle prediction branch. Categories and rotation angles can be recognized for objects such as occlusion, transparent and deformation. The detection time of single frame is 0.02-0.03 s, which meets the performance requirements of target detection algorithm for sorting scenes.
Keywords:
本文引用格式
董红召, 方浩杰, 张楠.
DONG Hong-zhao, FANG Hao-jie, ZHANG Nan.
在再生物品图像识别的问题上,诸多学者展开研究. Yang等[3]提出轻量级神经网络WasNet. 陈智超等[4-5]提出MobileNet垃圾图像分类改进算法. Nie等[6]结合Faster R-CNN和ResNet50,完成垃圾图像识别、检测. Liang等[7]提出整合高、低层次的特征图,设计复合层CNN网络. 上述模型无法获取目标物旋转角度信息,缺乏考虑同类物体多形态、多尺度问题,缺少单一图像中多类目标的检测. 周滢慜[8]改进Faster-RCNN目标检测模型,调整原始VGG16分类网络,实现瓶子位置和旋转角度的识别. 数据集中瓶子的形态和尺度单一,缺乏考虑目标物之间遮挡、易发生变形等情况. 综上所述,现有再生物品目标检测算法无法同时满足实际分拣场景下位姿信息获取以及多形态、多尺度目标物的检测.
诸多学者提出解决目标物角度预测问题的方法. 朱煜等[11]提出粗调与细调两阶段旋转框检测网络R²-FRCNN. Ding等[12]提出ROI-Transformer检测模型. Xu等[13]提出学习水平框转换为旋转框后4个点的偏移. Chen等[14]引入两阶段NMS算法,降低密集对象漏检率. Yang等提出旋转检测器SCRDet[15]、R3Det[16]. 上述基于回归方法实现旋转框检测,存在角度周期性(PoA)和边缘的交换性(EoE)问题. 针对该问题,Yang等[17]提出将物体角度预测视为分类问题,且为限制预测结果,设计环形平滑标签(circular smooth label,CSL),但该方法多用于遥感图像检测,无法直接迁移至分拣场景下的再生物品目标物角度检测.
结合上述问题与方法,提出基于YOLOv5旋转框定位的多尺度目标检测算法MR2-YOLOv5(multi-scale refined rotated YOLOv5),用于再生物品图像检测. 从以下4个方面对模型进行改进:1)将角度预测作为分类问题,引入环形平滑标签(CSL)角度分类方法,用于对目标物角度的精准预测;2)将检测层增加到4层,提升对不同尺度目标尤其是小目标的检测性能;3)在主干网络末端利用Transformer模块替换YOLOv5的C3模块的模型,加强特征提取;4)将原始PANet网络结构改进为BiFPN,进行多尺度的特征融合,以解决再生物品分拣场景下物品结构、尺度多样而导致的高漏检率、误检率的问题. 在形态尺度多样化的瓶罐状物自制数据集下,验证模型的各项改进方法.
1. MR2-YOLOv5模型
图 1
图 2
式中:IoU为预测框与真实框相交区域与交并区域面积的比值,A、B分别为2个边界框的面积,
1.1. 增加角度预测分支
图 3
式中:
本次CSL角度为
图 4
式中:N为样本数量;
检测网络参数m为输出特征图通道数,具体定义如下:
式中:
此次检测类别数为3,锚框数量为3,角度
1.2. Transformer模块
Transformer网络结合多个缩放点积注意力机制,形成多头注意力机制. 利用缩放点积注意力机制可以批量处理数据,表达式[20]为
式中:Q、K、V分别为查询向量、键向量、值向量,
多头注意力机制具有更高的运算效率,可以从不同的特征空间中学习自适应注意力分布,表达式为
式中:参数矩阵
MR2-YOLOv5主干网络末端利用3次Transformer网络运算替换YOLOv5原始的C3模块,该运算次数与dm参数相关联.
1.3. 增加检测层
过多的下采样层会导致图像中的小目标特征消失,导致网络无法学习到相应的特征,出现漏检、误检的情况. 原始YOLOv5网络的检测层尺度分别为20×20、40×40、80×80, MR2-YOLOv5保留原始检测尺寸,不降低原始尺度特征的学习能力,通过增加Concat层、卷积层、C3模块的方法,多进行了一次上采样和下采样,将主干网络中保留较多小目标特征信息的同尺度特征层输入Concat层,进行特征融合操作. 新增检测层对于小目标特征更敏感,虽然计算成本增加,但是模型检测性能提高. YOLOv5具有自适应锚框计算,会采用k均值和遗传算法对自定义数据集进行分析计算,获得该数据集各尺度所需的预测锚框. 最终的检测层尺度为20×20、40×40、80×80、160×160.
1.4. 多尺度特征融合网络
随着网络层数的加深,每一层网络都会在一定程度上造成特征丢失,增加检测分支和融合多尺度特征融合网络可以提升检测精度[21]. 目前已有的特征融合网络FPN[22]、PANet[23]、NAS-FPN[24]、BiFPN[25]等. 为了增强不同尺度的特征信息融合,将原始加强特征提取网络PANet结构改进为BiFPN结构,将主干网络中的多尺度特征图多次输入BiFPN结构中,开展自上而下和自下而上的多尺度特征融合;对于同尺度大小的特征层,利用跳跃连接的方式进行特征融合. MR2-YOLOv5的BiFPN自下而上的部分对2个同尺度特征进行融合,自上而下的结构对3个同尺度特征进行融合,在经过C3模块以及Conv2d模块计算后,对于4个不同的尺度目标进行预测. 利用BiFPN网络,使得预测网络对不同大小的目标更敏感,提升了整体的模型检测能力,降低了漏检率与误检率.
2. 实验结果与分析
基于pytorch深度学习框架构建MR2-YOLOv5模型,硬件配置如下:i7-8700K CPU,GTX1080Ti,32 GB内存. 将YOLOv5s网络作为整体研究的基础网络(即dm = 0.33,wm = 0.50),可以大幅度减少后续消融实验的训练时间,提高计算效率. 在添加角度预测分支后,模型参数量为7.55×106,计算量为1.8×1010 FLOPs. 采用CSL角度分类方法,
2.1. 实验数据集制作及训练参数设置
现有研究均由自身搭建实验平台利用工业相机进行拍摄,但未考虑不同材质物体具有相似特征以及同材质物体具有多形态结构和多尺度外形的特点. 在实际的流水线分拣过程中,分拣物在流水线上的状态多变,随机性强,密度较高时易导致复杂背景,检测难度加大. 复杂背景与单一背景相比而言,当单个目标物处于单色的输送带或平台时,可以认为该目标物处于单一背景;当多目标物处于单色的输送带或平台时,由于目标物均带有颜色与形状特征,目标检测时容易相互干扰,可以认为目标物处于复杂背景.
针对上述情况,以瓶状物、罐状物为研究对象,搜集不同材质物品及同材质多种形态结构物品,模拟实际分拣物的多种随机性状况(竖放、平放、遮挡、弯曲变形等),利用移动端设备进行拍摄. 目标物的拍摄角度尽可能与分拣场景相同(正上方拍摄),拍摄场景与拍摄距离多样化,单张图片内可以包含多个目标物,使得数据集中的目标角度覆盖
利用rolabelimg对数据集图片进行旋转框标注,图片左上角为原点,将上述3类物品的瓶口或开口左侧作为标注起始点,可视化处理后如图5所示. 标签参数定义为(C,rx,ry,L,S,
图 5
图 5 旋转框标注示意图(圆点为标注起始点)
Fig.5 Rotation frame annotation schematic diagram (dot is starting point of annotation)
图 6
图 7
2.2. 实验结果分析
基于YOLOv5模型添加角度预测分支,采用CSL法对角度进行分类,其中窗口半径是影响整体模型性能的重要参数之一. 当窗口半径过小时,窗口函数趋向于脉冲函数,无法学习方向及比例信息. 当窗口半径过大时,预测结果的区分度过小. 针对上述问题,选择0~8的合适半径,如表1所示为基于YOLOv5s模型在各半径尺寸下的检测性能. 表中,mAP为均值平均精度. 可知,基于自制数据集,当r = 4时,YOLOv5s模型的检测性能最佳.
表 1 不同窗口半径下的检测性能比较
Tab.1
模型 | mAP/% | ||||
r = 0 | r = 2 | r = 4 | r = 6 | r = 8 | |
YOLOv5s | 68.79 | 82.47 | 84.20 | 81.20 | 79.94 |
在YOLOv5s模型的基础上增加角度预测分支(r = 4)以及其余参数设置相同的情况下,对当前主流多尺度特征融合网络FPN、PANet、BiFPN进行检测精度和参数量M比较. 从表2可知,传统FPN结构由于只进行单方向的特征融合,预测精度偏低;PANet结构采用简单的双向融合,在FPN基础上增加了从下而上的融合路径,明显提升了预测精度; BiFPN双向特征金字塔网络结构更复杂,将不同的特征层进行反复叠加,且BiFPN网络更侧重于多尺度特征融合,检测精度优于其他网络.
表 2 多尺度特征融合网络性能的比较
Tab.2
多尺度融合网络 | mAP/% | M/106 |
FPN | 81.05 | 6.52 |
PANet | 84.20 | 7.55 |
BiFPN | 85.36 | 7.83 |
表 3 基于YOLOv5s模型的消融实验
Tab.3
角度预测分支(CSL) | 检测层 | Transformer | 融合网络 | M/106 | FLOPs/109 | AP | mAP/% | ||
Cs | Gb | Pb | |||||||
− | 3 | − | PANet | 7.28 | 17.1 | 91.7 | 90.1 | 85.4 | 89.05 |
− | 4 | − | PANet | 8.17 | 28.2 | 94.5 | 92.4 | 87.6 | 91.34 |
− | 4 | √ | PANet | 8.17 | 28.0 | 95.4 | 94.1 | 90.2 | 93.23 |
− | 4 | √ | BiFPN | 9.25 | 29.6 | 95.2 | 94.7 | 93.4 | 94.46 |
√ | 3 | − | PANet | 7.55 | 18.0 | 90.5 | 82.5 | 79.1 | 85.20 |
√ | 4 | − | PANet | 8.73 | 33.4 | 92.1 | 85.3 | 82.2 | 86.53 |
√ | 4 | √ | PANet | 9.91 | 32.6 | 93.8 | 87.5 | 83.9 | 88.44 |
√ | 4 | √ | BiFPN | 10.99 | 34.2 | 96.5 | 91.2 | 84.2 | 90.56 |
与未添加角度预测分支网络相比,添加各改进方法后的模型整体参数量和计算量均有不同程度的提升,但检测精度大幅提高,mAP达到94.46%,较YOLOv5s初始网络提高5.41%. 可见,各改进方法可以提升模型检测多形态、多尺度目标物的性能. 其中模型对塑料制品瓶状物的检测性能提升最明显,AP提升了8.0%,金属罐状物与玻璃制品瓶状物的AP均提升了4.5%.
与添加角度预测分支网络相比,将检测层增加到4层后,增加了不同尺度的预测网络,与3层检测网络相比,mAP提高了2.33%,但计算量增加了85.6%. 主干网络末端将原来的C3模块替换为Transformer模块,利用注意力机制对输入数据进行并行特征提取,对各通道赋予不同的权重,强化特征提取,mAP提高了1.91%,参数量提高了13.5%,但计算量下降了2.4%. 将多尺度特征融合网络改进为BiFPN,利用跳跃连接的方式,连接底层、高层特征,将多个同尺度的特征进行融合,提高了模型整体的特征学习能力,虽然参数量和计算量都小幅增大,但mAP提高了2.12%,整体模型的mAP达到90.56%,与仅添加角度预测分支的YOLOv5s模型相比,mAP提高了5.36%. 在添加角度分支后,利用各改进方法可以提升模型的性能,且MR2-YOLOv5参数量为10.99×106,在实际测试中检测单帧图片时间仅需0.02~0.03 s,满足分拣场景下对目标检测算法的性能需求.
对比各网络下的3种目标物检测精度可知,塑料制品与玻璃制品的瓶状物的AP均较低,尤其是塑料制品瓶状物的检测精度过低,影响整体的mAP. 主要原因是两者的透明度均较高,易与背景色重叠,且外形相似,易发生混淆,塑料制品瓶状物易发生变形,从而导致检测精度下降. 在模型改进后,对三者的检测性能均有不同程度的提高.
如图8、9所示分别为不含角度预测分支与含角度预测分支的各改进网络在瓶状物数据集上的训练结果曲线. 图中,E为训练的迭代次数,L为训练损失. 从训练曲线可知,在添加角度分支后,由于角度损失函数的加入,各个模型训练损失收敛更加缓慢,但随着模型的改进,模型的收敛性提高. 无角度预测分支的各模型收敛速度更快,改进后模型的mAP与损失函数基本迭代至40次左右就趋向于平稳. 如图10所示为添加角度预测分支后的各模型验证集角度损失曲线. 由于窗口函数的设置,模型可以衡量预测标签和真相标签之间的角度距离,即在一定范围内越靠近真实值的预测值损失越小. 从图10可知,利用各改进方法可以提升角度预测精度. 利用各改进方法,可以加快模型损失收敛,提升模型精度. 如图11~14所示为MR2-YOLOv5的检测效果图,显示参数(从左至右)分别为该目标物类别、置信度、旋转角度. 可知,该模型对于多尺度目标(小目标至大目标),目标物遮挡、透明度较高、发生变形等情况均有出色的识别效果,可以检测旋转角度. 目标物发生遮挡、透明度较高、变形等情况,外形特征不完整或提取难度加大. MR2-YOLOv5可以提升此类情况下的目标物特征提取能力,降低漏检率和误检率,提高检测精度,可以检测目标物旋转角度.
图 8
图 8 各模型训练曲线(无角度预测分支)
Fig.8 Training curves of each model(without angle prediction branch)
图 9
图 9 各模型训练曲线(含角度预测分支)
Fig.9 Training curves of each model(including angle prediction branch)
图 10
图 11
图 12
图 12 多目标物遮挡情况下的检测效果
Fig.12 Detection effect under occlusion of multiple objects
图 13
图 14
3. 结 论
(1)通过增加角度检测分支,引入CSL角度分类方法,完成对角度的精准预测. 通过实验,比较在自制数据集及YOLOv5s模型时不同窗口半径下的模型检测性能. 实验结果表明,当窗口半径为4时,模型检测性能最佳.
(2)以添加角度预测分支的YOLOv5s为基础,比较各多尺度特征融合网络在自制数据集下的性能. 实验结果表明,BiFPN网络结构更侧重于多尺度特征融合,检测精度优于其他网络结构.
(3)对添加角度预测分支、未添加角度预测分支的网络进行对比实验. 可知,利用各改进方法均可以提升模型性能. 添加角度预测分支的MR2-YOLOv5在自制数据集下mAP达到90.56%,整体模型参数量为10.99×106,实际测试中检测单帧图片的时间仅为0.02~0.03 s,满足分拣场景下对目标检测算法检测图像的速度要求,降低传统识别旋转角度设备的成本,为再生物品分拣提供新的思路.
(4)MR2-YOLOv5在复杂场景下有较好的检测性能,但由于是二维图像检测,旋转角度检测仅针对平铺目标物,堆叠物品难以提供准确的位姿信息,可以结合三维图像提高位姿信息检测. 当多个目标物重叠度过高时,会出现漏检情况. 可以尝试融入边界多边形实例分割,提高模型多目标重叠时的检测性能,使模型更符合再生物品分拣的场景.
参考文献
基于机器视觉的垃圾自动分类系统设计
[J].
Automatic garbage classification system based on machine vision
[J].
一种面向机器人分拣的杂乱工件视觉检测识别方法
[J].DOI:10.3772/j.issn.1002-0470.2018.04.008 [本文引用: 1]
A method for visual detection and recognition of clutter workpieces for robot sorting
[J].DOI:10.3772/j.issn.1002-0470.2018.04.008 [本文引用: 1]
Wasnet: a neural network-based garbage collection management system
[J].DOI:10.1109/ACCESS.2020.2999678 [本文引用: 1]
基于改进 MobileNet v2 的垃圾图像分类算法
[J].
Garbage image classification algorithm based on improved MobileNet v2
[J].
基于轻量级残差网路的垃圾图片分类方法
[J].
Garbage image classification by lightweight residual network
[J].
Domestic garbage recognition and detection based on Faster R-CNN
[J].DOI:10.1088/1742-6596/1738/1/012089 [本文引用: 1]
Garbage sorting system based on composite layer cnn and multi-robots
[J].DOI:10.1088/1742-6596/1634/1/012083 [本文引用: 1]
Gliding vertex on the horizontal bounding box for multi-oriented object detection
[J].
Bidirectional parallel multi-branch convolution feature pyramid network for target detection in aerial images of swarm UAVs
[J].DOI:10.1016/j.dt.2020.09.018 [本文引用: 1]
融合BiFPN和改进Yolov3-tiny网络的航拍图像车辆检测方法
[J].DOI:10.3969/j.issn.1000-1220.2021.08.020 [本文引用: 1]
Vehicle detection method in aerial images based on BiFPN and improved Yolov3-tiny Network
[J].DOI:10.3969/j.issn.1000-1220.2021.08.020 [本文引用: 1]
/
〈 |
|
〉 |
