光学学报, 2019, 39 (8): 0815005, 网络出版: 2019-08-07  

一种改进的多门控特征金字塔网络 下载: 1095次

An Improved Multi-Gate Feature Pyramid Network
作者单位
火箭军工程大学导弹工程学院, 陕西 西安 710025
摘要
特征金字塔网络(FPN)在融合不同尺度特征图时采用上采样和相加的方法,然而经过上采样的特征图的空间层级化信息丢失严重,简单地进行相加必然引入一定的误差。同时,FPN结构的深层特征信息前向传递性较差,其对更浅层的辅助效果基本消失。对此,结合长短时记忆(LSTM)网络在处理上下文信息上的优势对FPN结构进行改进,在不同深度的特征层之间建立一条自上而下的记忆链接,建立多门控结构对记忆链上的信息进行过滤和融合以产生表征能力更强的高级语义特征图。最后,将改进的FPN结构加入到SSD(Single Shot MultiBox Detector)算法框架中,提出新的特征融合网络——MSSD(Memory SSD),并在Pascal VOC 2007数据集上进行验证。实验表明,该改进取得了较好的测试结果,相比于目前较先进的检测算法也有一定的优势。
Abstract
The feature pyramid network (FPN) adopts the method of upsampling and addition when fusing different scale feature maps. However, the spatial stratification information of the upsampled feature map is seriously lost, so that direct addition will inevitably make certain errors. At the same time, the deep feature information of the FPN structure is poorly forward-transferred, and its auxiliary effect to the shallower layer basically disappears. This paper uses the advantages of Long Short-Term Memory (LSTM) network in processing context information to improve the FPN structure. A top-down memory chain is established between feature layers of different depths, and a multi-gate structure is constructed to filter and fuse the information on the memory chain to generate a higher semantic feature map with stronger representation ability. Finally, the improved FPN structure is added to the SSD (Single Shot MultiBox Detector) algorithm framework, and a new feature fusion network, MSSD (Memory SSD), is proposed and verified on the Pascal VOC 2007 data set. Experiments show that the improved algorithm has achieved better test results, and it has certain advantages compared with the current advanced detection algorithms.

1 引言

目标检测在当今社会上有着广泛应用,如无人驾驶、导弹制导和野外搜救等,其主要任务是对图像中特定目标进行定位和判别。传统的基于手工特征的检测方法虽然取得了较好的效果,但是处理过程繁琐,并且针对不同类型的图像需要选择合适的检测特征,当面对类别较多、内容复杂的图像时,检测效果很差。

2014年,Girdhivk等[1]提出的基于区域卷积的神经网络(R-CNN)使用卷积神经网络(CNN)来提取图像特征,相对于传统方法在精度和速度上取得巨大突破,在PSCAL VOC 2012[2]数据集上平均检测精度达到53.3%。于是,如何构建CNN以产生更有表征能力的特征成为深度学习目标检测算法的重要发展方向。SPPNet[3]、Fast R-CNN[4]、Faster R-CNN[5]等基于R-CNN的算法均在单个输入尺度上计算最顶层特征图来预测候选边界,但由于最顶层特征具有固定尺度的接受场,图像中与接受场尺度相差较大的目标的检测误差较大。尤其是对一些小尺度目标来说,最顶层的特征层甚至忽略了其特征信息。2016年Liu等[6]提出了SSD(Single Shot MultiBox Detector)算法,采用一种多尺度预测的思想,在多个不同深度的特征层上同时来预测候选边界,以适应图像中不同尺度的目标。此方法兼顾了感受野和接受场对目标尺度的适应性,不过其在不同的特征层上独立进行预测,忽视了深层特征对浅层特征的辅助作用。为此,众多学者们都对网络结构进行改进来融合不同深度的特征层。Lin等[7]提出了特征金字塔网络(FPN),其利用深度卷积网络固有的多尺度、多层次特征建立自上而下横向连接的结构,从而构建出更具表征能力的高级语义特征图。目前较为先进的检测网络均采用了FPN结构,如YOLOV3[8],RetinaNet[9],RefineDet[10]。2017年Fu等[11]提出的DSSD(Deconvolutional Single Shot Detector)采用了FPN的思想,并把SSD的基准网络从VGG(Visual Geometry Group)换成了Resnet-101,增强了特征提取能力,然后使用反卷积层减少了深层特征图上采样的结构损失,最终提升了目标检测精度(尤其是小物体),但是其速度下降了很多。Li等[12]提出的FSSD(Feature Fusion Single Shot Multibox Detector)先将VGG16[13]顶层的三个特征提取层进行融合后,再产生6个额外特征层,最后进行回归,其在保证SSD速度的条件下提升了精确度。Jeong等[14]提出的RSSD(Rainbow Single Shot Detector)利用池化和反卷积结构建立了双向融合结构,解决了一个目标匹配到多框的问题同时提升了检测精度。2019年, Zhao等[15]提出的M2Det在FPN的基础上建立更深的TUM(Thinned U-shape Module)结构,在VGG16基础特征图上并联了三路TUM结构分别来提取浅层特征、中层特征及深层特征,其精度在COCO(Common Objects in COntext)数据集上取得了极大提升。Liu等[16]在FSSD的基础上建立了多任务检测算法,结合场景信息特征进行融合,提升了空对地目标的检测。

