APP下载

一种改进YOLOv4的交通标志识别算法

2022-07-06郭继峰孙文博庞志奇费禹潇白淼源

小型微型计算机系统 2022年7期
关键词:交通标志尺度卷积

郭继峰,孙文博,庞志奇,费禹潇,白淼源

(东北林业大学 信息与计算机工程学院,哈尔滨 150000)

1 引 言

标志识别作为计算机视觉的实际应用之一,已经被广泛应用到交通安全领域,尤其是在无人驾驶的安全性保障方面至关重要.在面临天气情况、光线强弱和其他环境变化等因素影响时,很多识别方法的效果并不理想,使目前交通标志识别的应用研究仍具有很大的挑战性.实现精确快速的交通标志识别是无人驾驶做出下一步判断的基础,设计出具有更高准确率和更快速度的交通标志识别方法对无人驾驶系统具有重大意义[1].

在以往的传统图像处理方法中,Soetedjo等人[2]利用RGB颜色模型根据颜色差异进行交通标志分类,Dalal等人[3]提出了使用方向梯度直方图(HOG)的形状检测方法.但仅采用颜色或者形状作为交通标志识别的依据,经常会受到光线和环境的影响而做出误判,并且在交通标志识别过程中检测速度过慢,准确率低.

在2014年,Girshick等人[4]率先提出了Regions with CNN(R-CNN)算法,R-CNN作为早期的深度学习算法,实现了对物体的定位和检测[5];随后为了减少候选区域的重复运算,Girshickd在R-CNN的基础上通过调整网络的输入提出了Fast R-CNN算法[6],一定程度上缩短了R-CNN的推断时间;Ren等在候选区域提取部分利用区域推荐网络代替选择性搜索,提出Faster R-CNN算法[7]实现了端对端网络的设计;由Cai等提出的Cascade R-CNN则通过级联结构设置不断增加的交并比阈值对不同的检测结果进行调整进而提升算法的鲁棒性[8];Pang等根据检测过程存在的正负样本不均衡、回归与分类损失函数不均衡等问题,提出了Libra R-CNN使算法进行均衡学习[9].深度学习方法为交通标志识别提供了更好的工具,相较于颜色模型分析方法等传统方法能获得较好的识别效果,交通标志识别率更高.虽然二阶段检测网络能够得到较好的检测结果,但由于二阶段检测网络依靠候选区域提取网络选取兴趣区域,模型参数量与计算量过大,推理时间较长,不满足交通标志识别的实时性要求.

针对上述方法存在的问题,本文提出一种改进YOLOv4-tiny的交通标志识别算法MYOLOv4(Miniature YOLOv4),为了减少模型参数和计算量,在主干网络的基础上引入深度可分离卷积,在多尺度特征融合部分将两层特征信息融合变化为三层特征融合,采用BiFPN代替特征金字塔网络(FPN),更好地检测不同大小的目标,提升算法检测能力,在损失函数部分引入Focal损失函数解决数据集中正负样本数量不均衡问题,让模型更专注于困难样本的检测.实验结果表明,MYOLOv4在减少模型参数的同时,交通标志识别的速度和精度均得到显著的提升.

2 相关工作

2.1 一阶段检测网络

针对二阶段网络推理速度较慢的问题,2016年Liu等人[10]提出了SSD算法,不同于Faster R-CNN进行候选区域提取,SSD在每个像素点设置先验框,利用感受野小的特征图检测小物体,感受野大的特征图检测大物体最后将检测结果综合得到最终预测结果.随后Redmon等提出了You Only Look Once(YOLOv1)算法[11]将目标检测视作回归问题,YOLOv1利用预设好的多个网格单元进行分类和回归.Redmon又在YOLOv1基础上引入了批量归一化、维度聚类并利用K均值算法计算网格单元大小和比例等方法,使YOLOv2的速度和精度得到了一定的提升[12].YOLOv3算法将YOLOv2的主干网络替换为Darknet-53,增加了网络的层数,在每秒传输帧数减少一半的同时平均精度均值提升了3.1%[13].

