基于卫星遥感的岛礁影像多类目标智能化提取

2021-09-03 07:41江志军张舒豪肖进胜
中国空间科学技术 2021年4期
关键词:卷积卫星图像

江志军,张舒豪,肖进胜,*

1. 钱学森空间技术实验室,北京 100094 2. 中国航天科技集团有限公司航天系统发展研究中心,北京 100094 3. 武汉大学电子信息学院,武汉 430072

1 引言

近年来,随着航天遥感技术飞速发展,遥感卫星进入“四高”“亚米级”时代。高分一号卫星(GF-1)02、03、04星是中国第一个民用高分辨星座。3颗卫星组网后,具备15天全球覆盖、2天重访的能力。高分七号卫星(GF-7)是中国首颗民用亚米级高分辨率立体测绘卫星[1],配置双线阵相机和2束激光测高仪载荷[2], 能够获取高空间分辨率立体测绘遥感数据和高精度激光测高数据。高分系列卫星能够获得大量高分辨率对地遥感观测数据,其中包含丰富的时空信息。大量的遥感数据中特别是一些岛礁影像,往往包含大量的飞机、轮船等重要的目标信息, 研究基于卫星遥感的岛礁影像多类目标智能化提取算法具有重要意义。

岛礁目标检测具有重要的研究及应用价值。基于卫星遥感影像的典型目标检测主要有3种方法和途径:基于光学遥感的典型目标检测、基于SAR图像的典型目标检测[3]、基于视频卫星的典型目标检测[4]。其中,光学卫星遥感影像会因为天气原因受到云雾的干扰,将严重影响目标检测的精度。对于有云雾干扰的光学遥感图像,可以首先用去雾算法[5]进行预处理,然后进行后续的检测。高分辨率光学岛礁遥感影像包含轮船、飞机、存储罐等重要目标信息,研究具有高度适应能力、实用化的光学卫星遥感影像多类目标提取方法,实现精准、快速、鲁棒地检测,是一项非常具有挑战性的工作,在国防安全领域具有重要的用途。

光学卫星影像目标检测主要包括预处理、图像特征提取、检测等阶段。一般可以分为传统目标检测[6]和基于深度学习的目标检测[7]。传统目标检测主要是提取图像的传统图像特征,如方向梯度直方图(HOG特征)等。然后通过机器学习中的分类方法如支持向量机(SVM)等进行分类。但是这些特征的表达能力较弱,用于复杂背景的目标检测效果并不理想。

基于深度学习的目标检测算法采用深度卷积神经网络进行特征提取。卷积神经网络不仅可以提取图像的浅层纹理细节特征,还能提取网络的高级语义特征。基于深度学习的目标检测算法可以分为1阶段算法(one-stage)和2阶段算法(two-stage)。OverFeat[8]是较早提出的1阶段算法,利用多尺度滑动窗口进行检测。YOLO算法[9]将目标检测看作是回归问题和分类问题的综合。随后,YOLOv2[10]、YOLOv3[11]、YOLOv4[12]相继问世, 实现了更快更精确的检测效果。文献[13]提出RetinaNet算法,利用Focal loss函数缓解one-stage算法中类别不平衡问题。最典型的two-stage算法是Faster R-CNN[14],与one-stage算法相比,two-stage算法具有更高的精度,但是速度较慢。主流的深度学习目标检测算法在自然场景中取得了巨大的成功,但是因为卫星遥感影像背景复杂、目标尺度不一、观测方向各异,这些算法并不适用于卫星遥感影像的目标检测。为了解决这些问题,许多新的算法被提出。例如文献[15] 提出了一种基于改进旋转区域生成网络的遥感图像目标检测算法,该算法可以生成带有不同角度的anchor。

本文参考RetinaNet[13]的网络结构,设计了一种适用于卫星遥感影像多类目标检测方法,利用ResNet50[16]获得图像的特征图,将不同特征图进行融合,得到含有不同尺度目标特征的特征图,用于后续的分类和回归。同时为了减弱复杂背景对目标检测准确率的干扰,本文设计了特征感知模块。改进的算法和典型1阶段算法RetinaNet进行对比试验,结果表明本文提出的算法能够获得更好的检测结果,能够更好地满足卫星遥感影像多类目标检测的需求。

2 基于深度学习的遥感图像检测

如图1所示,RetinaNet是典型的one-stage目标检测算法。输入图像通过ResNet得到一系列的特征图输出,然后利用特征金字塔[17](FPN)将这些特征进行特征融合,最后将融合后的特征图输入到分类和回归子网络。本文对现有的RetinaNet进行了两方面的改进。首先设计了一种新的特征融合网络MFPN,能同时利用高层语义特征和低层纹理细节特征。然后设计了特征感知模块,利用视觉注意力机制降低特征图上的无用信息对检测结果的影响。

