浙江大学学报(工学版), 2020, 54(3): 529-539 doi: 10.3785/j.issn.1008-973X.2020.03.013

计算机技术与图像处理

目标检测强化上下文模型

郑晨斌,, 张勇,, 胡杭, 吴颖睿, 黄广靖

Object detection enhanced context model

ZHENG Chen-bin,, ZHANG Yong,, HU Hang, WU Ying-rui, HUANG Guang-jing

通讯作者: 张勇,男,副教授. orcid.org/0000-0002-0694-8957. E-mail: 06952@buaa.edu.cn

收稿日期: 2019-03-1  

Received: 2019-03-1  

作者简介 About authors

郑晨斌(1995—),男,硕士生,从事深度学习、图像处理研究.orcid.org/0000-0002-6413-613X.E-mail:13171087@buaa.edu.cn , E-mail:13171087@buaa.edu.cn

摘要

强化上下文模型中的强化上下文模块(ECM)利用双空洞卷积结构,在节省参数量的同时,通过扩大有效感受野来强化浅层上下文信息,并在较少破坏原始SSD网络的基础上灵活作用于网络中浅预测层,形成强化上下文模型网络(ECMNet). 当输入图像大小为300×300时,在PASCAL VOC2007测试集上,ECMNet获得的均值平均精度为80.52%,在1080Ti上的速度为73.5 帧/s. 实验结果表明,ECMNet能有效强化上下文信息,并在参数量、速度和精度上达到较优权衡,优于许多先进的目标检测器.

关键词: 目标检测 ; 上下文信息 ; 有效感受野 ; 强化上下文模块(ECM) ; 一阶段目标检测器

Abstract

Double-atrous convolution structure was used in enhanced context module (ECM) of the enhanced context model to reduce parameters while expanding effective receptive field to enhance context information of shallow layers, and ECM flexibly acted on middle shallow prediction layers with less damage to original SSD, forming enhanced context model net (ECMNet). Using input image with size of 300×300, ECMNet obtained mean average precision of 80.52% on PASCAL VOC2007 test set, and achieved 73.5 frames per second on 1080Ti. The experimental results show that ECMNet can effectively enhance context information and achieves a better trade-off in parameter, speed and accuracy, which is superior to many state-of-the-art object detectors.

Keywords: object detection ; context information ; effective receptive field ; enhanced context module (ECM) ; one-stage object detector

PDF (1492KB) 元数据 多维度评价 相关文章 导出 EndNote| Ris| Bibtex  收藏本文

本文引用格式

郑晨斌, 张勇, 胡杭, 吴颖睿, 黄广靖. 目标检测强化上下文模型. 浙江大学学报(工学版)[J], 2020, 54(3): 529-539 doi:10.3785/j.issn.1008-973X.2020.03.013

ZHENG Chen-bin, ZHANG Yong, HU Hang, WU Ying-rui, HUANG Guang-jing. Object detection enhanced context model. Journal of Zhejiang University(Engineering Science)[J], 2020, 54(3): 529-539 doi:10.3785/j.issn.1008-973X.2020.03.013

目标检测是视觉领域一项基础又重要的技术,也是很多高级视觉任务(如:道路交通场景解析、智能监控、视频结构化分析等)的基础,具有重要的实际意义. 近年来,随着深度学习的引入,基于卷积神经网络的两阶段和一阶段目标检测器大幅提升了目标检测的准确度,并仍在不断发展中.

两阶段目标检测器能达到较高检测精度,但效率不高,耗时长. 一阶段目标检测器直接使用单条神经网络回归目标边界框,并识别目标类别,检测效率高,但检测精度相对两阶段较低,神经网络浅层缺乏足够的上下文信息是主要原因之一.

本文基于有效感受野、语义分割和高性能目标检测网络RFB Net[1],提出强化上下文模型. 通过双空洞卷积结构强化上下文信息形成强化上下文模块(enhanced context module, ECM),来缓解网络浅层缺乏足够上下文信息导致检测精度不高的问题,同时相比特征融合方式,强化上下文模块方式更为灵活,对SSD[2]等网络结构的破坏性较小.

1. 相关工作

为了实现多尺度检测,目标检测方法,如SSD及其改进版本等[2-7],都采用多层预测层进行检测,其中浅层预测层检测小目标,深层预测层检测大目标. 多层预测层方法中的浅层,由于缺乏足够的上下文信息,检测效果较差,特别是对于小目标,使得整体检测效果受到影响.

Luo等[3]提出有效感受野,表征理论感受野中对神经元具有不可忽略影响的像素点区域. 有效感受野的大小可以粗略表示上下文信息的丰富程度,无论是目标分类、语义分割还是目标检测,都需要足够的上下文信息来减少错分的可能性.

部分两阶段方法,如FPN[4]等,采用多尺度特征融合方法来强化上下文信息. 近期的部分一阶段方法同样采用特征融合方式来增加上下文信息:R-SSD利用彩虹连接方式来强化上下文信息,提高小目标的检测精度,但特征融合效率低[5];FSSD采用先融合各层,再不断下采样的方式来进行检测,提升了精度和效率,但中间层上下文信息有所损失[6].