Bochkovskiy等将跨阶段部分连接(CSP)、路径聚合网络(PAN)、Mish激活函数、马赛克数据扩增等方法加入到YOLOv3中推出YOLOv4算法[14],将YOLO系列算法的精度和速度推向一个新的高度.其中YOLOv4-tiny作为YOLOv4的轻量级网络模型,取消特征金字塔池化,并将PAN结构替换为FPN结构,仅选取两个尺度特征层进行分类与回归.一阶段网络较二阶段网络相比,模型参数和大小较少,算法推理速度更快,虽然检测精度有所下降但能够在较短推理时间下得到较好的检测精度,采用一阶段网络进行交通标志识别其检测速度符合交通标志识别的实时性.

2.2 深度可分离卷积

深度可分离卷积由逐通道卷积和逐点卷积组成.其中逐通道卷积的每个通道只被一个卷积核卷积,一个卷积核只负责特征图中的一个通道,提取单个通道内部的特征,逐通道卷积后得到的特征图通道与原特征图通道保持一致[15],再进行逐点卷积.逐点卷积的每个卷积核大小为C×1×1,将不同通道间的特征信息融合,最终获得新的特征图.

深度可分离卷积得到的特征图与标准卷积的特征图维度大小相同,但是深度可分离卷积的计算量与参数量更少,在保持算法性能的同时兼顾了控制模型的参数量与计算量,提升了算法的效率.

2.3 双向特征金字塔

在多尺度特征融合问题上,Lin等提出了FPN[16]来检测不同大小的物体,将大尺度特征图与小尺度特征图下采样结果进行自上到下合并,同时获得多个尺度的回归和预测结果;Tan等提出了BiFPN[17]的多尺度特征融合方法,在传统的FPN中加入了跳跃连接,还将FPN仅进行自上到下特征融合替换为自上到下和自下到上的特征融合,使网络在不增加计算额外参数的同时融合更多相同尺度的特征,不同尺度特征能够更充分融合,对于只有一个输入的结点将减少此结点对特征网络的贡献.BiFPN有效地融合不同尺度的特征并增加了同一尺度特征的信息融合[18],其结构设计如图1所示.

图1 BiFPN结构设计Fig.1 BiFPN structure design

3 MYOLOv4模型

MYOLOv4采用引入深度可分离卷积的CSPDarknet53-tiny作为特征提取网络,将获得的3个不同尺度特征图利用BiFPN进行多尺度特征融合,对不同尺度分别进行回归和预测,检测出不同大小的目标.损失函数部分选用Complete IoU(CIoU)损失函数作为边界框回归损失,Focal损失函数作为置信度损失和分类损失.

3.1 MYOLOv4结构

MYOLOv4的网络结构如图2所示.

图2 MYOLOv4网络结构Fig.2 MYOLOv4 network structure

由图2可知MYOLOv4的特征提取网络MCSPDarknet53-tiny是采用引入深度可分离卷积的CSPDarknet53-tiny,该网络组成包括3个MCSP残差块和两个深度可分离卷积块,MCSP残差结构块既加深了网络层数又解决梯度消失和梯度爆炸问题,增强卷积神经网络的学习能力[19],深度可分离卷积替换标准卷积让模型保持较高精度同时有效减少模型参数,通过特征提取网络输出的最终特征图F5长宽大小为输入图像的1/32,MCSP残差结构块如图3所示.

图3 MCSP残差块Fig.3 MCSP residual block

YOLOv4-tiny在多尺度特征融合部分只选取了F4和F5两个不同尺度特征输入到FPN结构中,对不同大小目标不敏感,检测精度偏低,不同尺度的特征信息融合较少,MYOLOv4将特征图F3,F4,F5输入BiFPN结构中,进行自上而下与自下而上的多尺度特征融合,并在同尺度特征层引入跳跃连接融合更多的相同尺度特征.YOLOv4 Head将对3个多尺度特征融合后的特征图进行边界框回归和分类,对不同大小的目标更敏感,提升网络检测的能力并降低漏检率.在网络预测阶段,首先将待检测图片输入到CSPDarknet53-tiny特征提取网络,然后将F3,F4,F5分别输入到BiPFN结构进行深层特征和浅层特征融合和相同尺度特征信息融合,最后对3个不同尺度特征图进行预测和回归.