虽然这些借鉴FPN特征融合思想的算法取得了较好的效果,但很少有学者对特征融合时深层信息上采样产生的结构误差进行研究。为此,本文针对FPN融合结构进行改进,在不同深度的特征层之间建立一条自上而下的记忆链,将深层的特征信息更有效地保留下来,同时结合长短时记忆(LSTM)网络[17]的门控思想,利用不同深度的特征信息对记忆链上的结构误差进行过滤,对有效特征进行融合以产生表征能力更强的高级语义特征图。在SSD算法框架对改进的结构进行验证,提出一种具有选择性和记忆性的网络结构——MSSD(Memory SSD),并在VOC2007数据集上进行验证。实验结果显示,本改进算法在FPS(Frames Per Second)下降有限的情况下,在精度上相比传统的FPN结构有了较大提升,输入300 pixel×300 pixel图像时,平均检测精度达到79.0%。

2 改进的FPN算法

传统的FPN算法如图1所示,左侧自底向上的结构为深度卷积神经网络的卷积过程,BN为批量标准化。随着卷积层的增加,特征层的尺度逐渐减小,每个像素位置包含的语义信息更强。而后,在右侧建立了横向连接,自上而下地对左侧特征层进行上采样和融合。图1中‘􀱇’为融合单元,其结构如标注框内所示。先对上层特征层进行双线性插值的上采样,而后与左侧经过1×1的卷积操作的特征层直接相加。为消除相加时造成的混叠效应,在之后增加一个3×3的卷积操作,最后输出稳健性更强、精准度更高的特征图[7]。因为浅层特征可以提供更加准确的位置信息,而多次的降采样和上采样操作使得深层网络的定位信息存在误差。FPN巧妙地将处理过的低层特征和处理过的高层特征进行累加,这样就构建了一个更深的、融合多层信息的特征金字塔,并在不同的特征进行输出,最终有效地提高了检测精度。FPN的输出特征图表示为

φn=g(ϕn,ϕn+1)=f3×3{ϕn+f1×1[v(ϕn+1)]},(1)ϕn=fn(ϕn-1)=fn{fn-1[f1(I)]},(2)

式中:φn为第n个经FPN结构融合后的特征图;g为FPN结构函数;v是双线性插值函数;f1×1为卷积核为1×1大小的卷积层;f3×3为卷积核为3×3大小的卷积层;ϕn为特征提取网络的第n层特征图;I为原始图像;fn为特征提取网络的第n个卷积函数。

图 1. FPN结构

Fig. 1. FPN structure

下载图片 查看所有图片

FPN在融合不同深度的特征层时采用直接相加的做法,然而经过上采样后的深层特征图空间结构信息受损,必然会产生噪声。一方面由于深层特征层拥有更大的感受野,其特征包含大量的高级语义信息,因此当深层特征被噪声污染时,其对浅层特征中的位置信息必然造成负面干扰,影响目标检测。同时,深层特征包含的部分全局信息对浅层的小区域信息来说并不总有正面影响,当全局信息中包含一类以上目标时,必然仅对其中的某一类目标的定位有辅助作用。随着其自上而下融合,噪声又被进一步累加,即使FPN在不同层进行有监督的训练,仍然不可避免地对浅层特征图的细粒度产生影响。另一方面,FPN在自上而下的融合过程中不相邻的特征层之间信息传递能力较低。在经过多层融合后,与当前层相邻较远的特征层的影响基本消失,这些特征层的辅助作用便被忽略。因此,本研究结合LSTM的记忆和筛选能力,对FPN进行改进。