在语义分割领域,逐像素分类对上下文信息的利用程度要求很高. FCN采用反卷积获取更多上下文信息[7];SegNet采用最大池化索引上采样和将可训练解码器与滤波器组合的方式来注入更多上下文信息[8];PSPNet采用金字塔池化来开拓全局上下文信息[9];DeeplLab v2/3采用空洞空间金字塔池化捕获多尺度上下文信息[10-11]. 上述部分方法也被借鉴运用于目标检测领域,如DSSD[12],利用反卷积获取更多的上下文信息,显著提高精度,但速度上牺牲很多.

2. 强化上下文模型

上下文信息指图像中事物之间的相互联系、相互作用信息,是较为抽象的信息,例如网球运动员与网球拍之间存在的相关联信息. 特征融合可以强化上下文信息,单独设计独立模块也能强化上下文信息. 在设计强化上下文模型时,需要考虑多种因素. 强化上下文模型在数学上可以抽象为

$ {{{Y}}_{{i}}} = {{{T}}_{{i}}}({X_i});\;\; i \in {{N}} \cup {{M}}. $

$ {X_j} = {\varphi _{{{{\rm{m}}}}j}}(\{ {Y_i}\} );\;\; i \in N \cup M,\; j \in M. $

$ W = {\varphi _{{{\rm{p}}}}}(\{ {X_j},{Y_i}\} ),i \in N \cup M,j \in M. $

$ {{W}} = \{ {W_1},{W_2},\cdots,{W_k}\} ,k \in {{K}}. $

式中:X为特征图,T为特征图X进入独立模块或特征融合前的特征变换方法,Y为经过T后输出的特征图, ${\varphi _{{\rm{m}}}}$为设计的独立模块或特征融合函数, ${\varphi _{{\rm{p}}}}$为生成预测特征图函数, ${{W}}$为预测特征图集合, ${{N}}$为进入独立模块或特征融合前需要进行特征变换的网络层的集合, ${{M}}$为独立模块或特征融合后的层的集合(即独立模块作用的特征图范围), ${{K}}$为预测层集合, $\{ \cdot \} $表示部分层的输出特征图集合.

由于骨干网络(如:VGG16等)自身结构上的特点,独立模块比特征融合方式更为灵活,且文献[6]已对特征融合模型进行了详细研究,本文不再对特征融合方式进行赘述,主要针对独立模块进行相关研究.

1) ${{T}}$:原始特征图在进入独立模块或特征融合前可以通过上采样、 $1 \times 1$卷积等将其调整到合适的分辨率或特征图通道数. 针对独立模块,由于可将 ${{T}}$纳入到模块本身,不对 ${{T}}$作详细研究.

2) ${{M}}$:使用与SSD一样的骨干网络和多层预测方法. 由于分辨率为3×3、1×1的特征图位于网络深层,本身就含有丰富的上下文信息,主要通过中、浅层特征图(38×38、19×19、10×10、5×5)来研究独立模块作用的特征图范围,详见第3.1.2节.

3) ${\varphi _{\rm{m}}}$:设计3种独立模块来强化上下文信息,并对比分析3种模块性能以选择最优模块,详见第3.1.1节. 3种独立模块如图1所示(均以将conv4_3的输出作为独立模块输入为例).

图 1

图 1   3种独立模块的具体网络结构图

Fig.1   Specific network structure diagram of three kind independent modules


4) ${\varphi _{\rm{p}}}$:生成预测特征图的方式多种多样,可以采用多条分支生成不同分辨率的特征图,也可以采用通过一条支路不断降低分辨率的形式来生成不同尺度特征图. 两者的不同在于后者将独立模块输出的特征图直接作为预测特征图,本文采用后者来生成预测特征图.

2.1. 独立模块

图1(a)所示为金字塔池化模块(pyramid pooling module,PPM). 图中,Ap为平均池化;Upsample表示双线性上采样;圆圈中的’+’表示逐元素相加,下同. 以文献[9]中的金字塔池化为基础,在每条分支前加入 $1 \times 1$卷积进行降维(每条分支的特征图通道数降到输入特征图通道数的 $1/4$$1/8$),去掉跳过连接(skip connection),加入ResNet中的快捷连接(shortcut connection)(快捷连接有助于独立模块训练,避免退化问题),并对每条分支输出特征图大小按预测层特征图大小进行修正,以适合预测网络,整体类似于金字塔结构,有助于形成多尺度上下文信息.

图1(b)所示为空洞空间金字塔池化模块(atrous spatial pyramid pooling module,ASPPM). 在文献[11]的空洞空间金字塔池化基础上,在每条分支前加入 $1 \times 1$卷积进行降维,调整分支数目和分支空洞卷积采样率r(分支空洞卷积采样率以不超过输入特征图分辨率为原则,并按文献[11]中的等比数列形式进行设置,来捕获多尺度上下文信息,空洞卷积采样率过大会导致卷积核有效权重数量退化;分支数目根据空洞卷积采样率数目进行设置),并加入快捷连接.

