融合注意力机制的深层次小目标检测算法

2022-04-13 02:40赵鹏飞谢林柏
计算机与生活 2022年4期
关键词:浅层卷积注意力

赵鹏飞,谢林柏,彭 力

物联网技术应用教育部工程研究中心(江南大学 物联网工程学院),江苏 无锡214122

目标检测作为计算机视觉的基础任务之一,目前在自动驾驶、医学病灶检测、智能安防等方面得到广泛应用。近年来基于卷积神经网络的目标检测算法不断发展,总体可以分为两阶段(two-stage)检测算法与一阶段(one-stage)检测算法。两阶段检测算法如Faster R-CNN、R-FCN(region-based fully convolutional network)等,这类算法是基于候选区域的算法,首先使用区域提议网络(region proposal network,RPN)生成候选区域,然后通过对候选区域进行分类和回归,得到最终检测结果;一阶段检测算法如SSD(single shot multibox detector)、YOLO(you only look once)、YOLOv2、YOLOv3等,这类算法能够直接对目标进行定位,输出目标的类别检测信息。

目前的目标检测算法对于中大目标检测已经取得较好的检测效果,但对小目标检测的效果不佳,这是由于小目标背景复杂度高,其边缘信息不显著以及容易遭遇光照遮挡等。因此针对小目标的检测能力仍需进一步提高。SSD 算法通过多尺度特征图进行预测,在精度与效率上均有不错的提升,但对于小目标检测效果较差。为了提高SSD 算法对小目标的检测精度,Li 等提出了FSSD(feature fusion single shot multibox detector)模型,通过在SSD 算法的基础上新增一个轻量级的特征融合模块来生成一个全新的特征金字塔检测模型,改善了对小目标的检测效果。Liu等提出了RFB-Net(receptive field block net)模型,通过构建多分支卷积层的感受野模块,并使用空洞卷积代替原有的卷积操作来扩大特征图的感受野大小,进一步提高了对小目标检测能力。陈幻杰等对SSD 算法的高层与低层特征采取不同的特征提取方法来改善对中小目标的检测效果。梁延禹等利用非局部通道注意力整合全局空间信息来增强浅层特征中的小目标的上下文语义信息,有效提高对小目标的检测准确率。

针对目前算法对于小目标检测能力不足的问题,在SSD 算法的基础上提出一种融合注意力机制的深层次小目标检测算法。首先,针对骨干网络特征提取能力不足的问题,选取网络Darknet-53 替换VGG 网络并改进网络的残差结构来提高骨干网络的特征提取能力,减少小目标特征信息的丢失。其次,在多尺度特征图检测阶段,通过并联多个不同的空洞卷积构成特征增强模块,在不增加参数量的同时有效增大卷积核的感受野,从而丰富特征图的多尺度语义信息。此外,采用一种基于高效通道注意力模块的特征融合策略对不同尺度大小的特征图进行特征融合。该方法使用双线性插值上采样的方法放大深层特征图,再使用通道注意力机制对不同特征通道进行加权,将深层卷积层中的丰富的语义信息融入到浅层卷积层中,有效提高特征融合下对语义信息的利用率,从而改善浅层语义特征信息不足的问题。实验结果表明,提出的深层次小目标检测算法在保证一定检测速度的前提下对于模型的检测精度有了明显的提升。

1 相关理论

SSD 算法基于回归思想和Anchor 机制,采用多尺度特征金字塔检测方式进行预测,其整体框架结构如图1 所示。特征提取网络为VGG-16,不断向下采样形成尺度不断减小的多个特征图。SSD 算法设计了6 个尺度的特征图来检测目标对象,利用深层特征图尺寸小、感受野大和语义特征信息丰富的特点来检测大目标;利用浅层特征图尺寸大、感受野小和细节特征信息丰富的特点来检测小目标。针对单张输入图像,SSD 算法通过长宽比不同的候选框来对目标的位置与类别进行预测,最后利用非极大值抑制(non-maximum suppression,NMS),生成最终的检测结果。

图1 SSD 算法框架Fig.1 SSD algorithm framework

2 本文算法