改进的网络结构如图2所示。图2中‘􀱇’为反卷积融合单元,其结构如标注框内所示。为减小噪声引入,增强高层特征表征能力,采用反卷积对上层特征层进行上采样,而后与当前层的特征层相加,通过一个3×3的卷积单元减弱混叠效应。延续FPN自上而下的横向连接结构,并加入记忆和滤波通道,此结构对融合后特征图的有效信息进行保留,对无效信息进行滤除。同时,在所有的特征层之间建立记忆链,增强上下文信息的传递效率。最后输出对上下文信息提取能力更强的高级特征图,在其上进行下一步的边框回归。

图 2. 改进的FPN结构

Fig. 2. Improved FPN structure

下载图片 查看所有图片

反卷积融合单元如

φn=g(ϕn,ϕn+1)=f3×3[ϕn+w(ϕn+1)](3)

所示,式中,w为反卷积函数,其余参数同(1)式。

记忆和滤波通道的结构如图3所示。该结构有两个输入通道和三个输出通道,A输入为当前层之前的所有特征层的有效记忆信息,B输入为当前层的融合特征图,C输出为通过记忆和滤波通道筛选后的特征信息,D输出为融合当前层的记忆信息,E输出为最终输出的增强特征图。本结构采用LSTM网络的门控思想,从A端开始的箭头实线为记忆链,其贯穿网络中每个参与到边框回归的特征层,并与这些特征层进行线性的信息交互。在每次进入记忆和滤波通道时,都对保留的特征信息进行反卷积操作。I区域为遗忘门,当新的特征信息加入进来后,利用这些信息对记忆链中前层的特征进行筛选,去除无用信息和噪声。其中3×3的卷积操作跨通道整合了融合后的特征信息,增加了模型的深度,在一定程度上提升了模型的非线性。Sigmoid函数的输出为0到1,表示记忆链中信息的传递程度,0表示信息截断,1表示完全传递。II区域为输入门,其对新特征进行筛选,将有效特征提取出来对记忆链中的信息进行更新。其中Tanh函数用来生成候选的特征信息,Sigmoid函数决定候选信息的传递量,两个函数共同作用完成对记忆链的更新。III区域为输出门,其利用新加入的特征信息对更新后的记忆链进行选择。更新后的记忆链中包含当前层和当前层之前的所有特征层的融合信息,相比原始B的输入包含更多上下文信息。采用Tanh函数对记忆链的信息进行压缩处理,提升参数的稳健性,采用Sigmoid函数对其进行过滤。C输出链接下一个新加入的特征层,D输出链接下一个记忆和滤波通道。E输出则参考MS-CNN(Multi-Scale Deep Convolutional Neural Network)[18]改善任务分支网络的技巧,在C输出后增加1×1的卷积层,再进行边框的回归。由于各个门结构和卷积层承担不同的选择功能,因此本结构中的所有单元不共享参数。输出的特征图可表示为

φC=FIII(φD),(4)φD=w(ϕA)×FI(ϕB)+FII(ϕB),(5)φE=relu[f01×1(φD)],(6)

式中:ϕAϕB为记忆和滤波通道的输入特征图;φCφDφE为输出特征图;FIFIIFIII分别为遗忘门、输入门和输出门;relu[]为激活函数; fn1×1为第n个卷积核大小为1×1的卷积层。三个门结构的计算方法可表示为

FI(λ)=Sigmoid[f13×3(λ)],(7)FII(λ)=Sigmoid[f23×3(λ)]×Tanh[f33×3(λ)],(8)FIII(λ)=Sigmoid[f43×3(ϕB)]×Tanh[f33×3(λ)],(9)

式中,Sigmoid和Tanh为激活函数。

图 3. 记忆和滤波通道的结构

Fig. 3. Memory and filter channel structure

下载图片 查看所有图片

3 MSSD网络

为验证改进的FPN网络的有效性,以SSD网络为基础,提出MSSD网络。MSSD算法是在SSD算法的基础上加入改进的FPN结构,基础网络依旧沿用VGG16。而后,在其中4个附加层上建立记忆和滤波通道。MSSD的网络结构如图4所示,下面,对MSSD网络的具体模块进行介绍。

图 4. MSSD网络结构

Fig. 4. MSSD network structure

下载图片 查看所有图片

3.1 基础特征提取网络