MYOLOv4使用K-means算法聚类生成先验框,获得的先验框让预测框与真实目标的距离更拟合,交并比更大,降低网络模型训练的难度,提升预测框回归的速度与精度.

3.2 MYOLOv4损失函数

YOLOv4的损失函数由边界框回归损失、置信度和分类损失组成,MYOLOv4采用CIoU损失函数作为边界框回归损失.在以往的边界框回归损失评估过程中,Girshick使用平滑L1损失单独对4个边界坐标进行回归,最后根据4个边界单独生成调整后的新的边界框.但是平滑L1损失将4个边界点看做4个独立整体,没有建立它们之间的关联,还没有将IoU数值用作回归计算,存在调整后边界框过大或过小,回归效果较差的问题.IoU是两个边界框相交区域面积与相并区域面积的比值,作为边界框回归准确程度的衡量指标[20],其计算如式(1)所示,其中A与B分别代表预测框面积.

(1)

由Zheng等人[21]提出的DIoU损失函数将IoU、预测框中心点距离等因素考虑在内,DIoU损失函数的定义如式(2)所示.

(2)

其中:b、bgt分别表示预测框中心点和真实目标框中心,ρ2(b,bgt)表示两边框中心点的欧氏距离,C2表示预测框与真实目标框组成最小矩形区域的对角线长度.CIoU损失函数将预测框的长宽值考虑在内,在DIoU损失中加入惩罚项αν,函数定义如式(3)所示:

(3)

为了获得更加准确分类的精度,MYOLOv4将置信度和分类的二分交叉熵损失函数替换为Focal损失函数.Focal损失在交叉熵损失基础上改进,是针对分类过程中存在正负类样本分布不均衡问题提出的.Focal损失减少简单背景样本所占权值让模型专注于前景类物体的检测,避免模型预测时倾向于数量较大的背景类.Focal损失如式(4)所示:

FL(pt)=-αt(1-pt)γlog(pt)

(4)

MYOLOv4损失函数选取CIoU损失作为边界框回归损失,Focal损失作为预测置信度和类别损失,加快预测框回归速度,减少了正负样本不均衡对模型的干扰,提升检测的准确率.

4 实验结果与分析

本文实验环境为Ubuntu16.04系统,显卡为两块NVIDIA GeForce RTX2080Ti,显存为22GB.

4.1 实验数据集

本文实验数据集采用Tsinghua-Tencent 100K Tutorial(TT100K)数据集[23],TT100K数据集是由清华大学与腾讯公司制作,将街景地图图片进行截取和人工标注的交通标志数据集,共包含221类交通标志,训练集中包含6107张图片,验证集中包含3073张图片,选取了不同光照强度和天气条件下的街景图片.TT100K中图像分辨率为2024×2024,在本次实验中将输入图像裁剪为864×864,最后得到3个不同尺度特征图像素大小分别为108×108,54×54,27×27.针对TT100K数据集中存在不同类别样本数目不平衡问题产生的长尾效应,本文对数目较少的类别进行数据扩充,使用添加随机高斯噪声、水平翻转、马赛克数据增强和CutMix数据增强等方法扩充数目较少的类别,CutMix方法将数据集中某一张图像的部分区域剪切掉,并用数据集中另一张图像的该区域去填充原图像中被剪切的区域.马赛克数据扩增将数据集中4张图像进行随机翻转、色域变换、缩放等处理后,对处理后的4张图片依次放在4个角落,得到与原图像大小相同的4张图像混合的新图像的数据增强方法,使用马赛克数据增强后得到的图像如图4所示.最终得到的数据集共有125526张图片.平均每个类别有568张图片.

图4 马赛克数据增强Fig.4 Mosaic data augmentation

4.2 结果与分析

MYOLOv4在其特征提取网络CSPDarknet53- tiny引入深度可分离卷积后,与原特征提取网络相比,网络参数和模型大小明显减少,其对比效果如表1所示.

表1 引入深度可分离卷积前后对比Table 1 Comparison of introducing depthwise separable convolution