图1(c)所示为强化上下文模块ECM,以文献[1]中的感受野模块(receptive field block,RFB)模型为基础,调整分支数目和各分支各层特征图通道数,并利用空洞卷积代替1个 $5 \times 5$或2个堆叠的 $3 \times 3$卷积,形成双空洞卷积结构,丢弃 $1 \times 3$$3 \times 1$卷积分支,全采用单条 $3 \times 3$卷积分支(前者虽然减少了卷积核参数,但增多了分支数). 双空洞卷积结构如图2(a)所示,其中采样率 ${{b}} > a$,用于模拟文献[13]中人眼视觉系统中的群感受野机制,第一个空洞卷积模拟群感受野大小,第二个空洞卷积模拟视网膜图中的偏心率. 相比RFB中的模拟分支,双空洞卷积结构不仅能减少参数量,还能形成更大的有效感受野来强化上下文信息(若结构中 $s = c$忽略不写,则表示该层卷积默认采用 $c = 1$的步长). 双空洞卷积结构中的采样率以理论感受野计算公式为指导(见式(5)),在模拟群感受野的基础上以等间隔密集采样为原则进行设置:

图 2

图 2   双空洞卷积结构及其理论感受野

Fig.2   Double-atrous convolution structure and its theory receptive field


$ {R_k} = {R_{k - 1}} + ({f_k} - 1) \times \prod\limits_{i = 1}^{k - 1} {{s_i}} . $

式中: $R$为感受野大小; ${{k}}$表示第 ${{k}}$层; ${{s}}$为步长; ${{f}}$为卷积核的大小, ${{f}} = {f'} + 2 \times (r - 1)$${{r}}$为采样率, ${{{f}}'}$为空洞卷积实际有效的卷积核大小.

图2(b)所示为当 $a = 1\text{、}b = 3$时的双空洞卷积理论感受野,虚线阴影部分为第一个空洞卷积作用区域,深色填充部分为第二个空洞卷积作用区域,将两者叠加,模拟群感受野机制. ECM中每条分支中的各层特征图通道数均按照逐层扩增为原来的2倍或1.5倍的方式进行调整. 多条分支结合模拟人眼群感受野.

由于不同预测层特征图大小不同,相应各独立模块分支数目、分支空洞卷积采样率(r)大小以及池化后分辨率大小均有所调整,详细结构参见附录A.

2.2. 强化上下文网络架构

2.2.1. 骨干网络

目标检测常用目标分类网络作为骨干网络,如VGG16、ResNet、DarkNet19/51[14-15]等. 为了兼顾速度和可对比性,采用VGG16作为强化上下文网络的骨干网络.

2.2.2. 预测网络

预测网络采用多层检测方法对不同尺度目标进行检测,以ECM独立模块作用于4种大小特征图( $38 \times 38,19 \times 19,10 \times 10,5 \times 5$)为例. 在conv4_3后连接ECM模块,在fc7后依次连接ECM_m、ECM_s和ECM_ss模块,并将各模块的输出送入检测层,进行目标定位和识别,如图3所示,将conv8_2和conv9_2的输出直接送入检测层.

图 3

图 3   强化上下文模型网络架构

Fig.3   Enhanced context model network architecture


独立模块作用的特征图范围不同,强化上下文网络架构也有所不同,详见附录B.

2.3. 训练环境和策略

训练过程均在NVIDIA GeForce GTX 1080Ti上进行,基于PyTorch实现训练和测试. 训练遵循SSD,使用相同的匹配策略、训练目标、难分样本挖掘和默认框尺度及宽高比,详见文献[2]. 默认框单位数目有所不同,将SSD中的 $[4,6,6,6,4,4]$改为 $[6,6,6,6,4,4]$;数据增强策略稍有变化,除SSD所使用的数据增强方法外,加入小角度旋转变换(旋转角度范围为 $-{3^ \circ }\sim {3^ \circ }$). 这是首次将旋转变换引入到一阶段目标检测网络中. 如图4(c)所示,小角度旋转变换公式如下(旋转后图像上留出的空白区域先用训练集上所有图像统计出的RGB均值进行填充,然后在缩放到统一输入图像大小的过程中图像上每一像素点都减去上述RGB均值):

图 4

图 4   小角度旋转变换举例和原理图示意

Fig.4   Example and schematic diagram of small-angle rotation transformation


$ \begin{array}{l} [p_1', p_2', p_3', p_4'] = \left[ {\begin{array}{*{20}{c}} {p_{1x}'}&{p_{2x}'}&{p_{3x}'}&{p_{4x}'} \\ {p_{1y}'}&{p_{2y}'}&{p_{3y}'}&{p_{4y}'} \end{array}} \right] = \\ \qquad \qquad \left[ {\begin{array}{*{20}{c}} {\cos \; \theta }&{ - \sin \; \theta } \\ {\sin \; \theta }&{\cos \; \theta } \end{array}} \right]\left[ {\begin{array}{*{20}{c}} {{p^{}_{1x}}}&{{p^{}_{3x}}}&{{p^{}_{3x}}}&{{p^{}_{1x}}} \\ {{p^{}_{1y}}}&{{p^{}_{1y}}}&{{p^{}_{3y}}}&{{p^{}_{3y}}} \end{array}} \right]. \\ \end{array} $