MSSD的基础特征提取网络沿用VGG16,并与传统SSD网络一样在Conv4_3层之后增加了6个额外的特征层,在不同感受野和接受场对目标进行特征的提取。也在ResNet101[19]上的同尺度的特征层上进行测试,对比结果显示其在精度上有少量提升,但是FPS大幅下降。虽然ResNet对图像的提取能力更强,但其网络结构更深,复杂度更高,综合考虑后,依旧采用VGG16进行特征提取。

3.2 Fusion block及记忆和滤波通道

该结构即改进的FPN,Fusion block如(3)式所示。传统的FPN在融合当前层特征时采用1×1的卷积层进行降维处理,而后与上层网络经过双线性插值后相加。而Fusion block为提升信息的利用率,去除了1×1的卷积层,相应地为保持维度一致,利用反卷积对上层网络进行上采样。相比于双线性插值来说,反卷积是网络通过训练习得的,文献[ 20]也指出通过反卷积后进行融合可以得到较好的细节,获得尽可能强的语义信息。本网络3组反卷积的参数输入通道、输出通道、卷积核尺度和步长分别为[256,512,2,2]、[512,1024,1,2]和[1024,512,2,3]。记忆和滤波通道结构是结合LSTM网络提出的。LSTM网络在长序列依赖问题上提供了一个有效的解决方案,而在CNN中,随着网络的加深,特征图的感受野增加,特征也从细节敏感变到语义敏感。整个过程可以看作为视角上升的过程,所有特征层可以看作为一组更加复杂的序列信息。本网络中Conv10_2和Pool11两层由于尺寸较小,上采样重建难度较大,夹杂噪声较多,仅在Conv4_3、Conv7、Conv8_2和Conv9_2这4个特征层上建立横向链接。为匹配SSD网络的接受域,最终得到的Module1、Module2和Module3特征层的尺度和维度与Conv4_3、Conv7和Conv8_2保持一致。

3.3 锚点(Anchors)

传统的SSD网络在每个特征层的锚点上生成4~6个默认框(Default Boxes)。在本网络中,增加了锚点的覆盖度同时兼顾网络的复杂度,在每个特征层的锚点上生成同样数目的默认框,其比例参照文献[ 9],在每个尺度的特征层上设置3个横纵比[1/2,1,2],每个横纵比分为[20,21/3]两个级别。经计算,对于300 pixel×300 pixel的输入图像,产生的默认框覆盖的区域范围为30 pixel×30 pixel到330 pixel×330 pixel,满足覆盖所有图像的目标。采用文献[ 6]的匹配方案将真实框(Ground Truth Boxes)匹配到默认框,交并比(IOU)设置为0.5。边框回归的计算方式为计算边界框(Bounding Boxes)与匹配到目标的默认框的长,宽和中心位置4个参数的偏移度。

3.4 模型的训练

在模型训练过程中,首先对数据进行增广处理。对训练集随机进行水平翻转,尺度变化,亮度变化和旋转变化,增加网络的稳健性。训练的损失函数同文献[ 6],位置损失采用smooth L1,分类损失采用Log loss,并采用难样本挖掘(Hard Negative Mining)对正负样本进行平衡。优化器采用传统的随机梯度下降法(SGDR),学习率设置为0.001,动量值为0.9。主干网络VGG16采用在ImageNet上的预训练模型,其余卷积层采用均值为0、方差为0.01的高斯权重填充,偏执值初始化为0。训练在1个GPU上进行,批次设为32,共进行140000批次的训练。

4 实验

实验在Ubuntu16.04系统的Pytorch框架下运行,并使用CUDA8.0和cuDNN5.0来加速训练。计算机搭载的CPU为Corei7-8700k,显卡为NVIDIA GTX1080Ti,内存为32 G。网络的性能通过平均精度和检测速度(即FPS)来测试。在PASCAL VOC2007和PASCAL VOC2012的训练集上对MSSD网络进行训练,训练集包含16551幅图像,20类目标。在PASCAL VOC2007的测试集上对网络进行测试,其中测试集包含4952幅图像。

4.1 算法有效性研究

为验证改进结构的有效性,设置了若干组对比实验。其中实验的图像输入尺寸统一设置为300 pixel×300 pixel,输出的检测框与真实框的IOU阈值统一为0.5,FPS为计算机在空载状态时在NVIDIA GTX1080Ti上测得。

4.1.1 与FPN结构对比

