基于多尺度特征稠密连接的遥感图像目标检测方法

2019-08-02 09:43:06杨海涛刘翔宇
中国电子科学研究院学报 2019年5期
关键词:尺度卷积特征

张 裕,杨海涛,刘翔宇

(航天工程大学,北京 101407)

0 引 言

遥感,指通过传感器不直接接触物体表面远距离实现探测与分析的综合性信息科学技术,是军事信息和情报获取的重要数据来源。自上世纪60年代苏联发射第一颗人造地球卫星以来,遥感技术取得了突飞猛进的发展,目前在轨卫星数量已达上千颗,能够实现全天时的对地观测,随着遥感图像数据资源的不断丰富,遥感图像处理的效率已经成为制约遥感图像应用的重要瓶颈。

遥感图像目标检测是指检测遥感图像中是否感兴趣的目标类型,并确定目标在图像中的位置。“目标”通常特指人造目标,例如飞机、车辆、船舶等有独立于背景环境且有明确边界的一部分地物。目标检测是遥感图像处理中重要的基础性工作,是遥感图像从数据转化为信息和情报的核心,在军事制导、目标跟踪、战场环境监测等诸多应用中发挥着重要作用。

深度学习技术的蓬勃发展为遥感图像目标检测提供了一个非常有效的工具。但是由于遥感图像的特殊性,目前主流的基于深度学习的通用目标检测方法直接用于遥感图像目标检测中并不能发挥最优效能。本文主要探索将深度学习理论应用于遥感图像目标检测中,并针对遥感图像的小目标性和目标尺度多样化的特点,参考DenseNet的稠密连接思想,在YOLOv3的基础上对算法模型进行改进,提出了一种基于多尺度特征稠密连接的遥感图像目标检测方法。

1 相关工作

自二十世纪八十年代以来,国内外学者对遥感图像目标检测相关研究不断拓展,相继提出大量的方法[1]。根据表达和学习特征的方式,可将目标检测方法大致分为传统目标检测方法、基于机器学习的目标检测方法和基于深度学习的目标检测方法。

传统的目标检测方法主要使用人工提取图像特征进行目标检测,主要包括基于模板匹配的检测方法[2]、基于先验知识的检测方法[3]、基于对象的图像分析(OBIA)检测方法[4],基于局部特征统计的检测方法[5]。传统的目标检测方法目标特征设计依赖于专家知识,针对性比较强、鲁棒性较差,难以适用于复杂场景的检测任务。

基于机器学习的检测方法将检测过程分为候选区域提取、特征提取、分类器设计等三个步骤。得益于机器学习强大的特征提取和分类技术的优势,基于机器学习分类方法常将目标检测问题转化为特征提取和分类问题。相比于传统的目标检测方法,基于机器学习的检测方法建立了浅层的学习网络和通用的特征提取方法,算法的灵活性和鲁棒性更强,在某些特定物体检测任务中取得了令人瞩目的成功。但随着遥感技术的进步,遥感图像信息呈现出海量增长的趋势,目标样本的多样性和场景的复杂性急剧增加,浅层的学习网络很难建立复杂的函数表示,这些特征的描述能力开始变得有限,基于机器学习的目标检测方法逐渐不能适应多复杂样本的遥感图像目标检测任务。

2006年,Hinton等人在特征学习和深度学习方面取得了突破性进展。深度学习可通过学习深层非线性网络结构,实现复杂函数逼近[6]。一方面,与传统目标检测方法中人工设计特征相比,深度学习能通过卷积神经网络(CNN)从原始数据中自动分层提取特征。因此,基于人工设计的特征设计的负担已经转移到深度网络构建中。另一方面,与基于机器学习的目标检测方法中浅层的学习网络相比,深度学习中深层架构的卷积神经网络可通过组合低层次的特征形成更加抽象的语义特征,获得更强大的特征表示[7]。随着深度学习的快速发展,相继出现一大批基于深度学习的目标检测算法:R-CNN系列、SSD、YOLO系列。这些深度学习的目标检测算法已经表现出针对传统多类物体检测基准的最优性能。

2 遥感图像目标检测方法设计

遥感作为空间信息技术的主要数据来源,是构成空间信息技术的基础。按采集波段划分,可将遥感分为光学遥感(通常特指可见光)、红外遥感和微波遥感等类别。光学遥感是遥感技术发展过程中的一个核心内容,由于其成像波段在可见光范围内,可获得与人眼对真实场景感受基本一致的图像,其应用领域和规模也最为广泛。目前在轨的遥感卫星中,绝大多数都载有可见光相机。随着遥感技术的发展,光学遥感图像的分辨率不断提高,图像中地物目标的形状、纹理和上下文信息更加清晰、丰富,使在遥感图像中实现目标检测任务成为可能。本文所研究的遥感图像特指高分辨率可见光遥感图像。