$ \left. \begin{array}{l} p_{1x}^{''} = {\rm{min}} \;\left( {p_{1x}',p_{2x}',p_{3x}',p_{4x}'} \right), \\ p_{3x}^{''} = {\rm{max}} \;\left( {p_{1x}',p_{2x}',p_{3x}',p_{4x}'} \right), \\ p_{1y}^{''} = {\rm{min}} \;\left( {p_{1y}',p_{2y}',p_{3y}',p_{4y}'} \right), \\ p_{3y}^{''} = {\rm{max}} \;\left( {p_{1y}',p_{2y}',p_{3y}',p_{4y}'} \right). \end{array} \right\} $

$ \left[ {p_1^{''},\,p_3^{''}} \right] = \left[ {\begin{array}{*{20}{c}} {p_{1x}^{''}}&{p_{3x}^{''}} \\ {p_{1y}^{''}}&{p_{3y}^{''}} \end{array}} \right]. $

式中: ${{{p}}_1}\text{、}{p_2}\text{、}{p_3}\text{、}{p_4}$分别为旋转前标注框4个顶点相对于图像中心点 $p$的坐标点; ${{p}}_1'\text{、}p_2'\text{、}p_3'\text{、}p_4'$分别为 ${{{p}}_1}\text{、}{p_2}\text{、}{p_3}\text{、}{p_4}$绕图像中心点 $p$旋转角度 $\theta $后得到的坐标点. 由于旋转后矩形框 ${{p}}_1'p_2'p_3'p_4'$(即图4(c)中的虚线框)不再是水平框,具有一定的方向角度,对旋转后的矩形框进行处理,转化为水平框,得到矩形框 ${{p}}_1^{''}p_2^{''}p_3^{''}p_4^{''}$,如图4(c)所示. 由于水平框只需要左上角和右下角坐标,小角度旋转变换公式只需要点 ${p_1}\text{、}{p_3}$的坐标值,对应旋转后也只需要点 ${{p}}_1^{''}\text{、}p_3^{''}$的坐标值.

训练过程使用MSAR[16]初始化所有预测层,用于生成目标边界框坐标和置信度信息的检测层采用PyTorch中的默认初始化,并在VGG16预训练模型上进行微调. 训练细节将在第3章中说明.

3. 实验结果与分析

所有实验均在VOC2007和VOC2012 训练验证集上进行训练,并在VOC2007测试集上进行测试,且输入图像大小均缩放到 $300 \times 300$. 训练过程采用 “warm up”加“multistep”学习率策略,在前5个周期内逐步将学习率从1×10−6提升到 $4 \times {10^{-3}}$,进行网络预热. 预热结束后,固定初始学习率为 $4 \times {10^{-3}}$,并在第150、200、250个周期后分别除以10,进行“multistep”训练模式,总训练周期为300. 训练采用随机梯度下降法(stochastic gradient descent,SGD)优化目标函数,批量大小为32,动量为0.9,权重衰减系数为0.000 5,训练基于PyTorch 0.3.1、CUDA 9.0和cuDNN v5等框架.

评价指标采用均值平均精度(mean average precision,mAP),记为 $\varPhi $,衡量模型在所有类别上的综合检测结果,通过“11点法”(11个等间距召回率 $[0,0.1,0.2,\cdots,1]$形成的11个采样点)[17]来计算模型在每一种目标上的平均精度(average precision,AP),记为 $\phi $,在此基础上计算得到均值平均精度(式(9)中的20表示VOC数据集共有20类目标):

$ \varPhi = \frac{1}{{20}}\sum\limits_{i = 1}^{20} {{\phi_i}} . $

$ \phi = \frac{1}{{11}}\sum\limits_{{{t}} \in \{ 0,0.1,0.2,\cdots,1\} } {{{{P}}_{\max }}({{t}})} . $

$ {{{P}}_{\max }}({t}) = \mathop {\max }\limits_{{{R}}:{{R}} \geqslant {{t}}} P({{R}}). $

$ P {\rm{ = }} \frac{{{N_{{\rm{TP}}}}}}{{{N_{{\rm{TP}}}}{\rm{ + }}{N_{{\rm{FP}}}}}},R = \frac{{{N_{{\rm{TP}}}}}}{{{N_{{\rm{TP}}}}{\rm{ + }}{N_{{\rm{FN}}}}}}. $

式中:t为等间距召回率采样点, ${{{P}}_{\max }}({{t}})$为所有超过 ${{t}}$的召回率所对应的精确率的最大值; $P({{R}})$为召回率 ${{R}}$所对应的精确率; ${{P}}$为精确率, ${{R}}$为召回率;TP表示真阳性,即预测为正样本,实际也为正样本,FP为假阳性,FN为假阴性, ${N_{\rm{TP}}}$${N_{\rm{FP}}}$${N_{\rm{FN}}}$分别为真阳性、假阳性、假阴性的目标数量.

3.1. PASCAL VOC2007测试集上的消融研究

3.1.1. 独立模块