图1 RetinaNet网络结构Fig.1 RetinaNet network structure

2.1 旋转检测框回归

为了实现旋转框检测,文中用5个参数(x,y,w,h,θ)表示任意方向的矩形检测框。θ表示旋转检测框与x轴的夹角,其范围为(-90°,0]。网络回归时需要额外预测角度偏移:

(1)

(2)

(3)

(4)

式中:x、y、w、h、θ分别为真实目标边界框的中心坐标、宽度、高度和角度;xa、ya、wa、ha、θa和x′、y′、w′、h′、θ′分别表示网络产生的anchor框、预测框;t和t′分别为真实目标边界框和预测框与anchor框之间各参数的偏移。

2.2 多尺度特征

随着卷积神经网络深度的增加,生成特征图的分辨率逐渐降低,语义特征逐渐增加,特征金字塔网络结构是融合多级信息的有效多尺度方法。由于舰船目标、飞机目标和存储罐目标的尺度差异巨大,融合底层细节信息和高层语义信息可以提升检测效果。RetinaNet使用特征金字塔网络(feature pyramid network,FPN)的思想进行特征融合,如图2所示,ResNet50网络的输出为Ci,i=1,2,…,5,经过特征融合的特征图为Pi,i=3,4,…,7。其中P5是C5经过1×1的卷积降维得到的。P6是P5经过步长为2、卷积核为3×3的卷积操作得到。P7是P6通过步长为2、卷积核为3×3的卷积操作得到。P4是P5经过双线性插值进行2倍缩放的结果和C4相加得到。P3与P4类似,是P4经过双线性插值进行2倍缩放的结果和C3相加得到。RetinaNet的特征融合网络充分利用了C3、C4和C5,同时包含高层的语义信息和低层的纹理细节信息。这在自然图像目标检测中取得了较好的结果,但由于卫星遥感影像中存在许多尺寸较小的目标,该特征融合网络没有利用C2的信息,所以对小目标的特征表达较差。

本文改进了RetinaNet的特征融合网络。因为图2中的P5和P4层含有高层语义信息,缺少细节纹理信息,主要用于检测大目标。遥感影像中小目标检测难度较大,因此本文改变了P5和P4的融合方法,充分利用了C2层的细节信息。改进融合方法如图3所示,P5是C5经过1×1的卷积进行降维的结果和C2经过8倍下采样的结果相加得到的。P4是C4经过1×1的卷积进行降维的结果和C2经过4倍下采样的结果相加得到的。其他层的融合方式保持不变。本文改进的特征融合网络充分利用了低层语义特征,更加适合于卫星遥感影像多类目标检测。

图2 RetinaNet的特征融合网络Fig.2 Feature fusion network of RetinaNet

图3 改进的特征融合网络Fig.3 Improved feature fusion network

2.3 特征感知模块

视觉注意力[18]的提出来源于人类的视觉系统,人眼看到画面时会专注于感兴趣区域。视觉注意力机制在不同的计算机视觉任务中取得了巨大成功。特征感知模块会专注于信息量最大的区域,忽略无用的背景信息。卫星遥感图像背景复杂,在提取的特征中往往会被复杂背景噪声干扰,因此设计了特征感知模块(feature perception module),该模块自适应地更关注于突出的区域,降低特征图中无用信息对后续检测的影响。特征感知模块帮助网络处理那些背景复杂、目标纹理不清晰和对比度较低的图像。如图4所示,本文提出的特征感知模块左端的输入是特征融合网络的输出特征图P3~P7,输出是与输入维度相同的特征图Fi,i=3,4,…,7。对于每一个特征图Pi,i=3,4,…,7,对其处理的过程如下:

图4 特征感知模块Fig.4 Feature perception module

Ai=σ[φi(Pi)]

(5)

Fi=Ai⊙Pi+Pi

(6)

式(5)中,Pi通过4层3×3的卷积得到φ(Pi)。然后通过Sigmoid函数将φ(Pi)中的值转化到(0,1)得到Ai,这样在训练的时候能够更快收敛。最后将Pi和Ai对应元素相乘,然后再与Pi相加。通过训练,对于特征图中有用的信息,通过与Ai相乘,其值几乎保持不变,对于特征图中的无用信息,其值会显著变小。通过相乘操作可以使得网络自适应地更关注于更能反映图像中目标特征信息的区域。另外为了网络的稳定性,相乘后的特征图与原始后的相乘图相加后的结果用于后续的检测,这里的相加操作则参考了残差网络[16]的思想。

2.4 损失函数