算法的整体框架结构如图2 所示,其中Conv 代表卷积操作,BN(batch normalization)为批归一化处理,Mish 为激活函数,Res unit 为骨干增强网络中的残差单元,FEM(feature enhancement module)为特征增强模块,Feature Fusion 为提出的一种特征融合策略,ECAM(efficient channel attention module)是高效通道注意力模块。模型整体结构由改进后的骨干增强网络I-Darknet53 与多尺度浅层特征增强网络组成。骨干增强网络中CBM 模块表示Conv+BN+Mish,Res 表示残差单元,其中ResX 表示个残差单元级联。由图中可知,从骨干增强网络的第三、四、五个卷积块提取的3 个特征图尺寸大小分别为38× 38、19×19、10×10,接着继续向下采样最终提取6 个特征图进行多尺度预测,得到最终检测结果。

图2 本文整体框架Fig.2 Proposed overall framework

2.1 骨干增强网络

选取兼顾精度与效率的Darknet-53 代替VGG16网络作为骨干网络进行特征提取。Darknet-53 由残差单元堆叠而构成,残差结构可以解决由于网络深度加大训练过程中出现的梯度消失与爆炸以及准确率下降的问题。但随着网络深度的增加,模型运算量也会增加,并且网络在增加深度的同时往往没有充分利用卷积核的通道信息。因此为了提高骨干网络对通道特征信息的充分提取能力,提出分组残差结构替换初始残差结构形成骨干增强网络,如图3 所示。该分组残差结构通过更小的卷积组代替残差结构中3×3 卷积,该模块将1×1 卷积后的卷积层按通道分为个通道组,分别用,,…,x表示,每一组的宽和高相同,通道数为输入特征图的1/。每一组可以用式(1)表示:

图3 I-Darknet53 结构图Fig.3 Structure of I-Darknet53

其中,为3×3 卷积核,为尺度控制参数,设置=4。该模块的输出是包含不同感受野大小的组合,相比于单个的3×3 卷积核,该结构能扩展网络宽度,提取更多的全局信息。该结构通过连接在同一层卷积层内的不同特征通道,交织不同特征通道的特征信息,能够显著提高对通道特征信息的利用,从而提高骨干网络的特征提取能力。为减少模型参数量,避免增加算法运行时间,只将每组残差块的最后一个残差结构替换为所提出的分组残差连接结构。

卷积之后,添加非线性激活函数能让神经网络学习到更多的非线性关系。选用Mish激活函数代替骨干网络中的Leaky ReLU 激活函数,两种激活函数图像如图4 所示,Mish 激活函数无正向边界,可以避免梯度饱和,曲线处处光滑,在绝对值较小的负值区域允许一些负值,有利于特征信息流动,提高网络的学习能力。Mish 激活函数的表达式为:

图4 激活函数曲线Fig.4 Activation function curve

2.2 浅层特征增强网络

如图5 所示,对于不同尺度的特征图进行可视化,可以看出浅层特征图有较多的细节特征,轮廓清晰,但语义信息较弱。而深层特征图不断向下采样,逐渐丢失了目标的细节特征,但语义信息比较丰富,能够提取抽象的特征。因而本文提出获取浅层增强特征的小目标检测模型,简称浅层特征增强网络。从图2 的整体结构框图看,浅层特征增强网络主要由特征增强模块与高效通道注意力模块指导下的特征融合模块组成。

图5 特征图可视化Fig.5 Visualization of feature map

为了丰富浅层特征图的多尺度特征信息,提出特征增强模块(FEM),如图6 所示。特征增强模块由卷积核大小为3×3,扩张率=1,2,4 的多尺度空洞卷积与1×1 卷积组成。多尺度空洞卷积级联可以在几乎不增加网络参数量的情况下充分扩大特征图的感受野,最后通过1×1 卷积将特征信息进行融合,形成特征信息增强的新特征图。提取的特征图通过与感受野大小不同的卷积核卷积后再进行融合能够有效提高网络对多尺度特征的提取能力,从而减少卷积过程中的语义与细节信息损失,有利于丰富浅层特征图的特征信息和对小尺度目标的检测。

图6 特征增强模块Fig.6 Feature enhancement module