2.1 遥感图像特性分析

目前常见的基于深度学习的目标检测框架基本都是适用于以自然物体为主体的基准数据集,这些基准数据集通常呈现具有“友好”的检测目标,比如检测的目标通常在图像中占据较大的比例尺寸,相比之下,遥感图像数据的固有特点和新的分析应用需求给研究带来了新的问题和挑战,主要体现在以下几点:

(1)视角特殊性。基准数据集中图像采用地面水平视角成像,而遥感图像是高空俯视成像且成像角度不固定,成像角度的不同导致了目标特征的差异性,这决定了现有在基准数据集上训练的基于深度学习的通用物体检测框架无法直接用于遥感图像目标检测,此外,卫星的移动以及不同的成像条件,还会导致目标方向的不确定性。

(2)小目标性更加明显。基准数据集中的目标通常占据了图像的较大的比例,而遥感图像中的目标通常只占据了很小的部分,它们之间存在显着差异。实际上,遥感图像中的大多数目标尺寸小于150个像素点,小目标性直接导致了信息量不足的问题,增加了目标检测的难度。

(3)目标尺度更加多样化。在同一分辨率的遥感图像中,不同类别的目标尺度相差很大,即使是同类目标有时也会有较大的尺度差异。不同分辨率的遥感图像中,目标尺度的差异性则更加明显。

2.2 YOLO算法介绍

基于深度学习的目标检测算法大体分为两类:基于候选区域的方法和基于回归的方法。前者主要包括R-CNN[8]、SPPNET[9]、Fast R-CNN[10]、Faster R-CNN[11]系列算法,这些算法将目标检测过程分为几个相关阶段,包括候选区域提取,卷积神经网络特征提取,分类和边界框回归,这些阶段通常是单独训练的,虽然检测精度相比之前机器学习的检测方法有了大幅提升,但在处理速度上还是达不到实时检测的要求,应用场景有一定的局限性。

基于回归的方法主要包括SSD[12]和YOLO系列算法[13-15],这些方法将目标检测任务看作回归问题,直接在输入图像的不同位置上回归出目标包围框和目标类别,极大地提高了检测速度。

YOLOv1将输入图像分成S×S个网格单元,每个网格单元负责预测中心点落在该网格单元的目标。每个网格单元预测B个包围框及其相应的置信度。置信度定义为存在目标的概率与预测包围框和真实包围框的交并比之积,于此同时,每个网格单元预测C(目标的种类数)个条件概率。检测时,将单个包围框的置信度与条件概率相乘得到每个包围框的特定类别的得分分数,如式(1)所示:

(1)

最后通过非极大值抑制(NMS)算法输出检测结果。其损失函数综合考虑了包围框中心点误差、包围框长宽误差、置信度误差和对象分类误差,定义如式(2):

(2)

YOLO以速度见长,处理速度可以达到45fps,这得益于其识别和定位合二为一的网络设计,这种统一的设计也使得训练和预测可以端到端的进行,非常简便。其不足之处是对小目标的检测效果不佳,对包围边框的预测准确度不是很高,总体预测精度低于Faster-RCNN。主要是因为网格设置比较稀疏,而且每个网格只预测两个边框,另外池化层会丢失一些细节信息,对定位存在影响。

YOLOv2相对v1版本,在继续保持处理速度的基础上,从预测更准确,速度更快,识别对象更多这三个方面进行了改进。主要包括增加批归一化处理、引入先验框、用聚类方法提取先验框尺度及多尺度图像训练等方法。针对v1版本中对小目标检测效果不佳的问题,YOLOv2中主要采用passthrough层将低层网络中提取到的位置信息通过重新采样的方式与高层网络提取的语义特征进行融合,提高了最终输入检测模型的图像的分辨率,同时将网格数量由7×7提高到了13×13,最终使得其检测的平均精度均值(mAP)相比于v1版本提高了4个百分点。但passthrough层只是将低层神经网络提取到的含有大量位置信息的图像特征叠加到了高层神经网络所提取的包含丰富高级语义信息的图像特征中,并未针对不同尺度的目标设计多尺度检测的检测模式,使得模型对不同尺度的检测目标没有足够的鲁棒性。

YOLOv3在v2版本的基础上,借鉴了残差网络的结构,形成更深的网络层次;目标分类用Logistic取代了softmax;引入多尺度检测,分别在13*13、26*26、52*52三个尺度的特征图上进行目标检测,相邻两个尺度之间通过卷积核的方式实现局部特征的交互,最终在保持速度优势的前提下,进一步提升了检测的平均精度均值及小物体检测效果。 截至目前,YOLOv3是综合考虑检测精度和检测速度的最佳选择。

