刘云飞,杨旭东*,孙栋
基于改进YOLOv5的条烟识别研究
刘云飞1,杨旭东1*,孙栋2
(1.贵州大学 机械工程学院,贵阳 550025,2.贵州理工学院 贵阳 550025)
针对当下烟草物流中心条烟分拣机及人工分拣时会产生错烟等问题。从兼顾实时性、识别精度出发,基于YOLOv5s算法提出一种收敛速度更快、准确率更高的条烟识别模型。首先在YOLOv5s网络架构中融入CA注意力模块来更好地提取特征,提高模型获取目标位置的准确度;其次将原网络中的最近邻插值上采样算子改为轻量级通用上采样算子CARAFE,获得更大的感受野;然后在骨干网络中嵌入Ghost模块,对网络进行轻量化处理;最后在烟草物流中心搭建条烟图像采集系统,建立条烟图像数据集。相较于YOLOv5s,本文提出的优化算法计算量减少了45.8%,mAP@0.5值达到了99.3%,在条烟纠错系统上识别率约为99.9%。本文提出的优化算法能够高精度满足高速条烟分拣识别需求。
YOLOv5算法;条烟识别;Ghost模块;CA注意力机制
目前,我国卷烟的销售多以条烟为主,卷烟市场流通的有1 000种以上卷烟品牌[1]。在销售流程中最为关键、劳动量最大的是按照订单对不同品牌的条烟进行分拣打包。由于分拣工作量大,分拣机和人工分拣时都难免会出错,造成订单“错烟”问题,而不同卷烟品牌之间的价格相差较大,错烟不仅会对烟草公司造成较大的经济损失,还会带来信誉影响。
传统的条码识别受限于烟姿、烟距以及条码位置等问题,易出现误识别,严重影响烟草物流中心的分拣效率。随着图像识别分类技术日渐成熟,深度学习在机器视觉各领域中逐渐展露其优势[2]。在此背景下,把卷积神经网络应用在烟草物流分拣的识别纠错系统上成为可靠方案。曹东梅等[3]提出利用金字塔搜索策略匹配条烟模板,利用支持向量机实现条烟分类识别,但该方法识别效率太低。周志祥等[4]提出采用2次模板匹配提取条烟图像特征,用RBM模型作为快速识别算法实现分类识别。李梦雪[5]使用卷积神经网络AlexNet模型实现条烟图像训练分类,加入迁移学习提高了图像的识别精度。王昊然[6]提出使用YOLOv4目标检测网络实现对异型烟条码精确定位,采用pyzbar对矫正后的异型烟条码图像进行解码,实现条烟识别。
综上,为满足当下烟草物流分拣中的高速条烟识别的实时性与准确度要求,基于YOLOv5s目标检测模型实现条烟的识别分类,并根据识别需求进行部分改进:
1)融合Coordinate Attention(CA)[7]注意力机制来更好地获取图像特征,在关注通道间信息联系的同时,考虑了特征空间的位置信息,提升模型获得目标位置的准确度。
2)使用轻量级通用上采样算子CARAFE[8]替换原网络中的最近邻插值上采样算子,该模块基于输入特征自适应生成上采样内核,而不会引入过多的参数和计算量。
3)为减少模型参数引入Ghost[9]模块对网络进行轻量化处理,以GhostConv作为基本卷积,并以此构建GhostBottleneck、GhostC3模块。以更小计算代价获得更好的性能。
近年来,由于YOLO[10]算法的诸多优异性能,被广泛用于物体检测领域,官方给出了s、m、l、x 4个网络模型[11],其中YOLOv5s深度最小,特征图的宽度最小。考虑到高速条烟分拣线的实时性要求,因此选用网络深度最小的YOLOv5s作为基础网络并进行优化。
YOLOv5s网络结构含Input、Backbone、Neck、Head 4部分[12]。在输入端使用了数据增强、自适应图片缩放等预处理操作提升模型泛化能力;Backbone部分采用Conv复合卷积模块、C3结构、SPP空间金字塔池化提取浅层语义信息;Neck使用FPN+PAN结构实现不同层特征融合,生成多尺度特征金字塔;Head采用分类损失、定位损失、置信度损失以及NMS提高网络模型的预测性能。
Conv复合卷积模块是骨干网络的基础组成部分,它封装了卷积(Conv2d)、BN以及激活函数(SiLU)3个功能,同时autopad(,)实现了自动计算填充。其结构如图1所示。
图1 Conv结构
Bottleneck结构先用核尺寸为1×1卷积将通道减半,再通过3×3卷积将通道加倍,通过ShortCut参数控制是否进行残差连接。结构如图2所示,“+”表示Add操作。
图2 Bottleneck结构
C3模块是将BottleneckCSP模块进行改进。其中一条路径包含复合卷积和多个Bottleneck堆叠,另一条仅有复合卷积模块,最后将2支进行通道拼接,如图3所示。
图3 C3结构
SPP空间金字塔池化层可用于提取不同尺寸的空间特征信息,可以提升模型对空间布局和物体变性的鲁棒性,避免了图片因Resize导致的信息变形。其结构如图4所示。
图4 SPP结构
注意力机制可以帮助神经网络更好地处理图像数据,抑制背景信息,提取最优特征。为提高模型的性能,研究者们通常在轻量级神经网络中引入SE[13]、CBAM[14]、CA[7]等注意力模块。SE模块考虑了特征图通道间信息的编码而忽视了位置信息;CBAM结合了卷积和注意力机制,先逐通道提取全局特征,并以此作为空间注意力的输入,最终生成混合域特征图,但卷积仅能够捕获局部相关性,空间特征聚焦效果不佳。而本文在网络中嵌入的CA注意力机制,可以将特征坐标嵌入到通道注意力中,以实现目标定位和特征提取。
图5 CA结构
将平均池化后的特征图拼接在一起,然后利用核尺寸为1×1的卷积,将其通道降低为原来的/。经过归一化处理的得到特征图1,利用激活函数进行非线性操作,得到大小为/×1×(+)的特征图。其中表示下采样比例,如式(3)所示。
最后通过加权计算,得到带有宽高2个维度的注意力权重的特征表达,CA模块的最终输出见式(6)。
在骨干网络中的空间金字塔池化层前引入CA注意力模块,增强模型对位置信息的提取能力。引入位置如图6所示。
图6 引入CA模块后的骨干网络
图7为加入CA注意力机制处理后与原网络模型的热力图对比。由图7可知,加入CA模块后,网络模型对目标检测区域的关注度和覆盖度都有显著提升,证明CA注意力机制能够帮助深度神经网络提取到更加关键的的特征信息。且CA注意力机制的嵌入使得模型计算参数仅增加了0.37%,以极少的计算开销提高了网络的特征学习性能。
在Yolov5s网络模型中,通过上采样和下采样操作将不同层次的特征图融合在一起,生成多尺度的特征金字塔,为后续的特征提取与检测做铺垫。在原网络模型中上采样默认使用最近邻插值算子‘nearest’,如图8所示,使上采样后的像素值等于距它最近的输入值。
图7 热力图对比
图8 最近邻上采样
由于最近临插值算子易于实现,能有效减少计算参数,在轻量级网络中得到广泛应用。但是其没有考虑其他相邻像素点的影响,因此造成上采样后的特征之间不连续,有明显的马赛克和锯齿现象。在高速条烟分拣线上,要求从触发到采集传输再识别的时间低于80 ms。本研究采用低分辨率工业相机进行图像采集,因此选用轻量级的通用上采样算子CARAFE。在带来很小的参数和计算成本的同时,提升了检测性能。
将原网络中的最近邻上采样算子改为CARAFE算子,FPN结构中的改进位置如图9所示。
由表1可知,更改上采样算子后,模型的mAP@0.5值与mAP@0.5:0.95值均得到了较好的提升,而计算参数(params)仅增加了约1.9%,相对于精度的提升,带来的计算参数的增加是可接受的。其中mAP@0.5表示在IOU阈值为0.5时的平均精度(AP)均值,mAP@0.5:0.95表示IOU阈值从0.5到0.95,步长0.05的平均mAP。
表1 最近邻插值算子与CARAFE算子对比
Tab.1 Comparison between the nearest interpolation operator and the CARAFE operator
原网络模型在引入CA注意力机制和CARAFE上采样算子的同时带来了大量参数,增加了计算成本,降低了模型收敛速度。因此引入Ghost模块,搭建轻量级神经网络架构,降低模型体积,一定程度上减小因模型复杂带来的实时性能损失。
Ghost卷积旨在用更少的参数生成与普通卷积相同的特征图。先通过普通卷积得到少量原始特征图,然后将原始特征图通过简单的线性运算生成更多特征图,最后进行通道拼接。其示意图如图10所示。
图10 一般卷积(a)与Ghost卷积(b)对比
利用Ghost模块生成的个特征图,包含了个原始特征图的恒等映射和(−1)个线性运算,每个线性运算的内核平均尺寸为。由此得到Ghost相较于普通卷积的加速比为:
式中:=/,;卷积核与的大小相近。
由以上计算可知,普通卷积的参数和计算量均约为Ghost模块卷积的倍。在本研究中以Ghost模块卷积全面替换普通卷积,并以此构建GhostConv、GhostBottleneck、GhostC3模块,如图11所示。
如表2所示,相较于原始模型,轻量化改进后网络模型参数(params)减少了46.80%,计算量(GFLOPs)减少了47.24%。实验结果证明了利用Ghost模块对原网络模型进行轻量化极大地减少了模型参数和计算量,符合条烟识别的研究需求。
图11 Ghost系列模块
表2 轻量化后网络与原网络数据对比
Tab.2 Comparison between the lightweight network and the original network data
在某烟草物流配送中心搭建条烟图像采集系统,对其中某条分拣线的条烟进行图像采集得到14 310张图片,涵盖了42种香烟品类。每类条烟挑选不同烟姿及位置的图片,按训练集、测试集、验证集为4∶1∶1的比例建立条烟数据集,条烟图像规格统一为1 280×1 024。
实验操作系统为Windows11专业版;深度学习框架为Pytorch1.9.1,CUDA12.0;CPU参数为Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz;GPU为NVIDIA GeForce RTX 3090;编译为Python 3.8。
本实验主要从识别精度和识别速度两方面对条烟识别模型性能评价。采用参数量(parameters)、计算量(GFLOPs)、mAP@0.5、mAP@0.5:0.95、单帧检测时间作为条烟识别模型的评价指标。
YOLOv5s与本文算法的识别对比见图12。在条烟姿态良好时,原网络模型也能对条烟进行较好的预测且置信度较高;而在条烟姿态较差或有其他遮挡时,原网络模型检测框偏移较大,对成像质量差的图像出现误识别。改进后的网络模型在条烟姿态较差或有异物遮挡时也能进行很好的预测,且检测框更加精准。
为验证本文算法的有效性,将改进后的网络模型与YOLOv5-mobileNet、Faster-RCNN[15]、SSD[16]主流检测模型进行对比。
由表3可知,本文算法模型的mAP@0.5值比yolov5s的提高了5.1%,在自建条烟数据集中识别率达到99.85%,平均识别速度仅为12.8 ms/条。而Faster-RCNN、SSD网络模型由于参数多,计算代价过大,在实验中均不能达到高速条烟分拣线识别的实时性能要求;YOLOv5-mobileNet的识别速度较快,但在其精度最低。因此本文算法在模型大小、检测速度、检测精度几方面综合性能更加优越,更加符合高速条烟分拣线上的识别需求。
为验证该条烟识别算法的有效性,在某烟草物流中心条烟分拣线纠错系统上部署此算法。该分拣线工作速度设置为1.5 m/s,每小时分拣量约为7 200条,实时分拣速度约为13条/s,该识别算法在该烟草物流中心分拣线上识别测试结果见表4。经过现场测试表明,该条烟识别算法的识别速度快、精度高,正确识别率约为99.9%,能够很好地满足条烟纠错系统需求,有效解决了物流分拣中心订单错烟的问题。
图12 条烟识别对比
表3 主流网络对比
Tab.3 Comparison of mainstream networks
表4 烟草配送中心现场实测结果
Tab.4 Field measurement results of the tobacco distribution center
针对烟草物流配送中心分拣错烟的问题,本文基于Yolov5s提出一种兼顾实时性与准确性的条烟识别改进算法,对烟姿较差时定位不准的问题,引入CA注意力机制,在关注特征信息的同时,兼顾位置信息的提取;对低分辨率的条烟图像,使用轻量级CARAFE算子,减少上采样时的特征损失而不会引入过多的参数和计算量;利用Ghost模块构建轻量级网络架构,减少模型的参数和计算量。实验表明,该算法模型参数量减少了45.6%,计算量减少了45.8%,mAP@0.5值提高5.1%,分拣识别率达99.9%,有效解决了烟草物流中心订单错烟的问题。
[1] 曹越. 条烟光电自动识别分类关键技术研究[D]. 四川: 电子科技大学, 2019: 1-4.
CAO Y. Research on the Key Technology of Photoelectric Automatic Identification and Classification of Strip Smoke[D]. Sichuan: University of Electronic Science and Technology of China, 2019: 1-4.
[2] 邱天衡, 王玲, 王鹏, 等. 基于改进YOLOv5的目标检测算法研究[J]. 计算机工程与应用, 2022, 58(13): 63-73.
QIU T H, WANG L, WANG P, et al. Research on Object Detection Algorithm Based on Improved YOLOv5[J]. Computer Engineering and Applications, 2022, 58(13): 63-73.
[3] 曹冬梅, 郭壮, 李东波. 基于机器视觉的条烟分类识别与定位研究[J]. 机械设计与制造工程, 2018, 47(9): 71-74.
CAO D M, GUO Z, LI D B. Research on the Classification and Location of Cigarette Based on Halcon[J]. Machine Design and Manufacturing Engineering, 2018, 47(9): 71-74.
[4] 周志祥, 杨旭东, 陈波, 等. 基于模板匹配的条烟识别系统研究[J]. 包装工程, 2020, 41(21): 261-269.
ZHOU Z X, YANG X D, CHEN B, et al. Cigarette Recognition System Based on Template Matching[J]. Packaging Engineering, 2020, 41(21): 261-269.
[5] 李梦雪. 基于视觉的传动平台烟条分类与识别算法研究[D]. 成都: 电子科技大学, 2018.
LI M X. Research on Cigarette Classification and Recognition Algorithm of Transmission Platform Based on Vision[D]. Chengdu: University of Electronic Science and Technology of China, 2018.
[6] 王昊然. W烟草公司异型烟分拣线差错检测系统研究与应用[D]. 山东: 山东财经大学, 2021.
WANG H R. Research and Application of Error Detection System of Special Tobacco Sorting Line of W TOBACCO COMPANY[D]. Shandong: Shandong University of Finance and Economics, 2021.
[7] HOU Q, ZHOU D, FENG J. Coordinate Attention for Efficient Mobile Network Design[C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2021: 13713-13722.
[8] WANG J Q, CHEN K, XU R, et al. Carafe: Content- Aware-Reassembly of Features[C]// 2019 IEEE/CVF International Conference on Computer Vision(ICCV). Seoul, South Korea, 2019: 3007-3016.
[9] HAN K. Ghostnet: More Features from Cheap Operations[C]// Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition, 2020: 56-61.
[10] REDMON J, DIVVALA S, GIRSHICK R, et al. You Only Look Once: Unified,Real-Time Object Detection[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition, Las Vegas, NV, USA, 2016: 779-788.
[11] 许德刚, 王露, 李凡. 深度学习的典型目标检测算法研究综述[J]. 计算机工程与应用, 2021, 57(8): 10-25.
XU D G, WANG L, LI F. Review of Typical Object Detection Algorithms for Deep Learning[J]. Computer Engineering and Applications, 2021, 57(8): 10-25.
[12] 杨其晟, 李文宽, 杨晓峰, 等. 改进YOLOv5的苹果花生长状态检测方法[J]. 计算机工程与应用, 2022, 58(4): 237-246.
YANG Q S, LI W K, YANG X F, et al. Improved YOLOv5 Method for Detecting Growth Status of Apple Flowers[J]. Computer Engineering and Applications, 2022, 58(4): 237-246.
[13] HU J, SHEN L, ALBANIE S, et al. Squeeze-and-Excitation Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2020, 42(8): 2011-2023.
[14] WOO S, PARK J, LEE J Y, et al. Cbam: Convolutional Block Attention Module[C]// Proceedings of the European Conference on Computer Vision (ECCV), 2018: 3-19.
[15] GIRSHICK R. Fast R-CNN[C]// Proceedings of IEEE International Conference on Computer Vision(ICCV) , 2015: 1440-1448.
[16] LIU W, ANGUELOV D, ERHAN D, et al. SSD: Single Shot MultiBox Detecto[C]// European Conference on Computer Vision, 2016: 21-37.
Strip Tobacco Identification Based on Improved YOLOv5
LIU Yunfei1, YANG Xudong1*, SUN Dong2
(1. School of Mechanical Engineering, Guizhou University, Guiyang 550025, China; 2. Guizhou Institute of Technology, Guiyang 550025, China)
To solve the problems of picking errors of strip tobacco by sorting machine and manual sorting in tobacco logistics center, the work aims to propose a strip tobacco identification model with faster convergence speed and higher accuracy based on YOLOv5s algorithm from the perspective of ensuring the real-time performance and recognition accuracy. Firstly, CA attention module was integrated into the YOLOv5s network architecture to better extract features and improve the accuracy of target acquisition. Then, the nearest neighbor in the original network was changed to lightweight general upper sampling operator CARAFE to obtain a larger feeling field. Next, the Ghost module was embedded in the backbone network to lightweight the network. Finally, the tobacco image acquisition system was built in the tobacco logistics center to establish the tobacco image data set. Compared with YOLOv5s, the proposed optimization algorithm was reduced by 45.8%, mAP@0.5 reached 99.3%, and the recognition rate was about 99.9% on the strip tobacco error correction system. The optimization algorithm proposed can meet the requirements of high-speed strip tobacco sorting and identification with high accuracy.
YOLOv5 algorithm; strip tobacco identification; Ghost module; CA attention mechanism
TB487
A
1001-3563(2024)05-0144-07
10.19554/j.cnki.1001-3563.2024.05.017
2023-06-20
贵州省普通高等学校青年科技人才成长项目(黔教合KY字[2021]268);贵州省烟草公司贵阳市公司科技项目(黔烟筑科[2022]1);贵阳市科技计划项目(筑科合同[2022]5-56)