测试图1中3种独立模块在VOC2007测试集上的检测性能. 如表1所示(均带有小角度旋转变换),不含 $5 \times 5$独立模块的ECMNet在参数量(记为 $\varPsi $)和检测结果上都优于含 $5 \times 5$独立模块的PPMNet和ASPPMNet. ECM中的双空洞卷积结构起到了有效强化上下文信息的作用,比PPM中的池化操作和ASPPM中的空洞卷积给均值平均精度带来更大增益. 结合图5有效感受野可视化结果中的图(c)~(e)可以进一步看出,ECM中的双空洞卷积结构比PPM中的池化操作和ASPPM中的空洞卷积具有更大的有效感受野,而有效感受野大小可以粗略表示上下文信息的丰富程度,即ECM中双空洞卷积结构在强化上下文方面优于PPM中的池化操作和ASPPM中的空洞卷积.

表 1   3种独立模块在VOC2007测试集上的测试结果

Tab.1  Test results of three different independent modules on VOC2007 test set

网络模型 是否含 $5 \times 5$独立模块 $\varPsi $/106 $\varPhi $/%
PPMNet ~30.00 79.96
~30.42 79.96
ASPPMNet ~30.15 80.12
~30.61 80.20
ECMNet ~29.96 80.30
~30.33 80.52

新窗口打开| 下载CSV


图 5

图 5   5类网络模型在2种预测层上的有效感受野

Fig.5   Effective receptive field on two kind prediction layers of five network models


3.1.2. 独立模块作用的特征图范围

表2所示,对 $38 \times 38\text{、}19 \times 19\text{、}10 \times 10\text{、}5 \times 5$分辨率的特征图是否添加ECM进行研究(同第3.1.1节,均带有小角度旋转变换). 从表2可知,当ECM作用于4种分辨率特征图时,所获得的检测结果最好,而当只作用于 $38 \times 38$分辨率特征图时检测结果最差,但仍比原始SSD网络均值平均精度高出2.37个百分点(详见表4中的 ${\rm{SSD}}{300^{\rm{*}}}$),且随着作用范围的扩大性能缓慢提升,可见ECM在强化浅层上下文信息上更加有效. $38 \times 38\text{、}19 \times 19\text{、}10 \times 10\text{、}5 \times 5$这4种分辨率特征图用于预测中小型目标,且位于网络中浅层,缺乏足够的上下文信息,导致检测结果不佳,而ECM的加入所带来的性能上的提升正是得益于ECM对上下文信息的有效强化,特别是4种分辨率特征图全作用时网络检测性能提升最大.

表 2   ECM作用下的特征图范围测试结果

Tab.2  Test results of feature map range acted by ECM

$38 \times 38$ $19 \times 19$ $10 \times 10$ $5 \times 5$ $\varPhi $/%
注:""则表示ECM作用于相应分辨率的特征图.
79.88
80.33
80.30
80.52

新窗口打开| 下载CSV


表 4   各网络参数量及VOC2007测试集上的均值平均精度

Tab.4  Parameters of each network and mean average precision on VOC2007 test set

方法 $\varPsi $/106 $\varPhi $/%
注:1)均值平均精度80.50%为文献[1]中所给的结果,自测结果只有80.42%,详见表6倒数第二行; ${\rm{ECMNe}}{{\rm{t}}_{{\rm{no}} \,{\rm{rotation}}}}300$表示不含小角度旋转变换.
${\rm{SSD}}{300^{\rm{*}}}$ ~26.29 77.51
${\rm{RFB}}\,{\rm{Net300}}$ ~34.19 80.501
${\rm{ECMNe}}{{\rm{t}}_{{\rm{no}} \,{\rm{rotation}}}}300$ ~30.33 80.29
${\rm{ECMNet}}300$ ~30.33 80.52

新窗口打开| 下载CSV


3.1.3. 小角度旋转变换

对小角度旋转变换数据增强进行初步实验,在训练策略相同的情况下,测试结果如表3所示. 对于不含 $5 \times 5$独立模块的ECMNet,小角度旋转变换均值平均精度提升了0.13%;对于含 $5 \times 5$独立模块的ECMNet,均值平均精度提升了0.23%. 加入小角度旋转变换数据增强,能够提升网络对小角度旋转变换的鲁棒性,配合强化上下文模块ECM,进一步带来性能上的增益.

表 3   小角度旋转变换在VOC2007测试集上的测试结果

Tab.3  Test results of small-angle rotation transformation on VOC2007 test set

是否含 $5 \times 5$ 独立模块 小角度旋转变换 $\varPhi $/%
80.17
80.30
80.29
80.52

新窗口打开| 下载CSV


3.1.4. 与其他方法的比较

将ECMNet与SSD、RFB Net在参数量、均值平均精度和有效感受野上进行对比,如表4所示. 可以看出,ECMNet的参数量在其余2种方法之间,比 ${\rm{SSD}}{300^{\rm{*}}}$多大约4×106的参数量,但均值平均精度要高出3.01%;比RFB Net少大约4×106的参数量,而均值平均精度略高出0.1%. 相比SSD和RFB Net,ECMNet达到参数量和精度上的最佳权衡,参数量上的减少主要得益于双空洞卷积结构,精度上的提升得益于双空洞卷积结构在强化上下文上的有效性.

