改进的SSD算法及其对遥感影像小目标检测性能的分析 下载: 1874次
1 引言
遥感影像目标检测是遥感影像解译的重要分支之一,对于挖掘感兴趣信息至关重要。传统的方法有基于统计的目标检测[1]、基于知识的目标检测[2]以及基于模型的目标检测[3]等,这些方法需要人工设定先验条件,稳健性差,智能程度低,难以应用于大范围自动化作业的需求。
近年来,随着卷积神经网络在2012年的ImageNet[4]图像分类比赛中取得巨大成功后,基于深度学习的目标检测方法开始应用于图像目标检测领域。2013年起,基于深度学习的目标检测算法沿着两条主线发展:一条是以Fast R-CNN[5]、Faster R-CNN[6]、R-FCN[7]算法为典型的基于候选框方式的检测主线;另外一条是以YOLO(You Only Look Once)[8]、SSD[9]、Retina-Net[10]为代表的一体化卷积网络检测算法。一体化检测方式的速度要明显快于基于候选框的检测算法,但检测精度要略逊于后者。文献[ 11]对当前主流的Faster R-CNN、R-FCN及SSD三种检测算法在Microsoft COCO(common objects in context)[12]公开数据集上的性能进行详细对比,结果表明Faster R-CNN的精度最高,而SSD的速度最快。随着深度学习技术的发展,不少学者开始研究利用深度学习方法进行遥感影像目标检测,文献[ 13]全面比较了Fast R-CNN、Faster R-CNN和R-FCN三种算法对飞机目标检测的识别性能,其结果表明R-FCN算法的准确率和检测速度较优。文献[ 14]将深度学习引入飞机检测中,构建了基于深度信念网络及基于卷积神经网络的两种飞机检测结构模型,实现了飞机目标高精度检测。文献[ 15]基于Faster R-CNN方法对遥感影像中飞机、油罐等目标进行验证实验,取得较好效果。文献[ 16]提出了适应空中目标检测任务的特点和需求的Faster R-CNN改进策略,弥补了Faster R-CNN算法对弱小目标和被遮挡目标不敏感的缺陷并提升了检测精度。以上研究表明,基于候选框的算法是当前应用于遥感影像目标检测的主流方法,尤其是Faster R-CNN算法的应用最广泛,但以上研究均未对遥感影像小目标检测性能进行全面分析,而遥感影像相对于常规自然场景图片具有幅面大、分辨率低等特点,但需要在较小分辨率下进行检测才能实现在大范围内自动化高效作业,在此情况下,目标大小在影像中常表现为中小型特征,因此,需要更多地关注中小型目标的检测。Faster R-CNN算法对于小目标的检测性能比SSD算法好,但检测时间更长,无法满足大范围自动化检测的需求。Feature Pyramid Networks(FPN)方法[17]通过将网络中最顶层的特征图像逐层地反馈并与前层的特征图进行融合,提升低层次特征的语义强度,并且在不同尺度上进行目标检测,可提升小目标的检测优势,因此,为平衡速度和精度,可将FPN特征提取方法应用至SSD算法中,但存在问题是仅在SSD算法特征提取网络部分引入FPN特征提取方法后,检测速度将会进一步降低。
为解决以上问题,本文针对现有SSD算法进行改进,参考密集连接的DenseNet(densely connected convolutional networks)网络[18]设计特征提取网络,并将其替代原有的16层VGGNet(VGG-16)[19]网络,并引入FPN特征提取方法,进行多尺度特征融合,以替代原有的多尺度预测方法。
2 改进的SSD算法
2.1 SSD算法
SSD是Liu等[9]提出的一种目标检测算法,是目前较流行的检测框架之一,相比于Faster R-CNN算法,SSD算法在速度上具有明显优势,而相比于YOLO算法,SSD算法在精度上又有明显的优势。SSD算法框架如
SSD算法参照YOLO算法的一体化检测方式,但与YOLO算法最后采用全连接层预测不同的是,SSD算法采用卷积对不同尺度特征图进行检测,同时借鉴了Faster R-CNN中anchor的思想,在特征图中的每个单元设置长宽比不同的先验框,预测时目标框以这些先验框为基准计算偏差,可在一定程度上降低训练的难度。
2.2 改进的SSD算法
SSD算法虽采用多尺度预测,但不同尺度特征相互独立,其低层次特征位置信息较好,但分类精度差。为降低低层次特征带来的误差,SSD算法从VGG-16网络中偏后的conv4_3卷积层开始构建多尺度特征图,其检测小目标性能较差。此外,SSD算法的输入图像尺寸较小,文献[
9]选取的输入图像尺寸为300 pixel×300 pixel,小尺寸下能够提升目标检测速度,但对于遥感图像自动化检测任务,将图像固定至小尺寸进行检测,易造成目标特征信息的丢失。为实现良好检测性能,本研究固定输入图像为800 pixel×800 pixel,导致计算量大幅增加,故采用原来网络来降低检测速度。为解决这些问题,对现有SSD算法做以下改进:1)参考密集连接的DenseNet网络结构,重新设计SSD算法中的基础网络;2)利用FPN方法对密集连接网络的dense模块构建特征金字塔,再进行多尺度目标检测。改进后的算法框架如
改进SSD算法基础网络设计由4个dense模块构成,每个dense模块之间利用过渡层连接,过渡层通过降维来减少计算量。dense模块内部由一系列的卷积层组成(如dense模块1由6个卷积层构成),每个卷积层的输出设定为32通道特征图,其输入为前面所有输出在通道维度上进行连接后的特征图,输出表示为[18]
式中:
最后,利用第2个尺度特征图上采样后与dense模块2经256个1×1卷积核降维后的特征图连接,构建特征金字塔的第3个特征图。相比于SSD算法,改进后的SSD算法融入了多个高层次特征的语义信息,可弥补SSD算法低层次特征语义信息差的问题,而大部分小目标的检测是利用低层次特征图实现,因此可提升小目标检测精度。另一方面,由于采用了密集连接的网络结构,大幅度减少网络中的参数量,可在一定程度上弥补输入图像尺寸增大带来的计算效率的降低,而相比于以Faster R-CNN为代表的基于候选框的检测方式,该方法无须进行区域建议网络的训练过程,因此更易于训练。
图 3. 融合前后的特征图对比。(a) 输入图像;(b) dense模块2输出;(c) dense模块3输出;(d) dense模块2融合特征后的输出;(e) dense模块3融合特征后的输出;(f) dense模块4输出
Fig. 3. Comparison of feature maps before and after integration. (a) Input image; (b) output of dense block2; (c) output of dense block3; (d) output of dense block2 with feature integration; (e) output of dense block3 with feature integration; (f) output of dense block4
2.3 损失函数及训练方法
将SSD算法的损失函数表示为位置损失与分类损失的加权和[9]:
式中:
式中:
式中:
采用数据增强方式对图像进行增强,丰富样本数量,迁移学习带来的特征也优于直接从随机初始化学习的特征[24],因此,基于ImageNet数据集上预训练的模型进行迁移学习,利用随机梯度下降算法(SGD)对损失函数(3)式进行优化,寻求最优解,在训练过程中学习率逐渐递减,学习动量为0.9。
3 精度评估模型
以平均准确率均值(MAP)[25]作为衡量模型训练结果精度的指标。每一个类别都可以根据召回率和准确率绘制一条曲线,那么准确率均值(AP)就是该曲线下的面积,而MAP是多个类别AP的平均值, AP计算可表示为
利用预测框与真实框的交并比(
表 1. 主要衡量指标
Table 1. Main metrics
|
4 实验分析
4.1 实验平台与数据
实验硬件采用联想P920工作站,配置32 G内存及NVIDIA TITAN Xp显卡,操作系统为Ubuntu 16.04。在Python中基于Tensorflow深度学习框架构建算法模型。
为验证小目标的检测性能,参考COCO数据集的大、中、小目标所占比例,采集制作飞机和运动场2类典型目标数据集,样本采集工作利用基于ArcGIS API for JavaScript组件在B/S架构下设计开发的遥感影像目标检测训练样本数据在线采集系统开展,系统界面如
图 4. 训练样本在线采集系统界面。(a) 叠加主要机场点位数据;(b) 飞机样本采集
Fig. 4. Interface of training sample online acquisition system. (a) Superimposed main airport point data; (b) aircraft sample collection
采集不同场景下的样本集图片共计2574张,其中验证集412张,测试集326张,统计样本集目标分布情况如
表 2. 样本集统计
Table 2. Sample set statistics
|
4.2 改进SSD算法训练分析
数据增强采用随机裁切、随机旋转及缩放操作,初始学习率设定为0.01,采用余弦函数衰减法[26]对学习率进行衰减,学习率衰减曲线如
采用随机梯度下降法对总损失函数进行优化训练,设定批处理尺寸为4,训练曲线及
图 7. 迁移训练和随机初始化两种方式总损失和精度对比。(a) 总损失随迭代次数变化;(b) MAPRIoU=0.50随迭代次数变化
Fig. 7. Comparison of total loss and precision between transfer training and random initialization. (a) Total loss varies with number of iterations; (b) MAPRIoU=0.50 varies with number of iterations
4.3 改进SSD算法精度分析
为验证改进SSD算法的性能,同时利用训练集训练了基于候选框方式的Faster R-CNN和R-FCN两种算法作为对比,并在验证集上进行精度验证,Faster R-CNN分别以ResNet50和ResNet101两种网络作为基础网络,R-FCN以ResNet101作为基础网络,利用精度更高的Inceptionv2[27]网络替换SSD算法的VGG-16,也参与对比实验。以上算法图像的输入尺寸均为800 pixel×800 pixel,除改进SSD算法外,其余算法均利用COCO数据集上的预训练模型进行迁移学习,改进SSD算法利用4.2节所提的迁移方式进行部分参数迁移,以上算法均训练迭代1.5×105次,并分别在验证集和测试集上进行精度分析统计。单张影像预测耗时及验证集精度指标的对比结果如
表 3. 计算耗时及验证集上精度对比
Table 3. Comparison of calculation time and precision on validation set
|
图 8. 改进SSD算法与其他算法随迭代次数精度变化对比。(a) MAP; (b) MAPlarge; (c) MAPmedium; (d) MAPsmall; (e) MAPRIoU=0.50; (f) MAPRIoU=0.75
Fig. 8. Comparison of precisions of improved SSD algorithm and other algorithms varying with number of iterations. (a) MAP; (b) MAPlarge; (c) MAPmedium; (d) MAPsmall; (e) MAPRIoU=0.50; (f) MAPRIoU=0.75
表 4. 测试集上精度对比
Table 4. Comparison of precision on test set
|
由
综上可知,改进SSD算法精度较SSD、Faster R-CNN和R-FCN算法有较大提升,尤其是在检测小目标上优势更明显;改进SSD算法对单张图像预测耗时较Faster R-CNN算法和R-FCN算法有所降低,尤其是相对Faster R-CNN算法降低较大,但由于特征金字塔的构建,相对于SSD算法有所增加;改进的SSD算法能够解决SSD算法对小目标数据集的适应效果差的问题。
4.4 检测效果对比
通过4.3节的分析可知,以ResNet101为基础网络的Faster R-CNN算法和R-FCN算法的检测精度较高,本节以这两种算法作为对比,分析改进后的SSD算法检测小目标的效果,如
图 9. 改进SSD与其他方法检测效果对比。(a) Faster R-CNN+ResNet101方法;(b) R-FCN+ResNet101方法;(c) 改进 SSD算法
Fig. 9. Comparison of improved SSD algorithm and other algorithms in detection effect. (a) Faster R-CNN+ResNet101; (b) R-FCN+ResNet101; (c) improved SSD algorithm
5 结论
对现有SSD算法进行改进,大幅度提升了算法的计算精度,解决了原有SSD算法小目标检测精度低而现有基于候选框的方法检测速度慢的问题。通过对以飞机和运动场中小型样本为主的检测实验进行分析,可得到以下结论。1)改进后的SSD算法的网络结构设计更合理,且训练过程更容易收敛,在无迁移学习支撑下也能够获得较理想的结果。2)改进后的SSD算法相对于原SSD算法、Faster R-CNN算法以及R-FCN算法总体精度有大幅度提升,尤其是在检测小目标上,效果更加明显,测试集上相比于精度次高的R-FCN算法可提升13.92%,说明这种高层次特征与低层次特征融合具有较好的语义和位置信息。3)从目标检测时间开销来看,改进后的SSD算法预测单张影像相比于Faster R-CNN算法降低45.7 ms,相比于速度较快的R-FCN算法降低7.5 ms,但相比于原SSD算法有所增加,主要原因是特征金字塔构建耗时过多。4)从预测效果来看,改进后的SSD算法预测位置边框要优于原SSD算法、Faster R-CNN算法以及R-FCN算法,其置信度相比Faster R-CNN算法以及R-FCN算法更低,但不影响最终的预测结果。
改进的SSD算法对于将深度学习方法高效地用于大区域遥感影像目标检索具有一定参考价值,尤其是在遥感影像小目标的检测上具有较大优势。尽管改进的SSD算法较基于候选框的目标检测方法时间开销少,但相比于原SSD算法耗时依然过多,下一步将对网络结构进一步优化,提升其计算速度。
[1] 王广学, 黄晓涛, 周智敏. 基于邻域统计分布变化分析的UWB SAR隐蔽目标变化检测[J]. 电子与信息学报, 2011, 33(1): 49-54.
王广学, 黄晓涛, 周智敏. 基于邻域统计分布变化分析的UWB SAR隐蔽目标变化检测[J]. 电子与信息学报, 2011, 33(1): 49-54.
[2] 吴畏. 基于知识的目标识别与跟踪技术研究[D]. 哈尔滨: 哈尔滨工业大学, 2007: 10- 28.
吴畏. 基于知识的目标识别与跟踪技术研究[D]. 哈尔滨: 哈尔滨工业大学, 2007: 10- 28.
WuW. Research on knowledge-based target recognition and tracking techniques[D]. Harbin: Harbin Institute of Technology, 2007: 10- 28.
WuW. Research on knowledge-based target recognition and tracking techniques[D]. Harbin: Harbin Institute of Technology, 2007: 10- 28.
[3] 曹家梓, 宋爱国. 基于马尔科夫随机场的纹理图像分割方法研究[J]. 仪器仪表学报, 2015, 36(4): 776-786.
曹家梓, 宋爱国. 基于马尔科夫随机场的纹理图像分割方法研究[J]. 仪器仪表学报, 2015, 36(4): 776-786.
[5] 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.
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.
[7] DaiJ, LiY, HeK, et al. R-FCN: object detection via region-based fully convolutional networks[C]∥NIPS'16 Proceedings of the 30th International Conference on Neural Information Processing Systems, December 5-10, 2016, Barcelona, Spain. USA: Curran Associates Inc., 2016: 379- 387.
DaiJ, LiY, HeK, et al. R-FCN: object detection via region-based fully convolutional networks[C]∥NIPS'16 Proceedings of the 30th International Conference on Neural Information Processing Systems, December 5-10, 2016, Barcelona, Spain. USA: Curran Associates Inc., 2016: 379- 387.
[8] RedmonJ, DivvalaS, GirshickR, et al. You only look once: unified, real-time object detection[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 779- 788.
RedmonJ, DivvalaS, GirshickR, et al. You only look once: unified, real-time object detection[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 779- 788.
[9] LiuW, AnguelovD, ErhanD, et al. SSD: single shot multibox detector[M] ∥Leibe B, Matas J, Sebe N, et al. Computer Vision-ECCV 2016. Cham: Springer, 2016, 9905: 21- 37.
LiuW, AnguelovD, ErhanD, et al. SSD: single shot multibox detector[M] ∥Leibe B, Matas J, Sebe N, et al. Computer Vision-ECCV 2016. Cham: Springer, 2016, 9905: 21- 37.
[11] HuangJ, RathodV, SunC, et al. Speed/accuracy trade-offs for modern convolutional object detectors[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 3296- 3297.
HuangJ, RathodV, SunC, et al. Speed/accuracy trade-offs for modern convolutional object detectors[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 3296- 3297.
[12] Lin TY, MaireM, BelongieS, et al. Microsoft COCO: common objects in context[M] ∥Fleet D, Pajdla T, Schiele B, et al. Computer Vision-ECCV 2014. Cham: Springer, 2014, 8693: 740- 755.
Lin TY, MaireM, BelongieS, et al. Microsoft COCO: common objects in context[M] ∥Fleet D, Pajdla T, Schiele B, et al. Computer Vision-ECCV 2014. Cham: Springer, 2014, 8693: 740- 755.
[13] 徐逸之, 姚晓婧, 李祥, 等. 基于全卷积网络的高分辨遥感影像目标检测[J]. 测绘通报, 2018( 1): 77- 82.
徐逸之, 姚晓婧, 李祥, 等. 基于全卷积网络的高分辨遥感影像目标检测[J]. 测绘通报, 2018( 1): 77- 82.
Xu YZ, Yao XJ, LiX, et al. Object detection in high resolution remote sensing images based on fully convolution networks[J]. Bulletin of Surveying and Mapping, 2018( 1): 77- 82.
Xu YZ, Yao XJ, LiX, et al. Object detection in high resolution remote sensing images based on fully convolution networks[J]. Bulletin of Surveying and Mapping, 2018( 1): 77- 82.
[14] 张志远. 基于深度学习的光学遥感图像飞机检测[D]. 厦门: 厦门大学, 2016: 20- 30.
张志远. 基于深度学习的光学遥感图像飞机检测[D]. 厦门: 厦门大学, 2016: 20- 30.
Zhang ZY. Plane detection in optical remote sensing images based on deep learning[D]. Xiamen: Xiamen University, 2016: 20- 30.
Zhang ZY. Plane detection in optical remote sensing images based on deep learning[D]. Xiamen: Xiamen University, 2016: 20- 30.
[15] 王金传, 谭喜成, 王召海, 等. 基于Faster R-CNN深度网络的遥感影像目标识别方法研究[J]. 地球信息科学学报, 2018, 20(10): 1500-1508.
王金传, 谭喜成, 王召海, 等. 基于Faster R-CNN深度网络的遥感影像目标识别方法研究[J]. 地球信息科学学报, 2018, 20(10): 1500-1508.
[16] 冯小雨, 梅卫, 胡大帅. 基于改进Faster R-CNN的空中目标检测[J]. 光学学报, 2018, 38(6): 0615004.
冯小雨, 梅卫, 胡大帅. 基于改进Faster R-CNN的空中目标检测[J]. 光学学报, 2018, 38(6): 0615004.
[17] Lin TY, DollárP, 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, USA. New York: IEEE, 2017: 936- 944.
Lin TY, DollárP, 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, USA. New York: IEEE, 2017: 936- 944.
[18] HuangG, LiuZ, Maaten L V D, et al. Densely connected convolutional networks[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 2261- 2269.
HuangG, LiuZ, Maaten L V D, et al. Densely connected convolutional networks[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 2261- 2269.
[19] SimonyanK, Zisserman A. Very deep convolutional networks for large-scale image recognition[EB/OL]. ( 2015-04-10)[2018-12-22]. https: ∥arxiv.org/abs/1409. 1556.
SimonyanK, Zisserman A. Very deep convolutional networks for large-scale image recognition[EB/OL]. ( 2015-04-10)[2018-12-22]. https: ∥arxiv.org/abs/1409. 1556.
[20] IoffeS, SzegedyC. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]∥ICML'15 Proceedings of the 32nd International Conference on International Conference on Machine Learning, July 6-11, 2015, Lille, France. Massachusetts: JMLR. org, 2015: 448- 456.
IoffeS, SzegedyC. Batch normalization: accelerating deep network training by reducing internal covariate shift[C]∥ICML'15 Proceedings of the 32nd International Conference on International Conference on Machine Learning, July 6-11, 2015, Lille, France. Massachusetts: JMLR. org, 2015: 448- 456.
[21] 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.
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.
[24] YosinskiJ, CluneJ, BengioY, et al. How transferable are features in deep neural networks?[EB/OL]. ( 2014-11-06)[2018-12-22]. https:∥arxiv.org/abs/1411. 1792.
YosinskiJ, CluneJ, BengioY, et al. How transferable are features in deep neural networks?[EB/OL]. ( 2014-11-06)[2018-12-22]. https:∥arxiv.org/abs/1411. 1792.
[26] LoshchilovI, Hutter F. SGDR: stochastic gradient descent with warm restarts[EB/OL]. ( 2017-03-03)[2018-12-25]. https:∥arxiv.org/abs/1608. 03983.
LoshchilovI, Hutter F. SGDR: stochastic gradient descent with warm restarts[EB/OL]. ( 2017-03-03)[2018-12-25]. https:∥arxiv.org/abs/1608. 03983.
[27] SzegedyC, VanhouckeV, IoffeS, et al. Rethinking the inception architecture for computer vision[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 2818- 2826.
SzegedyC, VanhouckeV, IoffeS, et al. Rethinking the inception architecture for computer vision[C]∥2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), June 27-30, 2016, Las Vegas, NV, USA. New York: IEEE, 2016: 2818- 2826.
Article Outline
王俊强, 李建胜, 周学文, 张旭. 改进的SSD算法及其对遥感影像小目标检测性能的分析[J]. 光学学报, 2019, 39(6): 0628005. Junqiang Wang, Jiansheng Li, Xuewen Zhou, Xu Zhang. Improved SSD Algorithm and Its Performance Analysis of Small Target Detection in Remote Sensing Images[J]. Acta Optica Sinica, 2019, 39(6): 0628005.