本文提出算法的损失函数分为两部分,边界框预测回归损失函数和分类损失函数。对于边框预测回归问题,通常也可以选择平方损失函数(L2损失),但L2范数的缺点是当存在离群点的时候,这些点会占loss的主要组成部分。因此本文采用smooth L1 loss损失函数[14]。focal loss[13]主要是为了解决one-stage目标检测中正负样本比例严重失衡的问题。该损失函数降低了大量简单负样本在训练中所占的权重。本文采用focal loss作为分类损失函数。网络总的损失函数定义为:

(7)

3 试验结果和分析

DOTA数据集[19]与其他航空遥感数据集相比具有数据量大、类别更为均衡的特点,本文选择DOTA数据集进行测试和训练。DOTA数据集包含2 806张遥感图像,共15个类别。考虑到岛礁常见的典型目标为飞机、存储罐和舰船,挑出DOTA数据集中这3类目标进行训练和测试。其中将含有飞机、存储罐和舰船的训练集图片截成600×600像素,共7639张。测试集图片数量为459张,图片大小约为4 000×4 000像素。使用Ubuntu16.04系统,选择的深度学习框架为Tensorflow,用具有6G显存的GTX 1660Ti进行训练和测试。为了减少运算量,使用ResNet50模型在ImageNet数据集中学习到的预训练参数。网络训练过程中损失函数衰减情况如图5所示。可以看出,当训练次数达到10万次时,损失函数已经收敛。本文的测试指标采用的是目标检测中常用的平均精度 (average presion, AP)和平均精度均值 (mean average precision,mAP)。

图5 训练过程中损失函数变化情况Fig.5 Loss function changes during training

3.1 消融试验

为了证明本文提出的改进的FPN(improved FPN)和特征感知模块(FPM)的有效性,利用RetinaNet作为基线网络进行消融试验。结果如表1所示。

从表1可以看出,利用改进的FPN特征提取网络可以将3类目标的mAP提高到64.6%。Improved FPN对船只的检测精度提高的最多,提高了1.6%。那是因为船只的尺度较小。Improved FPN充分利用了C2层的底层细节信息,提高了对小目标的特征表达能力。改进的FPN结合特征感知模块可以将mAP提高到66.5%。这证明了本文提出的Improved FPN和FRM的有效性。

表1 消融试验结果

3.2 对比试验

为了验证本文算法的有效性,进行了对比试验。选择了RetinaNet[13]和Faster R-CNN[14]算法。RetinaNet是典型的1阶段算法,也是本文算法的基线网络。Faster R-CNN是最典型的2阶段算法。不同算法的检测效果对比如表2所示。

表2 不同算法结果对比

从表2中可以看出,本文算法与1阶段算法RetinaNet相比,3类目标的AP分别高4.1%、2.5%和2.4%。与2阶段算法Faster R-CNN相比,3类目标的AP分别高6.0%、2.3%和22.7%。这说明本文算法在遥感影像典型目标检测中具有一定的优势。本文算法在DOTA数据集上的一些可视化结果如图6所示。

图6 在DOTA数据集上的一些检测结果Fig.6 Some detection results on the DOTA dataset

另外,为了证明本文算法的有效性,挑选高分二号卫星(GF-2)拍摄的高分辨率遥感影像进行试验。GF-2星下点空间分辨率0.8 m,其影像能够应用于香蕉林[20]等各种典型目标信息提取。选取GF-2拍摄的影像,应用本文改进算法得到的部分检测结果如图7所示,能够实现对飞机、存储罐等多类典型目标的智能化提取。

图7 在GF-2卫星影像上的一些检测结果Fig.7 Some detection results of GF-2 satellite images

4 结论

本文参考RetinaNet的结构,改进了Resnet-50输出特征图的融合方式,充分利用了C2中的细节纹理信息。因为遥感图像背景复杂,特征图中会存在许多噪声,这些噪声会严重影响后续分类和回归的精度。本文参考视觉注意力机制,设计了特征感知模块,减弱了特征图中的噪声对检测精度的影响。选择DOTA数据集上的含有船只、飞机、存储罐3类目标的图像,进行训练和测试。并在DOTA数据集和GF-2拍摄的卫星影像上进行试验。试验结果表明,改进的算法能够适用于卫星遥感岛礁影像多类目标智能化提取。但是当前的研究也存在一些不足,如没有探讨当目标紧密排列时对检测结果的影响,另外云雾干扰也会严重影响算法的检测效果。在今后的研究中,将尽可能考虑这些因素,并结合本文遥感图像目标检测方法,设计一个对云雾干扰具有鲁棒性,并且能够适用于紧密排列目标的算法。

猜你喜欢
卷积卫星图像
基于全卷积神经网络的猪背膘厚快速准确测定
基于图像处理与卷积神经网络的零件识别
摄像头连接器可提供360°视角图像
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
浅析p-V图像中的两个疑难问题
静止卫星派
Puma" suede shoes with a focus on the Product variables
名人语录的极简图像表达
What Would Happen If All Satellites Stopped Working? 假如卫星罢工一天