在MSSD网络的基础上将Conv4_3、Conv7、Conv8_2和Conv9_2这4个特征层的增强方式改为FPN,其中横向链接的1×1卷积层的通道数同文献[ 8]的FPN结构,设置为256。将此FPN-SSD结构与MSSD网络进行对比。MSSD选择在Conv4_3、Conv7、Conv8_2和Conv9_2这4个特征层上进行特征增强,这里设置同时在6个特征层上进行增强对比实验,如表1所示。从表中可以看出,MSSD网络取得了更好的检测结果,在牺牲一定速度的情况下相比原始SSD网络,精度提升了1.5%。当SSD网络加入FPN时,检测精度仅仅提升了0.2%,相对于改进的FPN在mAP(Mean Average Precision)上相差1.3%。但是在速度上,FPN结构有明显的优势,这是由于FPN结构首先采用了1×1的卷积对SSD的特征层进行降维处理。MSSD在6个特征层进行预测时,精度有所下降,这是由于Conv10_2和Pool11这两个特征层的尺度较小(分别为3×3和1×1),在进行上采样时加入的噪声信息的影响更大。

表 1. 加入FPN结构的SSD网络与MSSD网络的性能对比

Table 1. Comparison between SSD network with FPN structure and MSSD network

MethodFeature layersmAP /%FPS
SSD[6]Conv4-Pool1177.546(Titan X)
SSD+FPNConv4-Conv977.753.9
MSSDConv4-Pool1178.827.1
MSSDConv4-Conv979.031.7

查看所有表

4.1.2 特征融合结构

MSSD的特征融合结构相比FPN去除了1×1的卷积层,并将双线性插值的上采样改为反卷积,特征融合采用相加的方式(Sum)。为验证该改进的有效性,保留其他网络结构,分别测试是否去除1×1的卷积层和是否采用反卷积的不同情况,并与原始网络进行对比,如表2所示,其中√表示使用。最后,采用参考文献[ 21]在经过门控后进行特征融合时采用的Max融合方式对本特征融合结构进行对比实验。从表中可以看出采用反卷积的算法相比于双线性插值方法在精度上有较大提升,但速度有所下降。这是由于反卷积需要在线对参数进行训练,复杂度相对较高。是否采用1×1的卷积层,对网络的精度和速度影响不大。当采用Max的融合方法时,算法检测速度基本不变,但是精度下降较多。

表 2. 融合结构的改进效果对比

Table 2. Comparison of improved effects of fusion structure

Conv 1×1Feature fusion modeDeconv or bilinear interpolationmAP /%FPS
SumDeconv78.931.2
SumDeconv79.031.7
SumBilinear interpolation78.540.1
SumBilinear interpolation78.540.2
MaxDeconv78.236.4
MaxBilinear interpolation76.642.2

查看所有表

4.1.3 记忆和滤波通道

本结构是MSSD网络的核心,该结构主要包含三个门结构。本部分分别对三个门结构的有效性作对比实验,如表3所示。当不包含输入门时,网络训练时发散。当仅有输入门时,精度最低,这是由于其对记忆链上的信息整合能力最差,基本没有利用新加入的特征信息对记忆链进行滤波。遗忘门和输入门相结合的精度较高,这也与文献[ 17]的结论一致——遗忘门和输出门是LSTM结构最重要的两个部分。当三个门结构同时作用时,网络的精度最高。

表 3. 记忆和滤波通道的有效性分析

Table 3. Analysis of effectiveness of memory and filter channels

NumberForget gateInput gateOutput gatemAP /%
1/
275.2
3/
478.6
5/
677.9
779

查看所有表

4.1.4 基础特征提取网络

MSSD提出的特征提取网络采用了VGG16。而相比于ResNet来说,VGG16的特征提取能力明显不足,因此将特征提取网络改为ResNet101进行对比。采取文献[ 8]的方法,在ResNet101的第3~5个block上建立增强结构,三个特征层分别为Conv3_12、Conv4_69和Conv5_9。对于增强结构,对比FPN和本研究的改进FPN结构,结果如表4所示。相比之下,以ResNet101为基础网络的MSSD取得了最高的检测精度(79.3%),相比加入FPN结构的SSD提升了0.6%,相比VGG16下的MSSD提升了0.3%。但是ResNet101的网络层数更多(101层)复杂度更高,因此FPS下降较多。其中SSD+FPN结构在ResNet101的基础网络下mAP有较大提升,FPS也大于以VGG16为基础网络的MSSD。这是由于ResNet101的特征提取能力更强,网络深层的特征信息稳健性好,噪声更少,对FPN的干扰更少。FPN结构大幅度减小了预测层的通道数(总共仅有768个通道)。

表 4. 改变基础网络性能对比