2.3 基于多尺度特征稠密连接的遥感图像目标检测算法

针对卫星遥感图像数据的固有特点和新的分析应用需求,本文在YOLOv3算法的基础上设计了针对卫星遥感图像的目标检测算法YOLO-RS,该算法在不同尺度的特征图上检测不同大小的目标,利用多尺度特征融合技术,在各尺度检测层上融合高层次特征图的高级语义信息进行目标类别的分类,融合低层次特征图的位置信息辅助定位。算法结构图如图1所示。

图1 算法结构图

图1中Filter size为卷积核的参数,依次为卷积通道数,单个卷积核大小,卷积步长。Output为输出特征图参数,依次为长、宽和通道数。Convolutional包含一个标准的卷积层、批归一化层和非线性激活层。Residual是将框中的1×1的卷积核和3×3的核卷积堆叠操作后建立跨层连接,以学习其残差输入。Convs模块中包含一系列1×1的卷积操作和3×3的卷积操作,主要是为了减少特征图上采样后级联的混叠效应,同时在不改变该检测层特征图大小的情况下对特征进行进一步抽象。

不同于YOLOv3,该算法主要有以下几点改进:

首先,针对卫星遥感图像中的小目标性导致的检测层特征图上目标信息量不足的问题,将输入图像的大小由YOLOv3的416×416提高到了512×512,更大的图像会保留更多的目标信息,将更有利于小目标的检测。

其次,针对卫星遥感图像中目标尺度更加多样化的问题,将多尺度检测从YOLOv3的在13×13、26×26、52×52三个尺度特征图上进行目标检测进一步扩展为在8×8、16×16、32×32、64×64四个尺度特征图上进行目标检测。其中8×8的特征图有64倍的下采样率,具有较大的感受野,适合检测图像中尺寸比较大的目标,比如操场、桥梁等;16×16的特征图有32倍的下采样率,具有中等尺度的感受野,适合检测图像中的中等尺度目标,比如篮球场、大型飞机等;32×32的特征图有16倍的下采样率,具有较小尺度的感受野,适合图像中较小目标的检测,如小型飞机、油罐等;64×64的特征图只有8倍的下采样率,感受野最小,适合检测图像中的小尺度目标,如小型舰船、车辆等。

再次,不同于YOLOv3只是在相邻尺度特征中进行了信息交互,为了将包含位置信息相对丰富的低层卷积特征与包含高级语义信息相对丰富的高层卷积特征进行更好的融合,生成位置细节信息详细且语义信息丰富的强鲁棒性特征,参考DenseNet设计了多尺度特征稠密连接模式,建立了不同特征检测层之间的连接关系,即8×8的特征图经过三次不同的上采样后分别与16×16、32×32、64×64的特征图级联,16×16的特征图经过两次不同的上采样后分别与32×32、64×64的特征图级联,32×32的特征图经过一次上采样后与64×64的特征图级联。这样做的目的是提高各尺度特征检测层之间的信息传递程度,通过多层次的特征直接融合,更大程度地利用各尺度特征图的特点。为了减少上采样后级联的混叠效应,通过在每个级联后的特征图上进行系列的卷积操作来生成该尺度特征图最终的特征映射用于目标检测。

最后,针对卫星遥感图像成像视角特殊性的问题,用卫星遥感图像数据集重新训练了算法网络模型。本文将重新设计的算法模型命名为YOLO-RS。

3 实 验

3.1 数据集与实验设置

为了验证本文所提方法的有效性,设置了相关实验进行验证。本文实验硬件条件为:

处理器:Intel (R) E5-262V4*2

显卡:NVIDA GeForce GTX 1080 8GB

内存:32GB

开发环境为:Ubuntu16.04+VS2013+CUDA 8.0+CUDNN4.1+Caffe

本文采用RSOD-Dataset数据集[17]和NWPU VHR-10数据集[18]进行实验,RSOD-Dataset包含2326张高分辨率光学遥感图像,具有不同尺度的待检测目标4类。NWPU VHR-10数据集包含800张高分辨率光学遥感图像,具有不同尺度的待检测目标10类。各数据集样本分布情况见表1。

表1 各数据集样本分布情况

本文实验分别在两个数据集中随机抽取70%的样本作为该数据集的训练集,剩余的30%作为该数据集的测试集,训练集和测试集严格独立。为了增加模型的泛化能力,对训练集进行了数据增强处理,主要包括将图像镜像处理、旋转图像角度和调整图像饱和度等。训练过程中,采用小批量梯度下降法(Mini-Batch Gradient Descent),批量数设为64,共训练3000个批次,采用指数衰减学习率(exponential decay),初始学习率设为0.01。