由表1可得,引入深度可分离卷积后不仅参数量减少为原来的58%,在mAP方面也得到了0.3%的提升.深度可分离卷积有效地减少了原特征提取网络的参数冗余.

本文还在多尺度特征融合部分,在采用相同特征提取网络MCSPDarknet53-tiny和参数设置的情况下对FPN,PANet,NAS FPN,Fully-Connected FPN(FC FPN),BiFPN等多尺度特征融合网络进行比较,结果如表2所示.

表2 不同多尺度特征融合网络对比Table 2 Comparison of multi-scale feature fusion networks

从表2可知传统FPN结构只进行单向的特征融合,预测精度较低;而PANet结构执行自上而下和自下而上的双向特征融合,并引入额外的参数;Full-Connected FPN 采用全连接形式增加大量的参数,却没有得到较大的精度提升;BiFPN结构采用与PANet结构类似的双向特征融合,将不同尺度特征信息按照一定权值进行累加,在多个尺度特征融合方法中取得最高的精度同时具有较小的参数数量.

表3是MYOLOv4采用不同边界框回归损失函数情况下的精度对比.其中IoU损失对比平滑L1损失能更好建立4个边界点之间的联系,GIoU损失更好地反映出边界框的重合程度,CIoU将边界框中心点对角线长度、边界框长宽和所围最小封闭矩形对角线长度等因素均考虑在内,获得了最高的精度提升.

表3 不同回归损失函数对比Table 3 Comparison of different regression loss functions

本文将MYOLOv4模型在实验数据集上进行40000次迭代训练,其损失值变化如图5所示.

图5 MYOLOv4损失值变化曲线Fig.5 Loss curve of MYOLOv4

由图5可知,损失值伴随模型迭代次数的增加而逐渐衰减,在前6000次迭代过程中,损失数值衰减速度明显.在迭代次数为10000次以后,损失曲线存在少许震荡,损失值整体依旧呈现下降趋势且收敛.

为了测试MYOLOv4算法的性能,本文将MYOLOv4与SSD,RetinaNet,YOLOv4 tiny,Faster R-CNN等算法分别进行对比,不同算法的性能对比如表4所示.

表4 不同算法实验对比Table 4 Comparison of different algorithms

从表4可以看出,虽然MYOLOv4与Faster R-CNN的mAP接近,但在模型大小和检测速度方面拥有显著的优势,较SSD,RetinaNet等一阶段网络相比,检测速度和精度均有一定提升.在检测精度和速度上,MYOLOv4完全超过YOLOv4-tiny,能够较好地满足交通标志识别的速率要求.图6为MYOLOv4在TT100K数据集中的检测效果图.

图6 MYOLOv4检测效果Fig.6 MYOLOv4 detection results

5 结 论

本文提出了一种改进YOLOv4-tiny的交通标志识别方法MYOLOv4,旨在解决现存交通标志识别方法中存在的模型参数过大,识别速度偏慢且识别精度偏低的问题.MYOLOv4使用深度可分离卷积代替标准卷积方法,有效地减少了模型中参数的冗余,在多尺度特征融合部分采用BiFPN结构,加强深层次与浅层次特征信息融合并获得更多同层次特征信息,将Focal损失作为置信度和分类损失,提升模型对困难样本的检测能力和精度.通过实验结果验证与分析可知,MYOLOv4的模型仅为YOLOv4-tiny的58%,mAP提升了3.9个百分点,FPS提升了10,该方法在模型大小,检测精度和检测速度上的表现优于YOLOv4-tiny,能够符合交通标志检测的速率要求.同时本文中MYOLOv4算法在标志识别的精度较二阶段网络相比仍需进一步改进,在保证速度提升的同时达到预期的精度要求仍是未来有待研究的问题.

猜你喜欢

交通标志尺度卷积
基于全卷积神经网络的猪背膘厚快速准确测定
环境史衰败论叙事的正误及其评判尺度
基于FPGA的卷积神经网络加速优化方法
基于双向特征融合的交通标志识别
基于图像处理与卷积神经网络的零件识别
基于深度卷积网络与空洞卷积融合的人群计数
交通标志小课堂
以长时间尺度看世界
9
我们欢迎你!