Table 4. Performance comparison of different basic networks

MethodNetworkmAP /%FPS
SSD[11]ResNet10177.118.9(Titan X)
SSD+FPNResNet10178.739.1
MSSDResNet10179.323.7
MSSDVGG1679.031.7

查看所有表

4.2 算法性能研究

将所提算法与其他先进的深度学习目标检测算法进行比较,如表5所示。Faster R-CNN和R-FCN[22]的输入尺度为600 pixel×600 pixel~1000 pixel×1000 pixel。在300 pixel×300 pixel的输入图像下,MSSD算法的平均精度可以达到79.0%,相比SSD300的77.5%有了1.5%的提升,可以与YOLOV3在416 pixel×416 pixel尺度的输入图像的精度相媲美。相比于在FPN下改进的、采用ResNet101基础网络的DSSD300的78.6%也有0.4%的提升。当输入图像尺寸为512 pixel×512 pixel时,MSSD网络在VGG16上精度可以达到81.0%。

表6为其他在SSD网络上进行改进的算法对比。表中训练集均为VOC2007和VOC2012,测试集为VOC2007,所有算法均经过预训练,IOU阈值均取0.5。相比来说,MSSD300在以VGG16为特征提取网络时兼顾了速度和精度,在SSD的众多改进网络中取得了更好的性能。在输入为300 pixel×300 pixel图像时,MSSD的精度在各类算法中最高。

表7为在300 pixel×300 pixel 尺度输入时的SSD算法和MSSD算法对小目标的检测精度对比。按照文献[ 26]中将32 pixel×32 pixel 以下的目标定义为小目标进行测试(验证集的真实目标仅保留32 pixel×32 pixel 以下的)。从表中可以看出改进的网络对小目标的检测也有部分提升(0.9%)。

表 5. 各类先进深度学习算法在VOC2007数据集上精度对比

Table 5. Accuracy comparison of various advanced deep learning algorithms on VOC2007 dataset

MethodNetworkmAP /%
AeroBikeBirdBoatBottleBusCarCatChairCowTableDogHorseMbikePersonPlantSheepSofaTrainTvAverage
Faster[5]VGG1676.579.070.965.552.183.184.786.452.081.965.784.884.677.576.738.873.673.983.072.673.2
ION[23]VGG1679.283.177.665.654.985.485.187.054.480.673.885.382.282.274.447.175.872.784.280.475.6
Faster[18]ResNet10179.880.776.268.355.985.185.389.856.787.869.488.388.980.978.441.778.679.885.372.076.4
MR-CNN[24]VGG1680.384.178.570.868.588.085.987.860.385.273.787.286.585.076.448.576.375.585.081.078.2
R-FCN[22]ResNet10179.987.281.572.069.886.888.589.867.088.174.589.890.679.981.253.781.881.585.979.980.5
SSD300[6]VGG1679.583.976.069.650.587.085.788.160.381.577.086.187.583.9779.452.377.979.587.676.877.5
SSD512[6]VGG1684.885.181.573.057.887.888.387.463.585.473.286.286.783.982.555.681.779.086.680.079.5
DSSD321[11]ResNet10181.984.980.568.453.985.686.288.961.183.578.786.788.786.779.751.778.080.987.279.478.6
DSSD513[11]ResNet10186.686.282.674.962.589.088.788.865.287.078.788.289.087.583.751.186.381.685.783.781.5
MDSSD300[25]VGG1686.587.678.970.655.086.987.088.158.584.873.484.889.288.178.052.378.674.586.880.778.6
MDSSD512[25]VGG1688.888.783.273.758.388.289.387.462.485.175.184.789.788.383.256.784.077.483.977.680.3
YOLOV3[8]Darknet5385.585.575.670.066.587.687.789.464.383.573.685.986.986.283.356.275.378.086.477.879.2
MSSD300ResNet10181.287.278.772.753.486.485.689.163.184.580.087.588.984.878.854.580.983.287.177.479.3
MSSD300VGG1681.685.878.074.055.386.286.588.264.685.976.985.487.785.279.551.178.880.887.978.679.0
MSSD500VGG1687.687.283.775.557.886.788.489.566.384.678.986.888.186.483.358.081.481.088.478.181.0

查看所有表

表 6. 各类基于SSD的改进算法的测试结果对比

Table 6. Comparison of test results of various improved algorithms based on SSD