注意力机制在目标检测、语义分割以及姿态估计等不同深度学习任务中得到广泛应用,通过对卷积核提取的不同特征通道进行深度建模,从而增强重要特征信息的表达能力。Hu等提出了挤压及激励注意力模块(squeeze-and-excitation networks,SENet),通过对不同特征通道的依赖关系建模,自适应地对特征通道进行加权,增强目标语义信息的特征表达。Woo 等结合通道与空间关系,提出了特征表征能力更强的混合域卷积注意力模块(convolutional block attention module,CBAM)。在SENet的基础上,Wang等提出一种高效通道注意力模块(ECAM),如图7所示,该注意力模块通过全局平均池化(global average pooling,GAP)操作和全连接层FC 来捕获特征图的每个特征通道与其(<9)个相邻特征通道的依赖关系,快速有效地提高对目标特征的表示。具体过程如下所示。

首先通过输入特征块的每个通道c进行GAP 操作,获得全局感受野g

接着在不减少通道数的情况下,通过卷积核大小为(<9)的一维卷积1d进行跨通道交互学习,再经过Sigmoid 函数,就能得到每个通道c的权重w

最后将权重w与输入特征块进行逐通道相乘得到一个对目标语义信息表征能力更强的特征块。

图7 中的一维卷积1d中卷积核大小为奇数,且<9,故选取跨通道参数值为3、5、7 进行消融实验对比,=3 时模型取得了最佳的检测精度。

图7 高效通道注意力模块Fig.7 Efficient channel attention module

为了可视化所提高效通道注意力模块对于小目标特征信息的提升效果,使用Grad-CAM方法来直观地展示不同注意力模块对浅层特征图检测小目标的影响。本文选取两类典型的注意力模块挤压及激励注意力SE 模块、卷积注意力CBAM 模块与本文的高效通道注意力ECAM 模块进行热力图实验对比。图8 为加入不同的注意力模块对尺寸大小为38×38的融合后的特征图的热力图对比,图中热力图的红色部分越深说明对这部分的关注度越高。从图8 可以看出,本文选取的ECAM 注意力模块对模型的提升效果优于SE 模块与CBAM 模块,这是由于ECAM注意力模块能够更深层次地显著学习特征图不同特征通道的重要性,加权强化目标的重要信息,弱化抑制无关的不重要信息,从而加强浅层对小目标特征的感知表征能力。由于ECAM 模块只是通过捕获特征图的每个通道及其个邻域通道之间的相互依赖关系,相较于SE 模块与CBAM 模块用更复杂的计算量来进行通道改善,ECAM 模块更加轻量化。

图8 热力图的可视化Fig.8 Visualization of heat maps

针对浅层特征图语义信息不足的问题,提出一种高效通道注意力模块引导下的特征融合策略。如图9 所示,通过结合高效通道注意力模块来融合不同层次特征图的特征信息从而增加浅层特征图的语义信息。浅层特征基础融合的工作原理如式(6)所示:

图9 特征融合模块Fig.9 Feature fusion module

其中,、、表示需要进行融合的特征图,、、表示在融合前进行的变换函数,先将特征图通过特征增强结构得到尺寸大小以及通道数都不变的特征图,为了减少计算量,将、特征图通过1×1 卷积进行通道降维,使通道数都变为256 个,接着对其分别进行2 倍和4 倍上采样,这里使用双线性插值上采样的方式来代替反卷积上采样从而减少算法的计算量,使得输出的特征图、尺寸统一为38×38。 φ表示特征融合操作,X表示获得的基础融合特征图,通过Concat(concatenate)的特征融合方式对特征图、、进行特征图拼接操作得到的特征图通道数为768,尺寸大小为38×38,再经过3×3 卷积减小上采样的混叠效应,最终得到浅层增强特征图。所提的特征融合策略中加入BN 层进行批归一化处理有利于加快模型收敛和训练速度,防止梯度消失,提高网络的泛化能力。BN 层后面加入ReLU 激活操作有利于神经网络学习到更多非线性关系。但由于Concat 操作仅仅是在通道维数上对特征进行拼接,忽略了每个通道之间的相互关系,这种特征融合方式不能反映特征通道之间的重要性,因而在Concat 融合操作之后加入了高效通道注意力ECAM 模块。ECAM 模块对不同特征通道加权,充分挖掘小目标的上下文语义特征信息,从而对浅层与深层进行更深度的特征融合。实验结果表明所提特征融合策略能显著提高模型对小目标的检测精度。

3 实验结果与分析

3.1 实验平台与参数设置

