多尺度语义信息融合的目标检测

2021-07-29 03:36陈鸿坤罗会兰
电子与信息学报 2021年7期
关键词:浅层尺度语义

陈鸿坤 罗会兰

(江西理工大学信息工程学院 赣州 341000)

1 引言

目标检测是计算机视觉领域的热点研究课题,它的主要任务是对输入图像中的目标物体进行定位和分类。近年来,基于卷积神经网络的目标检测算法相对于传统算法取得了突破性的进展,已经得到广泛应用,但是由于检测图像中的小尺度目标仅具有少量的像素点,所包含的特征信息非常少,而且小尺度目标的特征经过多次下采样后容易丢失,使得特征提取网络很难提取到小尺度目标的特征,这就造成小尺度目标难以精确检测。而在密集目标检测场景中,不但存在大量小尺度目标,而且目标间有较严重的遮挡问题,使得密集目标的特征提取变得更加困难,所以小尺度目标和密集目标的检测仍然是目标检测领域中的难点和挑战。

图像中经常存在着大量尺度变化剧烈的目标物体,为了解决尺度变化问题,Liu等人[1]提出了单极多盒检测器(Single Shot multibox Detector, SSD)算法,其采用了多尺度特征检测思想,利用多个不同卷积层的不同尺度特征实现预测各种尺度的物体。但是,由于浅层特征缺乏语义信息,高层特征缺乏空间细节信息,SSD算法简单提取多尺度特征,没有考虑到不同尺度间的相关性,以至于不同层的语义信息[2]没有得到充分利用,所以其对小目标物体的检测准确度较低。为了更好地解决这个问题,文献[3]提出了特征金字塔网络(Feature Pyramid Network, FPN),通过最近邻上采样操作额外构建了一个自顶向下的路径,并通过横向连接将高、低层中相同尺度的特征融合,有效减少了不同尺度特征间的语义信息差异,检测精度得到提高。在此基础上,基于SSD网络模型的改进研究DSSD[4],利用反卷积操作构建FPN结构提取多尺度特征,获得了较高的检测精度,但是它的性能提升依赖于庞大的ResNet101[5]模型,导致检测效率大幅度下降。FSSD[6]算法和感受野模块网络(Receptive Field Block Network,RFB-Net)算法[7]在SSD算法的基础上进行改进,大幅度提高检测精度的同时保持了实时的检测速度。FSSD算法将浅层中3个不同尺度特征进行简单的拼接融合作为基准特征,并在基准特征的基础上进行一系列卷积下采样提取不同尺度特征,通过浅层特征间的信息融合,有效提高了检测器对小尺度目标的检测效果。RFB-Net则是利用3个不同扩张率的卷积层以Inception结构构建了RFB模块,增强网络的感受野,对大尺度物体的检测效果有很好的提升。上述方法都是在SSD算法的基础上,采用了不同的特征融合方式改进不同尺度特征的表征能力,从而提高模型对目标尺度变换的鲁棒性,虽然在一定程度上提升了模型对小物体的检测效果,但是没有着重关注浅层特征的作用,提取的浅层特征缺乏足够的语义信息,导致没有足够的能力来检测小目标,存在较为严重的小目标漏检和误检问题。

对于目标检测任务来说,卷积神经网络中的浅层特征保留了丰富的空间细节特征,对小尺度目标和密集目标的检测至关重要,但语义信息的缺乏限制了浅层特征的作用。为了提高小目标和密集目标检测性能,本文提出了一种新的融合多尺度语义信息以增强浅层特征的目标检测方法,旨在通过注意力机制强化有目标区域的浅层特征,从而获得更好的目标检测效果。本文的贡献主要体现在以下几个方面:

(1) 设计了多尺度语义信息融合模块对基础融合特征进行语义信息增强;

(2) 设计了特征重利用模块,通过语义特征指导基础融合特征进行通道注意力加权;

(3) 提出方法的检测精度在PASCAL VOC2007[8]数据集上相对于SSD512算法提高了2.7%,在MS COCO2014[9]数据集上相对于SSD512算法提高了4.9%。提出的浅层增强特征网络有效地提高了网络模型对小尺度目标和密集目标的检测效果,在MS COCO2014数据集上,对小目标检测精度相较于RFB512网络提高了1.6%,小目标召回率提高了1.8%。

2 本文方法