MethodNetworkFPSGPU#proposalsInput size /(pixel×pixel)mAP /%
SSD300[6]VGG1646Titan X8732300×30077.2
SSD512[6]VGG1619Titan X24564512×51278.5
MDSSD300[25]VGG1638.51080Ti44530300×30078.6
MDSSD512[25]VGG1617.31080Ti-512×51280.3
DSSD321[11]ResNet1019.5Titan X17088321×32178.6
DSSD513[11]ResNet1015.5Titan X43688513×51381.5
RSSD300[14]VGG1635Titan X8732300×30078.5
RSSD512[14]VGG1616.6Titan X24564512×51280.8
MSSD300ResNet10123.71080Ti8728300×30079.3
MSSD300VGG1631.71080Ti8732300×30079.0
MSSD512VGG1617.31080Ti24564512×51281.0

查看所有表

表 7. SSD算法和MSSD算法对小目标的检测精度

Table 7. Detection accuracy of small targets by SSD algorithm and MSSD algorithm

MethodmAP /%
SSD[6]55.4
MSSD56.3

查看所有表

MSSD算法的部分可视化结果如图5所示,其中左侧为SSD算法,右侧为MSSD算法,坐标轴代表图像像素值。图5(a)中SSD算法漏检了人,而图5(b)中的MSSD算法在目标有大量重合的情况下依然可以很好地检测到整个目标。图5(c)与图5(d)中都存在漏检的现象,SSD算法漏检了人和一辆摩托,MSSD算法只漏检了一辆摩托但是选框的准确度不够(将人也包含进了选框)。图5(e)和图5(f)中,存在小尺度目标,SSD算法漏检而MSSD算法更好地检测到了汽车。图5(g)和图5(h)中SSD算法漏检了与沙发位置完全重合的人,而MSSD算法检测准确。所有的选框得分上,SSD算法总体较高。总的来说,两种算法各有优点与不足,但是MSSD算法相对来说更具有优越性。

图 5. SSD算法和MSSD算法的可视化对比。(a)(c)(e)(g) SSD算法;(b)(d)(f)(h) MSSD算法

Fig. 5. Visual comparison of SSD algorithm and MSSD algorithm. (a)(c)(e)(g) SSD algorithm; (b)(d)(f)(h) MSSD algorithm

下载图片 查看所有图片

5 结论

分析了传统的FPN在特征融合过程中存在的不足,为增强不同深度特征的融合效果,结合LSTM提出了一种多门控的记忆滤波结构。为验证改进的有效性,在SSD网络的框架上结合改进FPN提出了MSSD网络。在Pascal VOC 2007数据集上进行测试,证明了本改进的有效性。并与其他先进的深度学习目标检测算法对比,结果显示,所提算法具有更好的效果,为深度学习目标检测方向的研究者们提供了一种更有效的特征融合算法。

参考文献

[1] GirshickR, DonahueJ, DarrellT, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition(CVPR), June 23-28, 2014, Columbus, OH, USA. New York: IEEE, 2014: 580- 587.

[2] Everingham M. Eslami S M A, van Gool L, et al. The PASCAL visual object classes challenge: a retrospective[J]. International Journal of Computer Vision, 2015, 111(1): 98-136.