实验在Python3.6 以及Pytorch1.2 的深度学习框架上进行,使用的操作系统为Ubuntu16.04,使用CUDA9.0 和cuDNN7.0 进行加速GPU 运算,GPU 由4块英伟达GTX1080Ti(11 GB 显存)组成。

模型训练采用随机梯度下降算法(stochastic gradient descent,SGD)对网络模型的权重进行更新优化,算法参数设置批次batch size 大小为32,初始学习率为0.001,学习率衰减权重为0.000 5,动量因子取0.9,最大迭代次数设置为400 000。

3.2 实验数据

实验数据集为PASCAL VOC数据集和HRRSD航空遥感数据集。PASCAL VOC 数据集包含PASCAL VOC2007 和PASCAL VOC2012,总共20 类目标,训练的图片总共16 551 张,测试图片4 952 张。HRRSD 航空遥感数据集是中国科学院制作的遥感图像目标数据集,包括13 类目标,总共21 761 张图片。

3.3 评价指标

使用mAP(mean average precision)作为算法检测精度的评价指标,每秒处理图像的帧数(frame per second,FPS)作为检测速度的评价指标。mAP 定义为所有类别平均准确率(average precision,AP)的平均值。平均准确率定义为:

其中,代表召回率,代表准确率。

3.4 实验结果分析

实验通过联合训练VOC2007 与VOC2012 数据集300 000 次迭代,并在VOC2007 测试集上进行测试得到实验结果,当输入图片尺寸为300×300 时,模型的检测精度mAP 为80.2%;输入图片扩大为512 ×512 时,模型的检测精度mAP 为82.3%。如表1 所示,将改进后的算法与当前一系列目标检测算法在VOC2007 测试集上进行比较,所提算法较SSD 算法的检测精度分别提高了3.0 个百分点与2.8 个百分点;在输入图片尺寸为300×300 时,较Faster-R-CNN 算法的mAP提高了7.0个百分点;与骨干网络为Darknet-19 的YOLOv2 相比,本文算法的mAP 提高了3.4 个百分点;与骨干网络为Darknet-53的YOLOv3相比,mAP提高了0.9 个百分点;与BPN(bidirectional pyramid networks)相比,检测精度几乎持平,但所提算法的检测速度明显优于BPN 算法。所提算法在输入图片尺寸为300×300 和512×512 的检测速度为48 frame/s和32 frame/s,虽然检测速度较SSD 稍慢,但准确率得到了较大提升,仍然具有实时性。

表1 在VOC2007 测试集上不同算法的对比Table 1 Comparison of different algorithms on VOC2007 test set

为了进行更详细的分析,本文从20 类不同的目标类别中选取了5 类具有代表性的小目标种类。表2为不同算法在VOC 数据集上对于这5 类小目标的检测效果。从表2 可以看出所提算法的小目标平均检测准确率明显优于其他算法。相比于SSD 算法,模型对5 种小目标的平均检测精度分别提高了6.8 个百分点与10.2 个百分点。明显可以看出对于瓶子、椅子以及盆栽这些尺度较小的目标提升效果显著,从而更加验证了所提算法在小目标检测上的有效性。

表2 在VOC2007 数据集上的小目标检测结果对比Table 2 Comparison of small object detection results on VOC2007 dataset %

图10 为所提算法与目前性能优异的检测算法的散点图,纵坐标为检测精度mAP 值,横坐标表示检测速度值。Faster R-CNN、R-FCN、YOLOv2、DSSD(deconvolutional single shot detector)算法是在Titan X测试的,其余算法是在1080Ti 上测试的。从图10 中可以看出,所提算法的检测性能优于其他的目标检测算法。

图10 不同检测算法的速度和精度的散点图Fig.10 Scatter plot of speed and accuracy of different detection algorithms

如图11 所示,所提算法与SSD 算法在PASCAL VOC2007 测试集上选取较难检测到的小目标图片进行检测结果对比。其中,图11 上面为SSD 算法的检测结果,下面为所提算法的检测结果。从图11 明显看出,所提算法相比SSD 算法,取得了更好的小目标检测效果,可以有效地减少小目标误检、漏检以及被遮挡的情况。从图11 中的检测对比图可以看出,较难检测到的小尺度目标船只以及被遮挡住的小绵羊都能更多更准确地检测出来,更进一步证明了本文采取的有效的改进方法通过增强浅层的语义上下文特征信息,提高了模型对小目标的检测性能。