根据文献[3],利用PyTorch的反向传播计算预测层输出中心点对应的有效感受野如图5所示(所有网络的输入相同),其中第一行对应于 $19 \times 19$分辨率预测层,第二行对应于 $38 \times 38$分辨率预测层. 从图5(a)(b)(e)中可以看出,ECM的有效感受野最大,而有效感受野的大小可以粗略表示上下文信息的丰富程度,即ECM中的双空洞卷积结构在强化上下文方面最优. 但从表4中也可以看出,相比RFB Net,ECMNet在均值平均精度上提升不大,主要原因也是受限于有效感受野. 从图5(b)(e)中可以看出,虽然ECM的双空洞卷积结构带来了更大的有效感受野,但有效感受野强度主要集中在中心一小块区域(与RFB Net类似),其他区域强度较小(强度越大表明该区域对当前神经元有着更大的影响). 根据文献[3]的结论,有效感受野大致呈高斯分布,通常会从中心快速衰减,要得到更大的大强度区域,势必要堆叠更多卷积层或增大卷积核实际有效的权重数量(即扩大普通卷积核大小,如用 $5 \times 5$$7 \times 7$甚至更大的卷积核),但这会引入很大的参数量,增加训练难度,同时影响模型速度.

3.2. PASCAL VOC2007上的实验结果
3.2.1. 定量结果

将ECMNet与部分经典和最先进目标检测器进行比较(测试不加入多尺度测试等任何技巧),如表5所示. 可以看出,ECMNet300在 $300 \times 300$输入图像大小下,比 $1000 \times 600$输入图像大小的大部分两阶段网络的检测结果都要好,均值平均精度达到80.52%,检测速度v全面远快于两阶段网络,达到73.5帧/s. 检测结果相比CoupleNet有一定差距,但CoupleNet采用ResNet-101作为骨干网络(性能优于VGG16),且输入图像大小约为 $1\;000 \times 600$,而输入图像大小对精度影响显著[18]. 相比于表5中一阶段网络,ECMNet获得最高均值平均精度,检测速度相比RFB Net也有所提升.

表 5   各目标检测器在VOC2007测试集上的检测结果

Tab.5  Detection results of each object detector on VOC2007 test set

方法 骨干网络 框架 GPU 锚框数目 输入大小 v/(帧·s−1) $\varPhi $/%
注:1)网络模型的官方版本使用Caffe实现,且硬件和环境配置与本文不同,为了公平比较检测速度,使用PyTorch重新实现SSD和FSSD模型,并在相同环境下进行测试;2)网络模型的硬件和环境配置也与本文不同,同样在相同环境下进行测试.
Faster R-CNN[19] VGG16 Caffe K40 300 ~1 000×600 5.0 73.17
ION[20] VGG16 Caffe Titan X 3 000 ~1 000×600 1.3 75.55
R-FCN[21] ResNet-101 Caffe K40 300 ~1 000×600 5.9 79.51
CoupleNet[22] ResNet-101 Caffe Titan X 300 ~1 000×600 9.8 81.70
YOLOv2[14] Darknet-19 darknet Titan X 352×352 81.0 73.70
YOLOv2[14] Darknet-19 darknet Titan X 544×544 40.0 78.60
${\rm{SSD}}{300^{\rm{*}}}$[12] VGG16 Caffe Titan X 8 732 300×300 46.0 77.51
${\rm{SSD}}{300^{1)}}$ VGG16 PyTorch 1080Ti 8 732 300×300 95.3 77.51
DSOD300[23] DS/64-192-48-1 Caffe Titan X 8 732 300×300 17.4 77.66
DSSD321[12] ResNet-101 Caffe Titan X 17 080 321×321 9.5 78.63
R-SSD300[5] VGG16 Caffe Titan X 8 732 300×300 35.0 78.50
FSSD300[6] VGG16 Caffe 1080Ti 11 570 300×300 65.8 78.77
${\rm{FSSD}}300$ 1) VGG16 PyTorch 1080Ti 11 570 300×300 85.7 78.77
RefineDet320[24] VGG16 Caffe Titan X 6 375 320×320 40.3 79.97
RFB Net300[1] VGG16 PyTorch Titan X 11 620 300×300 83.0 80.50
${\rm{RFB}}\,{\rm{Net30}}{\rm{0}}$ 2) VGG16 PyTorch 1080Ti 11 620 300×300 70.0 80.42
ECMNet300 VGG16 PyTorch 1080Ti 11 620 300×300 73.5 80.52

新窗口打开| 下载CSV


PASCAL VOC2007测试集上的完整结果如表6所示. 可知,ECMNet在多个类别上达到最优平均精度,尤其是在小目标类别bottle上,将 ${\rm{SSD}}{300^{\rm{*}}}$的检测平均精度提升了11.3个百分点. ECMNet在另一小目标类别plant上也达到较高平均精度,比大部分一阶段网络检测结果都要好.

表 6   各目标检测器在VOC2007测试集上的完整检测结果

Tab.6  Complete detection results of each object detector on VOC2007 test set