[3] He K M, Zhang X Y, Ren S Q, et al. Spatial pyramid pooling in deep convolutional networks for visual recognition[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 37(9): 1904-1916.

[4] GirshickR. Fast R-CNN[C]∥2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015, Santiago, Chile. New York: IEEE, 2015: 1440- 1448.

[5] Ren S Q, He K M, Girshick R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(6): 1137-1149.

[6] LiuW, AnguelovD, ErhanD, et al. SSD: single shot MultiBox detector[M] ∥Leibe B, Matas J, Sebe N, et al. Lecture notes in computer science. Cham: Springer, 2016, 9905: 21- 37.

[7] Lin TY, DollarP, GirshickR, et al. Feature pyramid networks for object detection[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition(CVPR), July 21-26, 2017, Honolulu, HI. New York: IEEE, 2017: 936- 944.

[8] RedmonJ, Farhadi A. YOLOv3: an incremental improvement[J/OL]. ( 2018-04-08)[2019-01-30]. https:∥arxiv.org/abs/1804. 02767.

[9] Lin TY, GoyalP, GirshickR, et al. Focal loss for dense object detection[C]∥2017 IEEE International Conference on Computer Vision (ICCV), October 22-29, 2017, Venice, Italy. New York: IEEE, 2017: 2999- 3007.

[10] Zhang SF, Wen LY, BianX, et al. Single-shot refinement neural network for object detection[C]∥2018 IEEE/CVF Conference on Computer Vision and Pattern Recognition(CVPR), June 18-23, 2018, Salt Lake City. New York: IEEE, 2018: 4203- 4212.

[11] Fu CY, LiuW, RangaA, et al. DSSD: deconvolutional single shot detector[J/OL]. ( 2017-01-23)[2019-01-30]. https:∥arxiv.org/abs/1701. 06659.

[12] Li ZX, Zhou F Q. FSSD: feature fusion single shot multibox detector[J/OL]. ( 2018-05-17)[2019-01-30]. https:∥arxiv.org/abs/1712. 00960.

[13] SimonyanK, Zisserman A. Very deep convolutional networks for large-scale image recognition[J/OL]. ( 2015-04-10)[2019-02-02]. https:∥arxiv.org/abs/1409. 1556.

[14] JeongJ, ParkH, Kwak N. Enhancement of SSD by concatenating feature maps for object detection[J/OL]. ( 2017-05-26)[2019-02-01]. https:∥arxiv.org/abs/1705. 09587.

[15] Zhao QJ, ShengT, Wang YT, et al. M2Det: a single-shot object detector based on multi-level feature pyramid network[J/OL]. ( 2019-01-06)[2019-02-01]. https:∥arxiv.org/abs/1705. 09587.

[16] 刘星, 陈坚, 杨东方, 等. 场景耦合的空对地多任务遥感影像智能检测算法[J]. 光学学报, 2018, 38(12): 1215008.

    Liu X, Chen J, Yang D F, et al. Scene-coupled intelligent multi-task detection algorithm for air-to-ground remote sensing image[J]. Acta Optica Sinica, 2018, 38(12): 1215008.

[17] GravesA. Supervised sequence labelling with recurrent neural networks: long short-term memory[M]. Berlin, Heidelberg: Springer, 2012: 37- 45.

[18] Cai ZW, Fan QF, Feris RS, et al. A unified multi-scale deep convolutional neural network for fast object detection[M] ∥Leibe B, Matas J, Sebe N, et al. Lecture notes in computer science. Cham: Springer, 2016, 9908: 354- 370.

[19] He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 770- 778.

[20] Shelhamer E, Long J, Darrell T. Fully convolutional networks for semantic segmentation[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39(4): 640-651.

[21] Zeng X Y, Ouyang W L, Yan J J, et al. Crafting GBD-net for object detection[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2018, 40(9): 2109-2123.

[22] DaiJ, LiY, HeK, et al. R-FCN: object detection via region-based fully convolutional networks[C]∥Proceedings of the 30th International Conference on Neural Information Processing Systems, December 5-10, 2016, Barcelona, Spain. USA: Curran Associates Inc., 2016: 379- 387.

[23] BellS, Zitnick CL, BalaK, et al. Inside-outside net: detecting objects in context with skip pooling and recurrent neural networks[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 2874- 2883.

[24] GidarisS, KomodakisN. Object detection via a multi-region and semantic segmentation-aware CNN model[C]∥2015 IEEE International Conference on Computer Vision (ICCV), December 7-13, 2015, Santiago, Chile. New York: IEEE, 2015: 1134- 1142.

[25] Xu ML, Cui LS, LüP, et al. MDSSD: multi-scale deconvolutional single shot detector for small objects[J/OL]. ( 2018-08-19)[2019-02-02]. https:∥arxiv.org/abs/1805. 07009.

[26] Lin TY, MaireM, BelongieS, et al. Microsoft COCO: common objects in context[M] ∥Fleet D, Pajdla T, Schiele B, et al. Lecture notes in computer science. Cham: Springer, 2014, 8693: 740- 755.

赵彤, 刘洁瑜, 沈强. 一种改进的多门控特征金字塔网络[J]. 光学学报, 2019, 39(8): 0815005. Tong Zhao, Jieyu Liu, Qiang Shen. An Improved Multi-Gate Feature Pyramid Network[J]. Acta Optica Sinica, 2019, 39(8): 0815005.

引用该论文: TXT   |   EndNote

相关论文

加载中...

关于本站 Cookie 的使用提示

中国光学期刊网使用基于 cookie 的技术来更好地为您提供各项服务,点击此处了解我们的隐私策略。 如您需继续使用本网站,请您授权我们使用本地 cookie 来保存部分信息。
全站搜索
您最值得信赖的光电行业旗舰网络服务平台!