目前,目标检测技术已经应用于很多领域,无人驾驶中道路目标的检测,军事科技中目标的监控导航,医疗影响中病变位置的检测等[1-4]。小目标检测作为目标检测的一项关键技术,近年来已成为研究的热点。小目标因为尺度过小、特征不清晰、边框信息模糊、易被干扰等特点,容易造成误检漏检。因此,小目标检测技术仍需完善。
目标检测算法主要有2类,第1类是双阶段检测方法,例如RCNN[5]、Faster-RCNN[6]、Mask-RCNN[7]等,该类算法首先在特征图上对可能存在目标的位置提取候选区域框,然后对提取到的特征进行筛选和定位。对于小目标的检测,RCNN系列的算法未缩放原图尺寸,当目标本身像素过低,在一定深度的网络上,提取到的特征图中会丢失很多小目标的边缘信息,影响检测效果。第2类是单阶段检测方法,以SSD[8]和YOLO[9]为主,YOLO算法的做法是将特征图等分为n×n的网格,但是一个网格中存在多个小目标的时候,会造成目标的漏检和误检,而SSD算法在一个网格中提取多个候选区域,兼顾检测的准确率和速度。但是,由于SSD的检测模型只有底层的conv4_3用于检测小目标,不具有足够的语义信息,因此SSD模型无法有效检测小目标,其效果有待提升。
为了提高SSD模型对小目标的检测准确率,2017年,Liu W等[10]在SSD的基础上做了进一步改进,充分利用特征层之间的上下文信息,使用残差网络提升特征网络的表征能力,提出DSSD模型,但是这种方法使检测速度大幅度降低。Bharat等[11]提出SNIP算法,主要对特征图进行不同倍数的上采样,实验出了相对最优的检测小目标的特征图尺寸,预测时建立多尺度预测模型,筛选出指定范围内的候选框,最后通过soft-nms[12]融合不同分辨率下的检测结果,效果显著。文献[13]提出了receptive field block(RFB),通过调整感受野大小,进一步增强网络的特征提取能力,将RFB与SSD结合,从而有效增大了感受野,提高了检测准确率。基于特征融合的思想,Seung-Wook Kim等[14]提出的PFPNet模型在SSD模型基础上引入SPPNet[15]方法构造特征金字塔,取得了显著的效果。Chenchen Zhu等提出的FSAF[16]模型让目标自动选择最合适的特征,实现了模型自动化学习,FSAF模块集成到SSD模型中可以有效提高小目标检测准确率。
DSSD算法和文献[17]提出的基于反卷积操作改进的SSD算法都只是用反卷积层和特征层进行点积融合,并未充分利用小目标的边缘信息,本文依据SSD模型中不同特征层与不同大小目标的相关性,通过反卷积增大特征层conv4_3分辨率,映射特征信息,池化后与具有丰富语义信息的conv11_2特征图拼接,最后将SSD模型中固有的特征层与改进后的特征层融合,很大程度上丰富了特征图中小目标的特征信息。本文主要选取SSD、DSSD和RFB模型在VOC2007测试集和KITTI车辆检测数据集上作对比实验,比较检测的mAP值。实验结果表明,通过训练改进后的SSD模型,在VOC2007测试集上和KITTI中2012 2D Object Detection left color images of object data数据集的mAP分别为82.6%和68.9%,对小目标检测的平均准确率有显著提升。
1 相关工作 1.1 SSD网络结构SSD模型以VGG16网络为基础模型,并通过对ILSVRC CLS-LOC数据集上预训练,采用多尺度特征图检测方法,其中特征层conv4_3输出的特征图分辨率最高,为38×38,负责检测小目标。其检测模型如图1所示。
Download:
|
|
反卷积是卷积操作的逆运算,能够增大特征图分辨率,扩大感受野,卷积与反卷积的过程如图2所示。
Download:
|
|
图2(a)为卷积过程,特征图尺寸为5×5,卷积核大小为3×3,步长为2,填充为1,经过卷积计算,得到的输出特征为3×3。图2(b)为反卷积过程,输入特征图尺寸为2×2,卷积核大小3×3,步长为1,填充为2,计算得到的特征输出为4×4。依次推算,得出反卷积过程中特征图的输入输出关系:
${{o'}} = s(i' - 1) + k - 2p$ | (1) |
式中:
浅层特征图未经过大量的卷积池化,分辨率较高。与一般目标检测相比,小目标因为尺寸小,其特征在浅层特征图上更能体现出来。针对这一特点,本文采用反卷积操作,增大特征图分辨率,以便更直观地反映小目标的特征。
2 反卷积与特征融合相结合的检测模型针对 SSD 模型对小目标检测能力不足的问题,本文首先用反卷积增大负责检测小目标的特征层conv4_3的特征图,然后再对拥有丰富语义信息的特征层conv11_2得到的特征图进行上采样拼接到改进后的特征图nconv4_3上,最后与SSD模型固有的多尺度特征层进行像素直接加权和不同加权系数的特征融合。本文提出的反卷积和特征融合的SSD小目标检测模型如图3所示。
Download:
|
|
图3中虚框部分为反卷积特征区域放大模块,主要作用是通过反卷积放大conv4_3特征图分辨率,与上采样的conv11_2特征图拼接,得到新的特征层nconv4_3。SSD模型其他特征层为conv7、conv8_2、conv9_2和conv10_2,与nconv4_3进行不同加权系数的特征融合,最后进行对目标的定位检测并输出。
2.1 反卷积特征区域放大SSD 的结构与图像金字塔类似,低层特征图分辨率高,拥有更详细的边缘信息,利于检测小目标,但是缺乏高层特征图所包含的语义信息。因此,本文提出了一种通过反卷积增大特征区域分辨率,拼接深层特征图的方法,图3中的反卷积特征区域放大模块,具体做法分为以下5个步骤:
1) 提取SSD模型中第1个负责检测小目标的特征层conv4_3的特征图,作为候选区域。
2) 反卷积操作作用与特征图conv4_3,增大其分辨率至输入图像尺寸,使得目标特征更加显著,根据第2.2节中反卷积的输入输出关系公式,SSD300模型将输入图像尺寸压缩至300×300,conv4_3得到的特征图尺寸为38×38,则设置卷积步长s=8,卷积核尺寸k=4,填充p=1。SSD512模型将输入图像尺寸设置为512×512,经过卷积层conv4_3后,特征图尺寸为64×64,则设置卷积步长s=8,卷积核尺寸k=8,填充p=0。经过反卷积作用特征图后,得到新的特征图deconv4_3。
3) 提取卷积层conv4_3的特征图的特征信息,特征映射到deconv4_3上,此处的特征映射包含特征图像素点的映射和感受野坐标的映射,首先将特征图conv4_3每个位置的像素映射到deconv4_3上,坐标映射公式如下:
$g(x,y) = f(h(x,y))$ | (2) |
式中:
Download:
|
|
图4表示特征图conv4_3与特征图deconv4_3之间的感受野坐标映射关系,p为中心点。将点p映射到deconv4_3中,坐标变化所采用的公式如下:
${p_i} = {u_i} \times {p_{i + 1}} + (({t_i} - 1)/2 - {\rm padding})$ | (3) |
式中:
4) 将特征映射后的deconv4_3池化为固定尺寸。
5) 将卷积层conv11_2的特征图上采样,得到conv′11_2,其尺寸与池化后的deconv4_3相同。
6) 拼接池化后的deconv4_3与conv′11_2的特征图,形成新的检测特征层nconv4_3。
2.2 特征融合根据高分辨的浅层特征图细节特征丰富,低分辨率的深层特征图上下文信息和语义信息丰富的特点,本文采用加权特征融合的方式,将SSD固有的多尺度特征图与第2.1节得到的新的特征图进行融合,增强图像特征信息,提高小目标检测的准确率。
加权融合是直接的图像融合方法,该方法实现简单,运算效率高,冗余信息少。目前的特征融合的方式多为直接相加,本文旨在提升小目标的检测效果,因此未直接采用相同权值加权,低层特征图拥有更多小目标的细节特征信息,因此本文在相同权值直接相加的基础之上,额外为5个不同尺度的特征图分配加权系数,经过多次调参实验,得到一组相对最优权值,分别为30%、20%、15%、15%、20%。特征向量的输出如式(4)所示:
$\begin{gathered} F=V+{{a}_{1}}v(n{\rm{conv}}4\_3)+{{a}_{2}}v({\rm{conv}}7)+\\ {{a}_{3}}v({\rm{conv}}8\_2)+{{a}_{4}}v({\rm{conv}}9\_2)+ {{a}_{5}}v({\rm{conv}}10\_2) \end{gathered} $ | (4) |
式中:
SSD模型从卷积层中提取conv7、conv8_2、conv9_2、conv10_2,作为检测所用的特征图,融合第3.1节中改进后的nconv4_3层,共5个特征图,其大小分别是(38×38)、(19×19)、(10×10)、(5×5)、(3×3),不同特征图设置的先验框数目为9、6、6、6、6。先验框的尺度大小变化为线性变化,公式如下:
${s_k} = {s_{\min }} + \frac{{{s_{\max }} - {s_{\min }}}}{{m - 1}}(k - 1),k \in [1,m]$ | (5) |
式中:
本文实验所用的配置为:Linux操作系统Ubuntu16.04LT,选用intel(R)Core(TM)i7-8700的CPU,NVIDIA GeForce TX1080Ti的GPU,深度学习框架为Tensor flow。
3.2 实验数据集为避免训练数据量不足造成的过拟合问题,本文选用PASCAL VOC和KITTI两个数据集上面做对比实验,首先在PASCAL VOC数据集中选voc2007+voc2012中的训练数据部分为训练集,在voc2007测试数据集上做测试。为验证本文模型的检测效果,与SSD、DSSD和文献[11]提出的RFB 3种算法作比较,分别在输入图像尺寸为300×300和521×512下进行对比实验。
其次,本文选取2012 2D Object Detection left color images of object data作为训练集和测试集。该数据集来自于KITTI车辆检测数据,包括各种道路场景中的车辆,而且也包括大量较小的目标车辆,为验证本文提出模型的检测效果,分别与SSD、DSSD和文献[12]提出的算法进行对比试验。
3.3 实验结果及对比通过改进SSD模型,对加权特征融合权重参数调优,本文模型在VOC2007和VOC2012训练集上训练,在VOC 2007测试集上的平均mAP为82.6%,与SSD、DSSD和RFB Net分别对比,实验结果如表1所示。
由表1数据可知,在VOC2007数据集上测试,输入图像尺寸为300×300时,本文提出模型的mAP为81.4%,较SSD、DSSD和RFB Net分别提高3.7%、2.3%和0.4%。输入图像为512×512时,本文提出模型的mAP为82.6%,较SSD、DSSD和RFB Net分别提高2.8%、1.1%和0.4%。
本文提出的模型旨在提升小目标的检测准确率,VOC2007测试集中有21类不同大小的目标,本文选取其中6类具有代表性的小目标,检测准确率与SSD和DSSD对比,实验结果如表2所示。
由表2可知,输入图像尺寸为300×300时,本文提出的模型在6类小目标的平均检测准确率为68.0%,较SSD300和DSSD321模型分别提升2.2%和3.8%,其中buttle和bird的检测准确率提升较为显著。当输入图像尺寸为512×512时,在6类小目标的平均检测准确率为68.0%,较SSD512和DSSD513模型分别提升3.1%和1.7%。可见本文方法能有效检测小目标,对小目标检测的平均准确率有明显的提升。
为进一步验证本文提出的模型对小目标识别的准确率,选取2012 2D Object Detection left color images of object data数据集作为训练集和测试集。将数据集中的8类目标整合为3类,分别为行人、机动车辆、其他目标。实验结果如表3所示。
文献[18]为吴天舒等提出的基于改进SSD的轻量化小目标检测模型。由表2对比可知,本文提出的模型在KITTI数据集上的mAP较SSD512、DSSD513、文献[18]模型分别提升了6.8%、1.6%和0.8%,效果显著,可见本文提出的模型对于小目标的识别效果较好。
4 结论针对小目标的检测,本文提出了利用反卷积与特征融合的方法改进原有的SSD模型,对低层特征层进行反卷积增大分辨率,融合深层特征层提高小目标特征信息,然后进行多尺度特征融合,实验结果表明本文提出模型在整体的检测准确率较SSD、DSSD模型有明显提升,对小目标检测的准确率提升尤为显著。但是,由于反卷积操作增大了模型的计算量,使得检测速度大幅降低。优化网络结构,降低特征信息冗余将是之后的主要研究方向。
[1] |
杨会成, 朱文博, 童英. 基于车内外视觉信息的行人碰撞预警方法[J]. 智能系统学报, 2019, 14(4): 752-760. YANG Huicheng, ZHU Wenbo, TONG Ying. Pedestrian collision warning system based on looking-in and looking-out visual information analysis[J]. CAAI transactions on intelligent systems, 2019, 14(4): 752-760. (0) |
[2] |
姚群力, 胡显, 雷宏. 深度卷积神经网络在目标检测中的研究进展[J]. 计算机工程与应用, 2018, 54(17): 1-9. YAO Qunli, HU Xian, LEI Hong. Application of deep convolutional neural network in object detection[J]. Computer engineering and applications, 2018, 54(17): 1-9. DOI:10.3778/j.issn.1002-8331.1806-0377 (0) |
[3] |
龙敏, 佟越洋. 应用卷积神经网络的人脸活体检测算法研究[J]. 计算机科学与探索, 2018, 12(10): 1658-1670. LONG Min, TONG Yueyang. Research on face liveness detection algorithm using convolutional neural network[J]. Journal of frontiers of computer science and technology, 2018, 12(10): 1658-1670. DOI:10.3778/j.issn.1673-9418.1801009 (0) |
[4] |
张慧, 王坤峰, 王飞跃. 深度学习在目标视觉检测中的应用进展与展望[J]. 自动化学报, 2017, 43(8): 1289-1305. ZHANG Hui, WANG Kunfeng, WANG Feiyue. Progress and prospect of application of deep learning in target vision detection[J]. Acta automatica sinica, 2017, 43(8): 1289-1305. (0) |
[5] | GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//Proceedings of 2014 IEEE Conference on Computer Vision and Pattern Recognition. Columbus, OH, USA, 2014: 580−587. (0) |
[6] | REN Shaoqing, HE Kaiming, 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 (0) |
[7] | HE Kaiming, GKIOXARI G, DOLLÁR P, et al. Mask R-CNN[C]//Proceedings of 2017 IEEE International Conference on Computer Vision (ICCV). Venice, Italy, 2017: 2980−2988. (0) |
[8] | LIU Wei, ANGUELOV D, ERHAN D, et al. SSD: single shot multibox detector[C]//Proceedings of the 14th European Conference on Computer Vision. Amsterdam, The Netherland, 2016: 21−37. (0) |
[9] | REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once: Unified, real-time object detection[C]//Proceedings of 2016 IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA, 2016: 779-788. (0) |
[10] | FU Chengyang, LIU Wei, RANGA A, et al. DSSD: deconvolutional single shot detector[C]//Computer Vision and Pattern Recognition, 2017. (0) |
[11] | SINGH B, DAVIS L S. An analysis of scale invariance in object detection-SNIP[C]//Proceedings of 2018 IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA, 2018. (0) |
[12] | BODLA N, SINGH B, CHELLAPPA R, et al. Soft-NMS-improving object detection with one line of code[C]//Proceedings of 2017 IEEE International Conference on Computer Vision (ICCV). Venice, Italy, 2017: 5562−5570. (0) |
[13] | LIU Songtao, HUANG Di, WANG Yunhong. Receptive field block net for accurate and fast object detection[C]//Proceedings of ECCV2018, 2018 (0) |
[14] | KIM S W, KOOK H K, SUN J Y, et al. Parallel feature pyramid network for object detection[C]//Proceedings of the 15th European Conference on Computer Vision-ECCV 2018. Munich, Germany, 2018: 239−256. (0) |
[15] | HE Kaiming, ZHANG Xiangyu, REN Shaoqing, 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. DOI:10.1109/TPAMI.2015.2389824 (0) |
[16] | ZHU Chenchen, HE Yihui, SAVVIDES M. Feature selective anchor-free module for single-shot object detection[C]//Proceedings of IEEE Conference on Computer Vision and Pattern Recognition, 2019. (0) |
[17] |
郭川磊, 何嘉. 基于转置卷积操作改进的单阶段多边框目标检测方法[J]. 计算机应用, 2018, 38(10): 2833-2838. GUO Chuanlei, HE Jia. Improved single shot multibox detector based on the transposed convolution[J]. Journal of computer applications, 2018, 38(10): 2833-2838. (0) |
[18] |
吴天舒, 张志佳, 刘云鹏, 等. 基于改进SSD的轻量化小目标检测算法[J]. 红外与激光工程, 2018, 47(7): 0703005. WU Tianshu, ZHANG Zhijia, LIU Yunpeng, et al. A lightweight small object detection algorithm based on improved SSD[J]. Infrared and laser engineering, 2018, 47(7): 0703005. (0) |