方法 $\varPhi $/% aero bike bird boat bottle bus car cat chair cow table dog horse mbike person plant sheep sofa train tv
注:部分论文中没有给出VOC2007测试集上的完整检测结果,1)网络模型是本文使用对应论文公开发布的权重文件的检测结果.
Faster R-CNN[19] 73.17 76.5 79.0 70.9 65.5 52.1 83.1 84.7 86.4 52.0 81.9 65.7 84.8 84.6 77.5 76.7 38.8 73.6 73.9 83.0 72.6
ION[20] 75.55 79.2 83.1 77.6 65.6 54.9 85.4 85.1 87.0 54.4 80.6 73.8 85.3 82.2 82.2 74.4 47.1 75.8 72.7 84.2 80.4
R-FCN[21] 79.51 82.5 83.7 80.3 69.0 69.2 87.5 88.4 88.4 65.4 87.3 72.1 87.9 88.3 81.3 79.8 54.1 79.6 78.8 87.1 79.5
SSD300*[12] 77.51 79.5 83.9 76.0 69.6 50.5 87.0 85.7 88.1 60.3 81.5 77.0 86.1 87.5 84.0 79.4 52.3 77.9 79.5 87.6 76.8
${\rm{DSOD30}}{{\rm{0}}}$ 1) 77.66 80.5 85.5 76.7 70.9 51.5 87.4 87.9 87.1 61.7 79.3 77.1 83.2 87.1 85.6 80.9 48.5 78.7 80.2 86.7 76.7
DSSD321[12] 78.63 81.9 84.9 80.5 68.4 53.9 85.6 86.2 88.9 61.1 83.5 78.7 86.7 88.7 86.7 79.7 51.7 78.0 80.9 87.2 79.4
${\rm{FSSD}}{300}$ 1) 78.77 82.3 85.8 78.2 73.6 56.8 86.3 86.4 88.1 60.3 85.8 77.7 85.3 87.7 85.4 79.9 54.1 77.9 78.7 88.4 76.7
RefineDet320[24] 79.97 83.9 85.4 81.4 75.5 60.2 86.4 88.1 89.1 62.7 83.9 77.0 85.4 87.1 86.7 82.6 55.3 82.7 78.5 88.1 79.4
${\rm{RFB}}\,{\rm{Net}}{300}$ 1) 80.42 83.7 87.6 78.9 74.8 59.8 88.8 87.5 87.9 65.0 85.0 77.1 86.1 88.4 86.6 81.7 58.1 81.5 81.2 88.4 80.2
ECMNet300 80.52 83.9 88.3 79.9 73.1 61.8 88.7 87.9 87.8 64.1 85.7 78.9 86.2 88.5 86.9 82.4 56.8 79.6 81.3 88.4 80.2

新窗口打开| 下载CSV


ECM独立模块的双空洞卷积结构减少了模型参数量,对检测速度的提升起到关键作用,在模拟群感受野机制的同时强化上下文,对检测性能的提升也起到关键作用,尤其是对小目标检测性能的提升.

3.2.2. 定性结果

ECMNet在PASCAL VOC2007测试集上的定性结果如图67所示. 图6中第1行和第3行为 ${\rm{SSD}}{300^{\rm{*}}}$检测结果,第2行和第4行为ECMNet300检测结果. 从图6可以看出,ECMNet相比SSD有几个优势:1)降低了识别错误,如前2行的第1、2列;2)降低了将多个同类目标检测为一个目标的概率,如前2行的第3、4列;3)提升了小目标的检测性能,如前2行的第5列和后2行的前3列;4)降低了漏检的概率,如后2行的最后2列. ECM独立模块利用双空洞卷积结构强化上下文,有助于降低类间的识别错误,同时能降低类内的检测错误;强化的上下文增加了小目标在特征图中的信息,从而提升了小目标检测性能,信息的增加也有助于降低目标漏检. 更多可视化结果如图7所示,可以看出,本文设计的ECMNet能够有效检测出绝大多数目标.

图 6

图 6   ECMNet(偶数行)和SSD(奇数行)在VOC2007测试集上的部分检测结果

Fig.6   Some detection results of ECMNet (even rows) and SSD (odd rows) on VOC2007 test set


图 7

图 7   ECMNet在VOC2007测试集上的更多可视化结果

Fig.7   More visualization results of ECMNet on VOC2007 test set


4. 结 语

针对网络浅层缺乏足够的上下文信息和特征融合方式强化上下文灵活性受限,本研究提出了强化上下文模型. 从有效感受野出发,在RFB的基础上,利用双空洞卷积结构形成用于强化上下文的ECM独立模块,并研究ECM作用的特征图范围,得到最优强化上下文网络架构ECMNet. 在PASCAL VOC2007测试集上的检测结果表明,ECMNet能够有效强化上下文,提升网络浅层的检测性能,在速度和精度方面优于许多先进目标检测器. 同时,将小角度旋转变换引入目标检测数据增强中,能够略微提升检测性能.

未来可进一步从空洞卷积和有效感受野出发设计更优的增强上下文信息的独立模块;进一步研究小角度旋转变换中角度范围、旋转后边界框生成方式等;将ECMNet用于检测特定目标,如:接触网悬挂场景目标.