本文提出了结合多尺度语义信息和特征重利用来获取浅层增强特征的目标检测模型,简称为浅层特征增强网络(Shallow Enhanced Feature Network,SEFN)算法。具体框架如图1所示,主要设计了3个融合模块对浅层特征进行多尺度语义信息融合和特征重利用,从而获取浅层增强特征,并在此基础上提取多尺度特征进行检测,使模型在小目标检测上的性能获得显著提高。拼接融合模块是将多层浅层特征进行融合,获得具有更多详细空间细节信息的浅层特征,其通过将VGG16中Conv4_3层和Conv5_3层的特征进行拼接融合,得到基础融合特征。多尺度语义信息融合模块借鉴了语义分割任务中文献[10]的启发,采用特征金字塔结构使得基础融合特征引入了多尺度特征的语义信息,获得具有丰富上下文语义信息的语义特征,增强模型对小目标的分类能力。特征重利用融合模块则考虑到语义特征经过了一系列卷积和反卷积操作,会丢失部分细节纹理信息,所以重利用具有丰富空间细节信息的基础融合特征,并且依据语义特征进行通道注意力加权融合,更加关注包含目标的区域,有效提高了模型对小目标的检测精度和召回率。

2.1 浅层特征拼接融合模块

卷积神经网络的浅层特征包含丰富的纹理、边缘等细节空间信息,有利于对物体进行定位,但缺乏全局语义信息,不利于物体的分类。而高层特征具有丰富的语义信息,但丢失了许多空间细节信息,不利于小目标的检测。为了缓解这个问题,FSSD[6]算法通过简单拼接融合Conv4_3层、FC7层和Conv7_2层的特征,并在融合特征[11]的基础上进行卷积提取多尺度特征,因为融合特征建立了3个不同尺度特征间的联系,在一定程度上增加了语义信息和丰富了细节信息,所以在小目标检测效果上有一定的提升,但不同尺度间的联系过于单薄,增加的语义信息不足以很好地提高浅层特征的分类能力。本文在FSSD[6]算法思想的基础上,更加关注浅层特征的作用,首先设计了浅层特征的拼接融合模块,获得基础融合特征,如图2所示(示例中的输入图像尺寸为300×300)。浅层特征拼接融合模块的工作原理如式(1)所示

其中,X1, X2表示选取的是VGG16网络中Conv4_3层和Conv5_3层卷积特征进行融合;T1,T2表示选取的特征在融合前进行的变换函数,将特征图变换到相同尺度以进行拼接融合,如图2所示,Conv4_3层提取的特征大小为38×38×512,而其变换函数是1×1的卷积层,目的是减少输入通道数,避免计算量过大,而Conv5_3层提取的特征大小为19×19×1024,其变换函数是具有双线性插值上采样的1×1卷积层,不仅降低输入通道数,而且统一了特征图的大小;下标f表示的是特征融合函数,本文采用的是拼接(Concatenation)操作;Xf表示获得的基础融合特征。

2.2 多尺度语义信息融合模块

通过简单拼接融合获取的基础融合特征,仅仅加强了空间细节特征,缺乏不同尺度间的语义信息,为了给浅层特征添加有效的多尺度语义信息,受语义分割研究领域中文献[10]提出的空间金字塔注意结构实现精确的像素级语义分割任务的启发,本文设计了一个类似特征金字塔结构的多尺度语义信息融合模块,结构如图3所示。

图3 多尺度语义信息融合模块

多尺度语义信息融合模块的输入是基础融合特征,由于输入特征的尺度较大,为了减少网络的计算负担,采用小型的1×1或3×3卷积核。该模块由3个分支组成,分别如图3中黄色、绿色和黑色的虚线框,分别命名为全局语义分支、局部信息补充分支、多尺度语义分支。全局语义分支采用了一个全局平均池化层和一个1×1的卷积层,目的是提取基础融合特征的全局语义信息。局部信息补充分支只采用了一个1×1的卷积层,目的是为接下来的特征融合保留更多的空间细节信息。多尺度语义分支则构建了小型的特征金字塔结构,用于提取其他3个尺度特征的语义信息。在图3中黑色虚线框表示的多尺度语义分支中,蓝色的连线表示卷积下采样操作,红色的连线表示反卷积上采样操作,它们之间采用了卷积核大小为3×3,步长为2的卷积层进行连接,能够在不改变特征尺度的同时减少不同尺度间的语义相似性,随后采用对应元素相加操作逐步将3个不同尺度特征的语义信息进行融合。对局部信息补充分支的输出和多尺度语义分支的输出,采用对应元素相乘方式进行融合,使得特征不仅具有充分的空间细节信息,而且融合了多个尺度的语义信息。随后,为了更加关注图像物体的定位信息,对全局语义分支的全局语义信息,进行相加融合,最终得到了与输入特征相同尺度的语义特征。通过融合3个分支的不同信息,有效地对浅层特征嵌入了多个不同尺度的语义信息,加强对小目标检测的能力。多尺度语义信息融合模块的过程如式(2)所示

