对于道路交通安全,交通标志至关重要。在真实的驾驶场景中,存在如日光和天气等自然环境引起的光照变化,也存在交通标志的褪色、变形、遮挡等特殊情况,人眼可能会遗漏或错误识别交通标志,导致对前方路况的错误判断,引发交通事故,造成人身财产和车辆损失,甚至威胁生命安全。实时准确的交通标志检测技术作为先进驾驶辅助系统的重要组成部分,能够协助驾驶者保障行车安全,避免危险的发生,在交通安全和自动驾驶等领域具有重要的应用。
近年来,包括机器学习和深度学习在内的基于计算机视觉技术的交通标志检测方法得到了广泛的应用。基于机器学习的交通标志检测方法[1]依赖于人工设计的形状和颜色特征,人工设计的特征不具备良好的表达能力和鲁棒性,在复杂场景中经常对与交通标志具有相似外观的物体进行错误检测,因此远远不能满足实际应用的需求。随着深度学习热潮的到来,卷积神经网络(Convolutional neural networks,CNN)被引入目标检测领域。基于卷积神经网络的深度学习模型依靠深度卷积层来提取更高维且携带更高级语义信息的特征,从而有效地提高了检测性能。
基于深度学习的检测算法分为二阶段算法和一阶段算法。二阶段检测算法经历了R-CNN[2]到Fast-RCNN[3]再到Faster-RCNN[4]的演变,奠定了 “CNN提取特征+区域提议+分类”的二阶段算法基本框架,诸多优秀的研究都基于对Faster-RCNN框架的改进。Li等人[5]提出了基于色彩增强和Hough变换的交通标志定位细化方法,提高了典型交通标志的检测质量和分类精度。Shao等人[6]提出了一种基于简化Gabor小波和最大稳定极值区域的区域提议算法,改进了Faster-RCNN的小目标检测性能。Yang等人[7]通过引入注意力网络代替区域提议网络,优化了交通标志建议区域的生成质量。二阶段算法具有高检测精度,但是相应也存在检测速度慢,计算消耗大等情况。一阶段检测算法为了解决二阶段算法实时性差的问题,利用回归思想,直接将边界框定位问题转化为回归问题,形成“CNN提取特征+分类&定位”的一阶段算法框架,主要以SSD[8]与YOLO[9-11]系列为代表。Zhang等人[12]根据中国交通标志的特点改进了YOLOv2。Li等人[13]提出残差嵌套机制改进Tiny-YOLOv3,实现高实时性的交通标志检测。Jin等人[14]提出多特征融合的增强SSD算法,提升交通标志的检测精度。
在实际应用中,我们希望驾驶辅助系统具有极高的灵敏度,即能够在车辆离交通标志足够远处便对其类别做出识别,为驾驶者或驾驶系统提供更好的预警。这需要检测算法满足高实时性与小目标检测性能。尽管基于卷积神经网络的检测算法相比传统机器学习的算法有着极佳的性能提升,但在小目标的检测上仍存在不小的挑战。
近年来,针对小目标特征难以提取导致小目标检测性能差的问题,研究人员提出了多种特征增强的方法。多尺度特征的融合被证明是一种有效的特征增强机制。FPN[15]提出一种从深层到浅层的融合策略以构建特征金字塔。DSSD[16]对额外层特征进行反卷积以增强上下文信息。FSSD[17]首先执行各尺度的特征融合,然后在融合的特征图上构建额外层。 STDN[18]通过缩放最后一个密集块中的特征图用于检测。FSNet[19]结合注意机制融合不同尺度的特征层,并提出共享预测模块共享特征信息。BiFPN[20]通过多次堆叠特征金字塔模块以获得更高级的特征。
注意力机制是一种新颖的特征增强方法,通过特征的聚合来突出有用特征,抑制无用特征。SENet[21]首次展现了一种有效的注意力机制,根据可学习的通道注意力有效提升特征的表达。CBAM[22]同时采取最大池化和平均池化来聚合特征。ECA-Net[23]重新思考SENet中的通道注意力模块,提出了一种不降低维度的局部跨通道交互策略,将极轻量级的ECA模块嵌入深层CNN网络,提高了网络性能。
由于小目标只由很少的像素组成,一般只占整幅图像5%以下的区域,因此对CNN而言很难提取足够的特征。为了提高小目标的检测性能,通常需要结合图像超分辨率、采用大尺度特征图预测、深浅层特征融合等特征增强方法。然而,这些方法在提升小目标检测性能的同时会带来额外的计算与参数,导致算法实时性的降低。因此,如何在不引入过多额外计算成本,保证实时性的同时提升算法的小目标检测性能以满足真实驾驶辅助系统的需要是亟待解决的问题。
针对上述问题,我们选择以速度著称的MobileNetv2-SSD[24]作为基础检测网络,结合多尺度像素特征融合与高效通道注意力机制增强小目标特征质量,构建了一种高实时性的小交通标志检测算法。
本文的贡献总结如下:
1) 提出一种多尺度像素特征融合策略,通过对骨架网络MobileNetv2的深层特征图进行像素重排合成融合特征图,相较于其他上采样方式像素重排能够在不增加任何额外参数和计算的情况下增强特征图携带的小目标信息。
2) 为了突出有用特征通道并抑制贡献小的特征通道,我们在检测层前引入高效通道注意力模块,对特征通道按重要程度分配权重,有效提升检测性能。
3) 提出一种具备高实时性和鲁棒性的交通标志检测模型,在长沙理工大学中国交通标志检测数据集(CSUST Chinese traffic sign detection benchmark,CCTSDB)上,对我们的模型进行了验证,性能可媲美当前流行的交通标志检测模型,能够满足实际应用需求。
SSD算法是一种兼顾精度与速度的单阶段目标检测算法,它采用了回归思想,能够直接从图像中预测目标类别和所在位置。相较于R-CNN系列的两阶段目标检测算法,SSD算法有着更为简化的网络结构和更快的检测速度,适合应用于有实时性需求的检测任务。
SSD的框架由前端和后端两部分组成。框架的前端采用深度卷积神经网络作为骨架网络,提取图像特征。后端采用另一个小型卷积神经网络作为检测网络,产生多个尺度的特征图并进行检测。
原始SSD中的骨架网络采用VGG-16网络,随着CNN研究的进展,用ResNet-101、DenseNet-169、MobileNetv1&v2等网络作为骨架网络的SSD算法被提出,前两者实现了更优的检测精度,MobileNets系列网络则大幅提升了检测效率。
MobileNetv2是专门针对移动端及嵌入式设备等资源受限环境而打造的轻量级神经网络体系结构。它沿用了MobileNetv1中使用的高效深度可分离卷积,并且构建了一种新颖的卷积层模块:线性瓶颈倒置残差块。
图1(a)所示的传统瓶颈残差块中先采用1×1卷积将通道降低t倍,经3×3普通卷积后再用1×1卷积将通道恢复,目的是降低3×3卷积层的计算量,是一种先降后升的结构。而图1(b)所示的倒置残差块中使用了3×3深度卷积来代替普通卷积,由于深度卷积只需要对单通道特征图进行卷积操作,因此本身所需的计算量很低,通过1×1卷积进行降通道的作用不大,反而会导致卷积提取的特征信息不足。因此,倒置残差块中采用与传统瓶颈残差块相反的结构,先升后降,并在降通道后使用线性激活来避免ReLu6激活函数对信息的损失,保证深度卷积层提取的特征信息量。通过线性瓶颈倒置残差块结构设计,MobileNetv2在低运算量和内存占用下取得了较好的效果。
图1 传统瓶颈残差块与线性瓶颈倒置残差块示意图
Fig.1 Schematic diagram of traditional bottleneck residual block and inverted residual block with linear bottleneck
考虑到真实场景中的交通标志检测对实时性要求较高,我们选择以MobileNetv2-SSD作为基础检测网络。但由于其注重高效的卷积操作而导致的精度不足问题,我们结合多尺度像素特征融合和高效通道注意力思想对其进行改进,在增加极少参数且几乎不影响速度的情况下,提高检测性能,构建一个高精度的实时交通检测算法。
本节将介绍算法的整体框架与流程,并给出多尺度像素特征融合模块与高效通道注意力模块的详细设计方法。
基于多尺度像素特征融合的实时交通标志检测算法的整体框架如图2所示。首先,将300×300分辨率图像输入到MobileNet-v2骨架网络中提取38×38、19×19、10×10三个尺度特征图。其次,将这三个尺度特征图输入至多尺度像素特征融合模块,经过像素重排拼接成38×38的融合特征图。随后,采用大小为3×3,步幅为2的卷积核对38×38融合特征图进行下采样,依次生成19×19、10×10、5×5、3×3、1×1特征图。此后,使六尺度特征图分别经过高效通道注意力模块,对特征通道按重要程度分配权重后送入SSD检测层来预测边界框的位置和对象的类别。最后,通过非极大值抑制(Non-Maximum Suppression,NMS)消除冗余边界框并获得最终检测结果。
为了同时利用到MobileNet-v2骨架网络中提取的浅层特征图中的细节信息与深层特征图中的语义信息,我们提出了多尺度像素特征融合模块。具体的做法是将10×10与19×19的深层特征图通过像素重排方式进行上采样,得到携带充足语义信息的38×38特征图,再将其与携带丰富浅层细节信息的骨架网络中的38×38特征图进行拼接操作(concatenate),得到兼具语义信息与细节信息的融合特征图。
图2 基于多尺度像素特征融合的实时小交通标志检测算法整体框架
Fig.2 Overall framework of real-time small traffic sign detection algorithm based on multi-scale pixel feature fusion
像素重排是在图像超分辨率领域常用的一种方法,通过压缩特征图中的通道数来扩展宽度和长度,如图3所示。其本质是将通道数为r2·C,长宽为H×W的低分辨率特征图中处于相同像素位置的特征按特定顺序重新排列,得到通道数为C,长宽为rH×rW的高分辨率特征图,其中r表示上采样因子。
图3 像素重排
Fig.3 Pixel shuffle
像素重排的数学公式可以表示为如下形式:
(1)
其中,IHR表示高分辨率图像,ILR表示低分辨率图像,mod(·,r)表示激活模式。
不同于插值与反卷积的上采样方式,像素重排不会引入额外的参数与计算消耗,同时可以解决插值和反卷积的一些人工痕迹或棋盘效应的问题。
我们的算法在生成融合特征图时采用的是将上采样得到的特征图与骨架网络提取的特征图进行通道拼接的方法,导致各通道融合特征图携带的信息具有较大的差异。为了选择性地突出有效特征通道并抑制贡献小的特征通道,我们将六个尺度的待检测特征图通过高效通道注意力模块对特征通道按重要程度分配权重后进行检测,有效提升检测性能,其原理如图4所示。
图4 高效通道注意力模块
Fig.4 Efficient channel attention module
基于不同通道的空间特征应具有一定的相关性,如果某一通道与其相邻通道相关性高,也就说明该特征包含更多主体特征,我们采用了能够学习通道之间特征相关性的高效通道注意力模块。在高效通道注意力模块中,为了突出通道之间的特征相关性,对特征通道维度进行压缩,将H×W×C的原始特征通道经过全局池化转化为1×1×C,得到通道维度上的全局特征。我们利用卷积核大小为k的一维卷积来对每个通道与其k个邻域通道之间进行信息提取整合以获取通道间的相关性参数Li:
(2)
其中,αj表示一维卷积核参数,表示特征通道Ci的k个邻域通道。Li越大,表明通道Ci与间的相关性越高,即Ci包含的有效信息量越多。为了使网络关注信息量多的通道特征,我们将Li通过Sigmoid激活函数得到每个通道的激活值,作为通道的权重ωi:
ωi=σ(Li)
(3)
其中,σ表示Sigmoid激活函数。最后将权重与原通道特征值相乘,得到加权后的输出特征通道。加权后的输出特征通道有利于突出目标的关键特征,弱化非重要特征。
长沙理工大学中国交通标志检测数据集CCTSDB包含15724张来自城市道路和高速公路等场景收集的多种分辨率图像,其中包括原始图像和进行横向拉伸、加椒盐噪声以及调整亮度后的图像。CCTSDB中将中国交通标志分为三类:蓝色的强制标志,黄色的危险标志,以及红色的禁止标志。
本文中选取CCTSDB中不同场景下相似度低、差异性大的4000张图像作为训练集,并在400张测试集图像上验证算法的性能。
我们实验的硬件环境选用CPU为Intel i7- 6850K,显卡为NVIDIA GTX 1080Ti的服务器,在Ubuntu 16.04操作系统上进行算法模型的训练和测试。深度学习框架为PyTorch 1.1.0。
为了验证算法中各模块的有效性,我们进行了多组对照实验。为保证实验的公平性,我们对各组网络模型采用相同的训练参数设置。输入图像分辨率统一为300×300,批次大小设为16,迭代次数为120000。优化器选用SGD,动量为0.9,权重衰减为10-4,初始学习率设为10-3。
本实验中,对交通标志检测算法的评价标准分为三项:准确性(mAP),模型大小与速度。
首先,我们设置对照实验的各组网络模型。由于原始MobileNetv2-SSD中使用19×19、10×10、5×5、3×3、2×2、1×1特征图用于预测,而我们希望使用38×38特征图以优化小目标检测性能,因此我们对MobileNetv2-SSD的检测层进行修改,删除2×2特征图并加入38×38特征图。我们将修改后的MobileNetv2-SSD作为基准模型。我们另外设置了6组在基准模型中添加不同模块的新网络模型作为实验组。前3组对比像素重排、双线性插值、反卷积三种上采样方式进行特征融合的性能差异。4、5组对比SE模块与高效通道注意力模块两种注意力机制的效果。相较于基准模型,模型1添加多尺度像素特征融合模块,模型2添加双线性插值方式的特征融合模块,模型3添加反卷积方式的特征融合模块。模型4添加SE模块,模型5添加高效通道注意力模块,模型6同时添加多尺度像素特征融合模块与高效通道注意力模块以验证两种策略共同作用下对模型性能的提升。采用相同的参数设置在CCTSDB上对以上模型进行训练,评估各模块的效果,对比结果如表1所示。对比基准模型与模型1可以看出,添加多尺度像素特征融合模块在仅增加1.3M模型大小与0.004 s检测时间的情况下得到了3.3%的mAP提升,验证了多尺度像素特征融合模块能够有效的实现特征增强,提升检测准确率。模型1、模型2和模型3分别采用像素重排、双线性插值和反卷积的上采样方式构建特征融合模块。对比这3组模型可以看出,由于像素重排能够在上采样的同时进行特征通道的压缩,减少网络参数。因此模型1拥有最快的速度与最精简的模型大小。此外,与双线性插值计算上采样特征图像素值和反卷积通过补0来扩大特征图尺寸的方式不同,像素重排的上采样特征图包含的全部信息都来自原特征图,保证了特征图携带信息的高质量。因此,像素重排在压缩了特征通道数的情况下,依然能够有效的提升检测性能,在实验结果中也验证了这一点。模型1达到了92.8%的mAP,仅以0.1%的微小差距低于模型2,并高出模型3约0.4%。我们认为,对于实时检测算法,模型1拥有最佳的速度与精度间的平衡。对比基准模型、模型4与模型5,可以看出SE模块与高效通道注意力模块都能够有效的提升检测准确性。不同的是,SE模块中由于降维以及全连接层的使用,会引入较多额外网络参数并影响网络运算效率,因此加入SE模块的模型4增加了0.3M的模型大小并略微降低了运算速度。而高效通道注意力模块中避免了降维,并采用局部的一维卷积层代替全连接层,能够在极少增加参数的情况下嵌入网络模型,高效的关注特征通道的重要性。引入高效通道注意力模块的模型5几乎没有对模型大小和运算速度产生影响,因此具有更高的应用价值。模型6通过同时添加多尺度像素特征融合模块与高效通道注意力模块从而取得了最佳的检测性能。
表1 对照实验结果
Tab.1 Results of control experiment
模型模型大小/M速度/smAP/%基准模型16.30.01889.5模型117.60.02292.8模型218.20.02592.9模型318.80.02792.5模型416.60.01989.7模型516.30.01889.7模型617.60.02293.2
表2 CCTSDB上各模型对比实验结果
Tab.2 Comparison of experimental results of various models on CCTSDB
模型图像分辨率模型大小/M速度/sAP/%禁止强制危险mAP/%YOLOv2416×416202.40.02410089.783.090.9YOLOv3416×416247.10.03510092.591.394.6FSSD300×300128.50.04299.190.588.992.8MobileNetv1-SSD300×30022.10.01592.283.676.784.8PeleeNet304×30421.30.01693.183.479.385.3本文算法300×30017.60.02299.090.789.893.2
图5 本文算法模型,YOLOv2和MobileNetv1-SSD 在CCTSDB上的检测效果图
Fig.5 Detection examples of our model, YOLOv2 and MobileNetv1-SSD on CCTSDB
根据对照实验的结果,我们选用模型4作为本文的算法模型,并与几个当前先进的交通标志检测算法模型进行对比实验。其中,YOLOv2、YOLOv3以及FSSD为大型网络,MobileNetv1-SSD和PeleeNet为轻量级网络,实验结果如表2所示。对比三种大型网络,本文算法模型在大小、精度和速度上全面超越了YOLOv2与FSSD。本文算法模型的mAP仅低于YOLOv3约1.4%,精度性能接近,但模型大小仅为YOLOv3的1/15,并且检测速度达到了YOLOv3的1.6倍。对比两个轻量级网络MobileNetv1-SSD和PeleeNet,本文算法模型拥有最小的模型大小,仅为17.6M,有利于应用于资源受限的移动端、嵌入式设备中。本文算法模型在速度方面稍落后于其他轻量级网络,但0.022 s的检测速度依然具备实时性。在精度上本文算法模型大幅超越MobileNetv1-SSD 和PeleeNet,mAP分别有8.4%和7.9%的巨大优势。图5展示了YOLOv2、MobileNetv1-SSD以及本文算法模型的检测效果图。对于禁止类与强制类的小交通标志检测,MobileNetv1-SSD能够识别但定位不太准确,YOLOv2与本文算法模型能够精准识别并定位。而在检测危险类小交通标志时,MobileNetv1-SSD无法检测到目标,YOLOv2对目标的定位有偏差,本文算法则具备较高定位精度。
真实的驾驶环境中要求交通标志检测系统同时具备极高的实时性与鲁棒性。为此,本文以MobileNetv2-SSD为基础检测网络,提出一种基于像素重排的多尺度像素特征融合模块,并在网络的检测层引入高效通道注意力模块。通过在网络结构中嵌入这两种模块实现特征的增强,在引入少量额外参数和计算成本的情况下,保证算法依然具备高实时性并提升对小目标的检测性能。在CCTSDB上对本算法模型进行了性能评估。模型大小仅为17.3M,适合在资源受限的移动端、嵌入式设备中配置。精度达到93.2%的mAP,能够媲美大型网络。检测速度达到0.022 s,具备极高的实时性。实验结果表明,本文算法模型能够准确实时地检测真实环境下的交通标志。
[1] 朱国康, 王运锋. 基于多特征融合的道路交通标志检测[J]. 信号处理, 2011, 27(10):1616-1620.
Zhu Guokang, Wang Yunfeng. Based on the fusion of features traffic sign detecting[J]. Signal Processing, 2011, 27(10): 1616-1620.(in Chinese)
[2] Girshick R, Donahue J, Darrell T, et al. Rich Feature Hierarchies for Accurate Object Detection and Semantic Segmentation[C]∥Computer Vision and Pattern Recognition, 2014: 580-587.
[3] Girshick R. Fast R-CNN[C]∥International Conference on Computer Vision, 2015: 1440-1448.
[4] Ren S, He K, Girshick R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[C]∥Neural Information Processing Systems, 2015: 91-99.
[5] Li J, Wang Z. Real-Time Traffic Sign Recognition Based on Efficient CNNs in the Wild[J]. IEEE Transactions on Intelligent Transportation Systems, 2019, 20(3): 975-984.
[6] Shao F, Wang X, Meng F, et al. Improved Faster R-CNN Traffic Sign Detection Based on a Second Region of Interest and Highly Possible Regions Proposal Network[J]. Sensors, 2019, 19(10).
[7] Yang T, Long X, Sangaiah A K, et al. Deep detection network for real-life traffic sign in vehicular networks[J]. Computer Networks, 2018: 95-104.
[8] Liu W, Anguelov D, Erhan D, et al. SSD: Single Shot MultiBox Detector[C]∥European Conference on Computer Vision, 2016: 21-37.
[9] Redmon J, Divvala S K, Girshick R, et al. You Only Look Once: Unified, Real-Time Object Detection[C]∥Computer Vision and Pattern Recognition, 2016: 779-788.
[10]Redmon J, Farhadi A. YOLO9000: Better, Faster, Stronger[C]∥Computer Vision and Pattern Recognition, 2017: 6517- 6525.
[11]Redmon J, Farhadi A. YOLOv3: An Incremental Improvement[J]. arXiv: Computer Vision and Pattern Recognition, 2018.
[12]Zhang J, Huang M, Jin X, et al. A Real-Time Chinese Traffic Sign Detection Algorithm Based on Modified YOLOv2[J]. Algorithms, 2017, 10(4).
[13]李旭东, 张建明, 谢志鹏, 等. 基于三尺度嵌套残差结构的交通标志快速检测算法[J]. 计算机研究与发展, 2020, 57(5):1022-1036.
Li Xudong, Zhang Jianming, Xie Zhipeng, et al. A fast traffic sign detection algorithm based on three-scale nested residual structures[J]. Computer Research and Development, 2020, 57(5): 1022-1036.(in Chinese)
[14]Jin Y, Fu Y, Wang W, et al. Multi-Feature Fusion and Enhancement Single Shot Detector for Traffic Sign Recognition[J]. IEEE Access, 2020: 38931-38940.
[15]Lin T, Dollar P, Girshick R, et al. Feature Pyramid Networks for Object Detection[C]∥Computer Vision and Pattern Recognition, 2017: 936-944.
[16]Fu C, Liu W, Ranga A, et al. DSSD: Deconvolutional Single Shot Detector[J]. arXiv: Computer Vision and Pattern Recognition, 2017.
[17]Li Z, Zhou F. FSSD: Feature Fusion Single Shot Multibox Detector[J]. arXiv: Computer Vision and Pattern Recognition, 2017.
[18]Zhou P, Ni B, Geng C, et al. Scale-Transferrable Object Detection[C]∥Computer Vision and Pattern Recognition, 2018: 528-537.
[19]Jiang J, Xu H, Zhang S, et al. FSNet: A Target Detection Algorithm Based on a Fusion Shared Network[J]. IEEE Access, 2019: 169417-169425.
[20]Tan M, Pang R, Le Q V, et al. EfficientDet: Scalable and Efficient Object Detection[J]. arXiv: Computer Vision and Pattern Recognition, 2019.
[21]Hu J, Shen L, Albanie S, et al. Squeeze-and-Excitation Networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019: 1-1.
[22]Woo S, Park J, Lee J, et al. CBAM: Convolutional Block Attention Module[C]∥European Conference on Computer Vision, 2018: 3-19.
[23]Wang Q, Wu B, Zhu P, et al. ECA-Net: Efficient Channel Attention for Deep Convolutional Neural Networks[J]. arXiv: Computer Vision and Pattern Recognition, 2019.
[24]Sandler M, Howard A, Zhu M, et al. MobileNetV2: Inverted Residuals and Linear Bottlenecks[C]∥Computer Vision and Pattern Recognition, 2018: 4510- 4520.
Reference format: Ren Kun, Huang Long, Fan Chunqi, et al. Real-Time Small Traffic Sign Detection Algorithm Based on Multi-Scale Pixel Feature Fusion[J]. Journal of Signal Processing, 2020, 36(9): 1457-1463. DOI: 10.16798/j.issn.1003- 0530.2020.09.010.
任 坤 女, 1973年生, 陕西人。北京工业大学信息学部讲师, 博士, 主要研究方向为计算机视觉、计算摄像学。
E-mail:renkun@bjut.edu.cn
黄 泷 男, 1995年生, 北京人。北京工业大学信息学部硕士研究生, 主要研究方向为计算机视觉、目标检测。
E-mail:kenzo@emails.bjut.edu.cn
范春奇 男, 1994年生, 河北人。北京工业大学信息学部硕士研究生, 主要研究方向为计算机视觉、图像处理。
E-mail:fanchunq@emails.bjut.edu.cn
高学金 男, 1973年生, 河北人。北京工业大学信息学部教授, 博士, 主要研究方向为复杂系统建模、监测与优化控制。
E-mail:gaoxuejin@bjut.edu.cn