图11 SSD 算法与本文算法在PASCAL VOC2007 测试集上的定性对比Fig.11 Comparison between SSD algorithm and our algorithm on PASCAL VOC2007 test set

航空遥感图像中多为方向错乱、背景复杂的小目标。图12 是SSD 算法与本文算法在遥感数据集上的定性检测效果对比图。表3 是各算法在航空遥感数据集中选取的4 类小目标的检测性能对比。从表3的结果可以看出,所提算法在选取的4 类小目标的平均检测准确率,相比SSD 算法76.5% mAP 的检测精度,提高了13.4 个百分点。同时,明显可以看出所提算法在选取的船只、储油罐、飞机等小而密的目标上检测效果突出,证明所提算法满足遥感小目标检测场景的精度要求。并且从图12 的定性检测结果对比图也可以看出,所提算法对遥感图像中的小目标的检测效果明显优于SSD 算法,能够检测到的小目标飞机、船只数量明显多于SSD 算法,证明了所提算法对检测小目标的有效性。

表3 不同算法在HRRSD 数据集上的结果对比Table 3 Comparison of different algorithms on HRRSD dataset

图12 SSD 与本文算法在HRRSD 数据集上的定性对比Fig.12 Comparison between SSD algorithm and our algorithm on HRRSD dataset

3.5 消融实验

在消融实验中,对算法所提模块进行了对照实验。从表4 可以看出,骨干网络Darknet-53 对于特征提取有显著效果,准确率提高了0.7 个百分点,证明了该骨干网络能够增强特征的表达能力。提出的骨干增强网络在准确率上提高了模型0.4 个百分点。此外在特征融合前对浅层特征图进行了特征增强,该结构能够丰富特征图的多尺度信息,对于模型检测准确率,提高了0.3 个百分点。对浅层特征图进行的特征融合对于模型的准确率提高了0.7 个百分点,证明该特征融合能够一定意义上将浅层的细节信息与深层语义信息进行融合,从而增强浅层特征图的语义信息。消融实验中选取的3 组不同的注意力模块对模型性能影响的对比实验与最后ECAM 模块中值大小不同的3 组对照实验表明,当跨通道参数=3 时,所提的高效通道注意力模块能够使模型检测精度达到最佳,检测性能效果优于注意力SE 模块与CBAM 模块。

表4 PASCAL VOC2007 测试集模型简化测试Table 4 Ablation studies on PASCAL VOC2007 test set

另外针对本文所提的在Darkenet-53 网络中构建新的分组残差结构以及高效注意力模块引导深浅特征的融合这两个改进方法对模型检测小目标的影响,本文对不同阶段的浅层特征图进行了可视化结果对比。如图13 所示,第二列为两种方法都没有参与,第三列为仅使用了分组残差结构构成的骨干增强网络改进,第四列为同时使用了新的分组残差结构以及通道注意力机制引导深浅特征的融合这两个改进方法。从图13 可以看出,这两种方法对小目标的检测均是有利的,浅层的空间细节信息与上下文语义信息在逐渐增加,因而对于模型检测小目标,这两种方法都改善了对小目标的检测效果。

图13 两种改进方法对浅层特征图的影响Fig.13 Influence of two improved methods on shallow feature map

4 结束语

为了更好地检测小目标,本文提出了一种融合注意力机制的深层次小目标检测算法。通过改进Darknet-53 中的残差连接来提高骨干网络的特征提取能力,设计了一种浅层特征增强网络,通过高效通道注意力模块对浅层与深层进行特征融合从而改善浅层语义信息不足的问题。实验结果表明,所提算法在所选的数据集上表现突出,能够有效地提高小目标的检测精度。未来的工作将继续探索在复杂场景(目标模糊、遮挡等)下的小目标检测方法。

猜你喜欢
浅层卷积注意力
晋西黄土区极端降雨后浅层滑坡调查及影响因素分析
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
浅层换填技术在深厚软土路基中的应用
如何培养一年级学生的注意力
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
A Beautiful Way Of Looking At Things
近30年陈巴尔虎旗地区40厘米浅层地温场变化特征