2.3 特征重利用模块

卷积神经网络中的高层特征具有丰富的类别语义信息,有利于指导低层特征进行通道注意力加权,使得具有较大空间分辨率的浅层更加关注存在目标的区域。借鉴文献[10]中全局注意力上采样模块的结构,本文设计了利用全局注意力信息的特征重利用模块,以进一步加强语义特征,结构如图4所示。首先对输入的语义特征进行全局平均池化操作,以获得各个特征通道的注意力权重,通过包含批处理归一化和ReLU操作的1×1卷积层后对基础融合特征相乘进行通道注意力加权,实现全局语义信息的增强。基础融合特征先经过了一个3×3卷积层处理,目的是保持与语义特征通道数一致,同时可以减少特征融合后的混叠效应,消除各级特征间特征分布的差异。最后将加权后的基础融合特征与语义特征进行对应元素相加融合,形成浅层增强特征。随后以浅层增强特征为基准,进行一系列卷积下采样操作,同时提取不同尺度的特征送入检测分支中进行检测(图1)。实验证明融合了不同尺度的语义信息,且具有丰富空间细节特征的浅层增强特征能够更加关注小目标的检测,不仅对小目标的检测精度有显著的提高,而且在密集目标检测中能取得好的效果。

图4 特征重利用模块

2.4 损失函数

损失函数由定位损失函数和分类置信度损失函数两部分组成,表达式如式(3)所示:

3 实验结果

3.1 实验数据集

为了验证本文方法的有效性,在目标检测任务中常用的PASCAL VOC2007[8]和MS COCO2014[9]数据集上进行了实验分析。PASCAL VOC2007数据集包含20个常见类别,2501张训练图片、2510张验证图片和4952张测试图片。MS COCO2014数据集包含了80个类别,82783张训练图片、40504张验证图片和81434张测试图片,数据集中的目标大部分来自自然场景,目标间的尺度变化大,具有较多的小目标物体,评估标准也更加严格,要求算法具有更精确的定位能力。

3.2 实验设置

本文的模型是基于Pytorch1.0框架,Python版本为3.7,实验训练使用的是NVIDIA Tesla P100-PCIE-16 GB GPU, VGG16骨干网络的权重在ImageNet进行了预训练。采用随机梯度下降(SGD)算法来优化浅层特征增强网络的权重,其动量设置为0.9,衰减为0.0005,初始学习率为0.001。输入图像尺度设置为300×300时,训练PASCAL VOC数据集时设置每个GPU的batch size为32,训练MS COCO数据集时设置每个GPU的batch size为16。在输入图像尺度设置为512×512的情况下,训练PASCAL VOC数据集时设置每个GPU的batch size为16,训练MS COCO数据集时设置每个GPU的batch size为8。对于PSACAL VOC数据集,设置最大训练epoch为250代,在训练到150代和200代时,分别将学习率减少为原来的1/10;对于MS COCO数据集设置最大训练epoch为160代,在训练到90代和120代时,分别将学习率减少为原来的1/10。

3.3 实验结果分析

本小节比较了本文提出的浅层特征增强网络SEFN与近些年基于卷积神经网络的目标检测算法的性能,展现了本文提出的目标检测网络模型在小目标和密集目标检测方面的良好性能。

3.3.1 PASCAL VOC2007数据集上的检测性能对比

表1给出了近些年流行的目标检测算法与本文方法在PASCAL VOC2007数据集上的实验结果对比,这些方法都是联合使用PASCAL VOC2007和PASCAL VOC2012数据集中的训练集和验证集作为训练数据,在表1中“检测精度mAP(%), IOU=0.5”指的是在区分正负样本的区域交并比(Intersection Over Union, IOU)阈值选取在0.5的基础上,检测器获取的各类别平均精度的平均值,即平均精度均值(mean Average Precision, mAP)。“检测速度fps”表示的是检测器每秒能够处理的图片张数,其不仅与网络模型有关,而且与运行模型的硬件配置也相关。表1中算法简称后面的数字表示输入图像的尺度。