3.2 评价指标与基准方法

本文采用平均精度(Average-Precision,AP)和平均精度均值(mean Average-Precision,mAP)作为评价指标[19]。

假设检测结果只有两类:正样本(Positive)和负样本(Negative),可将检测结果分为以下4种,见表2。

表2 混淆矩阵表

将召回率(Recall)定义为正样本被检测出来的数量与实际正样本数量的比值,将精确率(Precision)定义为被检测为正样本的结果中实际为正样本的比例。如式(3)和式(4)所示:

Recall=TP/(TP+FN)

(3)

Precision=TP/(TP+FP)

(4)

将检测结果按概率从高到低排列,即越排前为正样本的可能性越大,每次计算当前的精确率和召回率,以召回率为x轴,精确率为y轴,可画出P-R曲线。将P-R曲线与x轴、y轴围成的面积,定义为平均精度(Average-Precision,AP)。在多类目标检测任务中,各类物体检测的平均精度通常是不一样的,为了综合衡量检测效果,采取将各类物体检测平均精度求均值的办法,将该值定义为平均精度均值(mean Average-Precision,mAP)。平均精度均值越高,算法检测效果越好。

为了直观地体现所设计算法的效果,设置了相应的对比实验,将所提出的算法模型与以下方法进行了对比。

Faster R-CNN[11]:一种基于候选区域的目标检测方法,R-CNN系列代表性算法,采用了特征金字塔方法,对图像进行了多尺度特征采样,在融合的单一特征图上进行了目标检测。实验结果中简写为FR。

SSD[12]:一种基于多尺度特征图的端到端的检测方法,该方法多尺度特征检测层之间没有进行信息交互,实验结果中简写为SSD。

YOLOv3[15]:YOLO系列算法的最新版本,分别在三个尺度的特征图上进行了目标检测,相邻两个尺度之间通过卷积核的方式实现局部特征的交互,实验结果中简写为v3。

YOLO-RS:本文提出的基于多尺度特征稠密连接的遥感图像目标检测模型,实验结果中实验结果中简写为RS。

3.3 实验结果及分析

经过3000次迭代后,本文所提算法在RSOD-Dataset数据集4类目标测试集中检测的P-R曲线如图2所示:4类目标典型检测效果见图3,与其他典型算法性能比较见表3。

图2 四类目标P-R曲线

图3 四类目标检测效果图

MethodSSDFRv3RSAircraft0.6880.7120.9130.932Playground0.9760.9440.9560.963Overpass0.7920.7890.8080.859Oiltank0.8090.8890.9620.971MeanAP0.8160.8340.9090.929

算法在NWPU VHR-10数据集上的表现见表4。

表4 NWPU VHR-10中各算法性能对比

由以上结果可看出,在RSOD-Dataset数据集的测试中,YOLO-RS获得了最高的平均精度均值,相比于其他3种检测算法,YOLO-RS在对具有较小尺度的Aircraft和Oiltank的检测中具有明显的优势。在NWPU VHR-10数据集的测试中,YOLO-RS获得了aircraft、ship、oiltank、harbor、bridge、vehicle等六类目标的最佳检测精度,平均精度均值mAP在四种检测算法中是最高的,达到了86.11%,比第二名的YOLOv3高出1.91个百分点。相比于主流的通用目标检测算法,本文提出的算法在卫星遥感图像目标检测问题上更具优势。

4 结 语

为了提高遥感图像目标检测效率,本文针对遥感图像数据的固有特点和新的分析应用需求,在YOLOv3的基础上给提出一种用于遥感图像目标检测的多尺度特征稠密连接的检测模型,提高了各检测特征层之间的信息传递程度,使得不同尺度不同层次的卷积特征能够更好的融合。在RSOD-Dataset和NWPU VHR-10数据集上的实验以及与现有技术方法的比较证明了本文所提出方法的有效性和优越性。目前大部分基于深度学习的算法模型大多存在参数数量大、存储和计算代价高的问题。在未来的研究中,我们将进一步研究如何将检测模型轻量化处理,使之能应用于硬件资源受限的移动端设备,进一步提升遥感图像的处理效率。

猜你喜欢
尺度卷积特征
基于3D-Winograd的快速卷积算法设计及FPGA实现
财产的五大尺度和五重应对
如何表达“特征”
从滤波器理解卷积
电子制作(2019年11期)2019-07-04 00:34:38
不忠诚的四个特征
当代陕西(2019年10期)2019-06-03 10:12:04
基于傅里叶域卷积表示的目标跟踪算法
抓住特征巧观察
宇宙的尺度
太空探索(2016年5期)2016-07-12 15:17:55
9
一种基于卷积神经网络的性别识别方法
电视技术(2014年19期)2014-03-11 15:38:20