附录A附录B

参考文献

LIU S T, HUANG D, WANG Y H. Receptive field block net for accurate and fast object detection [C] // European Conference on Computer Vision. Munich: Springer, 2018: 404-418.

[本文引用: 4]

LIU W, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector [C] // European Conference on Computer Vision. Amsterdam: Springer, 2016: 21-37.

[本文引用: 3]

LUO W J, LI Y J, URTASUN R, et al. Understanding the effective receptive field in deep convolutional neural networks [C] // Neural Information Processing Systems. Barcelona: [s. n.], 2016: 4898-4906.

[本文引用: 3]

LIN T Y, DOLLAR P, GIRSHICK R, et al. Feature pyramid networks for object detection [C] // Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 936-944.

[本文引用: 1]

JEONG J, PARK H, KWAK N. Enhancement of SSD by concatenating feature maps for object detection [EB/OL]. (2017-05-26)[2019-02-26]. https://arxiv.xilesou.top/abs/1705.09587.

[本文引用: 2]

LI Z X, ZHOU F Q. FSSD: feature fusion single shot multibox detector [EB/OL]. (2018-05-17)[2019-02-26]. https://arxiv.org/abs/1712.00960.

[本文引用: 3]

SHELHAMER E, LONG J, DARRELL T

Fully convolutional networks for semantic segmentation

[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2015, 39 (4): 640- 651

[本文引用: 2]

BADRINARAYANAN V, KENDALL A, CIPOLLA R

Segnet: a deep convolutional encoder-decoder architecture for image segmentation

[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 39 (12): 2481- 2495

DOI:10.1109/TPAMI.2016.2644615      [本文引用: 1]

ZHAO H S, SHI J P, QI X J, et al. Pyramid scene parsing network [C] // Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 6230-6239.

[本文引用: 2]

CHEN L C, PAPANDREOU G, KOKKINOS I, et al

DeepLab: semantic image segmentation with deep convolutional nets, atrous convolution, and fully connected crfs

[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2017, 40 (4): 834- 848

[本文引用: 1]

CHEN L C, PAPANDREOU G, SCHROFF F, et al. Rethinking atrous convolution for semantic image segmentation [EB/OL]. (2017-12-25)[2019-02-26]. https://arxiv.org/abs/1706.05587.

[本文引用: 3]

FU C, LIU W, RANGA A, et al. DSSD: deconvolutional single shot detector [EB/OL]. (2017-01-23)[2019-02-26]. https://arxiv.org/abs/1701.06659.

[本文引用: 5]

WANDELL B A, WINAWER J

Computational neuroimaging and population receptive fields

[J]. Trends in Cognitive Sciences, 2015, 19 (6): 349- 357

DOI:10.1016/j.tics.2015.03.009      [本文引用: 1]

REDMON J, FARHADI A. Farhadi. YOLO9000: better, faster, stronger [C] // Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 7263-7271.

[本文引用: 3]

REDMON J, FARHADI A. YOLOv3: an incremental improvement [EB/OL]. (2018-04-08)[2019-02-26]. https://arxiv.org/abs/1804.02767.

[本文引用: 1]

HE K M, ZHANG X Y, REN S Q, et al. Delving deep into rectifiers: surpassing human-level performance on imagenet classification [C] // International Conference on Computer Vision. Santiago: IEEE, 2015: 1026-1034.

[本文引用: 1]

EVERINGHAM M, GOOL L V, WILLIAMS C K I, et al

The pascal visual object classes (VOC) challenge

[J]. International Journal of Computer Vision, 2010, 88 (2): 303- 338

DOI:10.1007/s11263-009-0275-4      [本文引用: 1]

HUANG J, RATHOD V, SUN C, M, et al. Speed/accuracy trade-offs for modern convolutional object detectors [C] // Computer Vision and Pattern Recognition. Honolulu: IEEE, 2017: 3296-3297.

[本文引用: 1]

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

DOI:10.1109/TPAMI.2016.2577031      [本文引用: 2]

BELL S, ZITNICK C L, BALA K, et al. Inside-outside net: detecting objects in context with skip pooling and recurrent neural networks [C] // Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 2874-2883.

[本文引用: 2]

DAI J F, LI Y, HE K M, et al. R-FCN: object detection via region-based fully convolutional networks [C] // Neural Information Processing Systems. Barcelona: [s. n.], 2016: 379-387.

[本文引用: 2]

ZHU Y S, ZHAO C Y, WANG J Q, et al. CoupleNet: coupling global structure with local parts for object detection [C] // International Conference on Computer Vision. Venice: IEEE, 2017: 4146-4154.

[本文引用: 1]

SHEN Z Q, LIU Z, LI J G, et al. DSOD: learning deeply supervised object detectors from scratch [C] // International Conference on Computer Vision. Venice: IEEE, 2017: 1937-1945.

[本文引用: 1]

ZHANG S F, WEN L Y, BIAN X, et al. Single-shot refinement neural network for object detection [C] // Computer Vision and Pattern Recognition. Salt Lake City: IEEE, 2018: 4203-4212.

[本文引用: 2]

/