从表1的实验结果可以看出,本文提出的SEFN方法,在网络输入尺度为300×300时,获得了79.6%的检测精度,在网络输入尺度为512×512时,获得了81.2%的检测精度,能够在保证实时检测速度的同时,取得不错的检测效果。本文SEFN300方法与经典的2阶段目标检测算法R-FCN[12]取得了相当的检测精度,相较于经典的SSD300[1]算法提高了2.4%,与基于SSD算法的改进研究(如DSSD321[4],RSSD300[13], FSSD300[6])相比,分别提高了1%,1.1%, 0.8%。而且相对一阶段流行的检测算法YOLOv1[14], YOLOv2[15],在检测精度上有显著的提升,但相较于检测性能非常好的RFB300[7]算法,略低0.9%。本文的SEFN512方法的检测性能都明显高于表1中2阶段的目标检测算法,相较于经典的SSD512[1]算法提高了2.7%,较于RSSD512[13],kFSSD512[6]分别有0.4%,0.3%的提升,本文方法相较于DSSD512[4]略低0.3%,相较于RFB512[7]低1%,因为DSSD[4]采用了庞大的ResNet101[5]作为特征提取网络,其在512×512输入尺度下能够提取到表征能力更强的不同尺度特征进行检测,但在检测速度上牺牲很大,而RFB方法[7]则通过扩张卷积对多个不同尺度特征进行感受野增强,有效增强了大、中型尺度目标的检测能力,但本文方法在小目标和密集目标的检测效果具有明显的优势(如图5所示)。

表1 在PASCAL VOC2007测试集本文方法与其他方法的结果对比

3.3.2 不同检测方法定性检测效果对比

如图5所示为本文方法与SSD[1]算法、RFB[7]算法在PASCAL VOC2007数据集上的图片检测效果对比。从图5的实验结果可以看出,SSD算法对小目标和密集目标的检测效果较差,经常出现严重的小物体误检和漏检的情况。RFB算法虽然在检测精度上高于本文的方法,但对小目标和密集目标的检测也存在较大不足,容易漏检小目标,并在密集目标的场景产生了目标误检问题,而本文采用多尺度语义信息增强浅层特征的方式,能够有效地加强对小目标和密集目标的检测性能,特别是模型在较大输入尺度的情况下(如512×512)。

图5 不同算法在PASCAL VOC2007数据集上的检测结果

3.3.3 MS COCO数据集上的检测性能对比

为了进一步体现本文方法在小目标和密集目标检测方面的优势,在MS COCO数据集的minival2014测试集上进行了本文方法与其他文献方法的实验结果对比,如表2所示,其中“IOU=0.5: 0.95”表示的是设定10个IOU阈值(0.5~0.95,以0.05为步长),对每个IOU阈值求取算法的平均精度均值,再对所有IOU阈值对应的平均精度均值求平均。表中“S,M,L”分别表示小目标,中等目标,大目标。从表2的实验结果可以看出,本文提出的SEFN512方法在检测精度和召回率上相较于YOLOv2[15],SSD512[1], DSSD513[4], FSSD512[6]都有明显的提升,相比RFB512[7],虽然总体检测精度低了0.7%,但本文的方法在小目标的检测精度上提高了1.6%,在中等目标上提高了1%,在小目标的召回率上提高了1.8%,有效证明了本文方法在小目标和密集目标检测上具有良好优势。本文方法主要关注浅层特征的作用,没有加强高层特征的表征能力,而高层特征的感受野相对较大,有利于大尺度目标的检测,RFB方法[7]更是增强了多个不同尺度特征的感受野,所以本文方法在大尺度目标检测上弱于RFB方法[7],这是下一步改进工作的研究方向。

表2 在MS COCO2014_minival测试集上本文方法与其他方法的结果对比

4 结束语

为了更好地检测小目标和密集目标,本文提出了一种新的融合多尺度语义信息以增强浅层特征的目标检测方法。通过以SSD网络为基础框架,设计了3个不同的特征融合模块:拼接融合模块、多尺度语义信息融合模块和特征重利用模块。通过丰富多尺度语义信息和空间细节信息,使得浅层特征中包含目标的区域得到增强。最后在增强的特征上进行一系列的卷积提取多个不同尺度特征用以检测,有效地提高了对小目标和密集目标的检测性能。与主流的目标检测算法在PASCAL VOC2007数据集和MS COCO2014数据集上进行了实验结果对比,表明了本文方法能有效提高小目标和密集目标的检测效果。下一步工作将优化融合模块,从而更有效地利用浅层和高层特征之间的联系,使其获得更高的准确率。

猜你喜欢
浅层尺度语义
浅层换填技术在深厚软土路基中的应用
基于浅层曝气原理的好氧颗粒污泥的快速培养
财产的五大尺度和五重应对
语言与语义
浅层地下水超采区划分探究
宇宙的尺度
“上”与“下”语义的不对称性及其认知阐释
包气带浅层地热容量计算方法商榷
认知范畴模糊与语义模糊
9