基于改进RetinaNet的SAR图像目标检测方法

2022-02-14 12:41岳冰莹盛青青
信号处理 2022年1期
关键词:池化舰船注意力

岳冰莹 陈 亮 师 皓 盛青青

(1.北京理工大学信息与电子学院雷达技术研究所,北京 100081;2.北京理工大学重庆创新中心,重庆 401120;3.嵌入式实时信息处理技术北京市重点实验室,北京 100081)

1 引言

近几十年来,石油泄漏、沿海海洋污染等与船舶有关的各种问题不断发生。为了保护海洋资源、提前应对可能发生的船舶事故,需要有效进行船舶管理。同时,在军事领域中舰船目标检测同样关乎国土安全。我国近年来多颗高分辨率遥感成像卫星陆续发射并投入使用。光学图像能直观反映地物的真实纹理、颜色等信息,所以光学传感器获取的影像细节信息丰富、视觉特征明显,但可见光成像容易受时间、云层遮挡、雨雾等影响。合成孔径雷达基于距离测量并主要观测目标场景的理化性质,具有全天时、全天候成像能力,所以利用合成孔径雷达(SAR)进行舰船探测在广域海洋监视中起着至关重要的作用。但是SAR 影像对场景的纹理边缘描述较不完整,视觉特征不明显,解译困难,遥感应用的水平严重滞后于空间遥感技术的发展,这阻碍了人们从中获取信息和进行相关应用。同时,由于海上环境复杂,且船只具有大纵横比、任意方向、密集分布的特点,高分辨率复杂场景中SAR 图像舰船检测是一个具有挑战性的问题。

传统的SAR 图像舰船目标检测方法多采用恒虚警率法[1]、尾迹检测法[2]等。一方面,SAR 图像在视觉上是灰度图像,且存在相干斑噪声;另一方面受海况、海岸岛礁等复杂背景噪声的影响,仅靠人工进行目标识别难度很高,效率较低。随着深度学习技术的不断发展,其在SAR 图像目标检测方面的应用具有良好的发展前景。2014 年以来,目标检测框架分为一阶目标检测模型和二阶目标检测模型两大类,前者以YOLO[3]和SSD[4]为主要框架,同时完成检测和回归任务,后者以经典方法RCNN[5],Fast RCNN[6],Faster R-CNN[7]为代表,将检测任务分为回归和分类任务。

在SAR图像船只目标检测领域,Chen等人[8]提出了一种轻量级的船舶探测器,称为Tiny YOLOLite,以自主设计的主干网结构和网络剪枝来实现,还采用了知识提取的方法弥补剪枝造成的网络性能下降。Yang 等人[9]提出基于RetinaNet 和旋转包围盒(RBox)的单级目标检测框架R-RetinaNet,通过尺度校正,使输出主干特征图与目标的尺度分布相一致,设计基于任务注意特征的特征融合网络(TAFPN)。Liang 等人[10]提出了一种基于由粗到细机制的自适应分层船只检测方法,构造了改进的图像域与频域相结合的视觉注意机制,采用保持恒虚警特性的非参数BKDE(block kernel density estimation)对目标进行精确检测。Gao等人[11]提出了一种轻量级的特征抽取器,嵌入注意块并采用了一种基于中心点的无锚探测器,同时对船舶中心和船舶尺寸进行回归。Wei 等人[12]设计了高分辨率FPN 网络,将高分辨率子网与低分辨率子网并行连接,用软化非极大值抑制(Soft NMS)方法提高网络管理系统的性能,从而提高密集型舰船的探测性能。Chen等人[13]在网络中使用轻量级的非局部注意模块,改进了锚机制并设计了一种特征引导对齐模块,将当前优化锚点的位置和形状信息编码到特征点中。

本文选择RetinaNet模型为基本结构,创新点主要如下:

(1)采用单级检测结构保证方法的运行速度;采用深度残差网络自主获取图像特征,避免重复特征的提取。

(2)为降低非目标对特征提取的干扰,利用基于圆形平滑标签(CSL)的旋转框检测方法实现精准定位,将角度预测转化为一个高精度分类任务,解决了边界不连续问题,也更有利于对密集排列目标的检测。

(3)在分类与检测网络中加入注意力机制以增强网络特征提取能力。

2 算法结构

本文选择单级网络RetinaNet[14]实现对SAR 图像中舰船目标的检测,改进后的网络结构如图1 所示。由图可知,RetinaNet 算法由ResNet 网络[15](a),FPN 网络(Feature Pyramid Networks)[16](b)和分类和位置回归网络(c)三部分构成。ResNet 网络主要用来初步提取图像特征,FPN 完成特征融合,实现特征的精细化提取,分类和位置回归子网络用于目标的分类和定位。

2.1 特征提取网络

传统的RetinaNet 的特征提取部分采用了深度残差网络(ResNet50),其参数如图2 所示。通常,神经网络越深,其获取信息更多,特征也越丰富,网络的性能越好。但是直接进行网络加深会出现梯度爆炸或梯度消失问题,导致网络性能下降。对于这类问题,可以通过归一化保证反向传播中采用随机梯度下降,实现收敛效果。但归一化操作只适用于几十层的网络,当网络深度加深,还是会出现模型退化问题。而ResNet 引入了跳跃链接线,通过一个恒等快捷键直接跳过一层或多层完成数据传递,如图3所示。当神经网络深度增加导致梯度消失时,对原有网络进行了恒等映射,保证了信息的完整性,提取了较多细节信息,避免了网络性能迅速下降。

2.2 特征金字塔网络

特征金字塔网络(FPN)以特征金字塔为基础结构,对每一层不同尺度的特征图都进行预测,提高了特征提取的精度和速度。传统的卷积网络自下而上进行特征提取,低层网络提取出的特征空间分辨率高,目标位置更准,网络越深,特征的语义信息越丰富,但空间信息丢失。FPN 通过自上而下的连接和横向连接实现不同层级间的特征融合,同时利用低层特征和高层特征,可以实现对小目标的精确检测,如图4 所示。在ResNet 中五次特征提取产生的特征图C1-C5,对C5 进行1×1 的卷积改变特征图的通道数,生成M5,然后做3×3 的卷积运算生成P5。对C4 进行1×1 卷积,将它与M5 与经过线性插值上采样的结果相加,得到M4,对M4做3×3卷积得到P4。重复此过程,产生P3、P2。

2.3 边界回归和分类

本文采用的分类与位置回归网络结构如图1(c)所示,其中C 表示目标的分类,T 表示角度的分类。由于基于回归的旋转检测器存在边界不连续的问题,本文使用圆形平滑标签(Circular Smooth Label,CSL)[17]解决此问题。CSL 将回归任务的角度预测转变为一个高精度分类任务,在旋转检测中设计一种基于高精度角度分类的周期性循环标签编码,如图5所示。从图中可以看到标签值在边界处是连续的,不受角的周期性和边缘的互换性影响。

CSL标签的表达式如下:

其中,g(x)是窗口函数,本文中采用高斯函数。r是窗口函数的半径,默认值为1,θ表示当前边界框的角度。

RetinaNet 算法借鉴了Faster-RCNN[7]中的Anchor 机制,滑动窗口在原图上的映射点为Anchor。使用七个高宽比的锚和三种不同的尺度,Anchor 面积依次为322,642,1282,2562,5122。边界框回归的计算公式为:

其中,t表示真实框与anchor框相对位置的坐标向量(tx,ty,tw,th,tθ),t'表示预测框与anchor框相对位置的坐标向量,x,y,w,h,θ分别表示矩形框的中心点坐标、宽、高和角度。x表示真值框的中心点横坐标,xa表示anchor框的中心点横坐标,x'表示预测框的中心点横坐标,其他四个变量同理。tθ采用弧度制表示。回归任务的损失函数L如下,该公式由回归损失、CSL 分类损失、类别损失三部分表示:

其中N表示所有预测框的数量。objn表示是前景/背景(objnj=1是前景,objn=0 是背景)。vnj表示真实的目标向量表示预测偏移向量。θn,分别表示角度的标签和预测。tn表示目标的标签。pn表示用Sigmoid 函数计算各类概率分布。Lreg表示位置回归损失,使用的是smooth L1损失,计算方式图公式(4)所示。LCSL,Lcls分别表示CSL 分类损失和类别损失,使用的是焦点损失函数focal loss 计算,如公式(5)所示。超参数λ1,λ2,λ3表示平衡各个损失的权重,默认值是{1,0.5,1}。

y为真实标签类别,pϵ[0,1]为y=1 的概率值。参数αϵ[0,1],控制正负样本的贡献权重,默认值为0.25。参数γ为聚焦参数,默认值为2。

2.4 RetinaNet模型的改进

SAR图像从视觉上是灰度图像,分辨率较低,存在相干斑噪声,本文通过注意力机制重点关注目标区域,实现从SAR 图像中对舰船目标的精确检测。注意力机制源于人类视觉,在人类处理信息的过程中,会做出信息筛选,从输入信息中选取一部分重要信息,而忽视其他可见信息,以分配有限的信息资源。普通的卷积神经网络中的池化层采用平均池化或者最大池化的方法直接将信息合并,这样很可能会错过关键信息。卷积层的注意力机制模块(Convolutional Block Attention Module,CBAM)[18]结合了空间[19]和通道[20]的注意力,同时运用了以上两种池化方式,引导神经网络更有针对性地提取目标特征。

通道注意力模块在空间维度进行操作,能够找出图片信息中的重要内容,即可能存在目标的区域,其结构如图6所示。通道注意力模块的流程是,输入的特征图分别经过最大池化和平均池化,来聚合特征映射的空间信息,然后分别经过MLP 共享网络,再将输出的特征进行逐元素加和,经过sigmoid缩放到[0,1]之间,与输入特征图做乘法,得到结果。通道注意力模块从W×H×C的特征图得到1×1×C的注意力权重,可以表达为:

其中,F表示输入特征图,F'表示本模块输出,MC表示经过通道注意力操作,AvgPool 表示对输入特征图在空间维度上使用平均池化,MaxPool 表示空间维度上的最大池化,MLP表示多层感知机运算,σ为sigmoid操作,符号⊗代表逐元素相乘。

空间注意力模块在通道维度进行操作,能够找出图片信息中需要被关注的区域,其结构如图7 所示。具体流程是将输入特征图(W×H×C)做一个基于通道的最大池化和平均池化,也就是将所有通道池化成了2个实数,得到2个(W×H×1)的特征图,将两个特征图拼接,对它做7×7 的卷积操作,降维为1 个(W×H×1)的特征图。经过sigmoid 激活操作后,和该模块的输入特征做乘法,得到调整后的特征图。空间注意力模块可以表达为:

其中,F表示输入特征图,F"表示本模块输出,MS表示经过空间注意力操作,AvgPool 表示对输入特征图在通道维度上使用平均池化,MaxPool 表示通道维度上的最大池化,f7×7表示一个7×7 的卷积操作,σ为sigmoid操作,符号⊗代表逐元素相乘。

3 实验

3.1 数据集

本文使用公开的SSDD 数据集[21],SSDD 数据集中的图像样本通过C 波段的Radarsat-2、Sentinel-1卫星以及X 波段的TerrraSAR-X 卫星的SAR 图像数据裁剪得到,包含HH、HV、VV 和VH 四种极化方式,图像大小为390×205 像素~600×500 像素。该数据集包含1160 张图像、2456 只舰船目标,平均每张图像有2.12 个舰船,包含7×7 像素的小目标舰船到211×298 像素的大目标舰船,涉及了大片远海区域和近岸区域目标,目标背景多样。

3.2 模型训练过程

实验在Ubuntu18.04 系统的Tensorflow 深度学习框架下运行,并使用CUDA10.1 和cudnn7.4.2 来加速训练。计算机配置为Intel®Xeon®Gold 6240,2.60 GHz,显卡为NVIDIA TITAN RTX,24 Gb 显存,算法的训练和测试均在GPU加速下完成。

将SSDD 数据集按照8∶2 的比例随机划分为训练集和测试集。在划分过程中,将图像按照远海/近海场景、目标尺度、目标密集度均匀分配,以保证实验结果的有效性。模型通过水平翻转、裁剪等操作实现数据增广,提高模型的泛化能力。非极大值抑制和预测概率的阈值均为0.5。本文中的实验默认由ResNet50初始化,初始学习率设置为0.0005。采用动量优化器,动量值设置为0.9。

3.3 实验结果与分析

本文采用平均精度AP(average precision)作为SAR 图像舰船检测模型性能的评价指标,计算公式为:

其中TP 为正确定位的目标数量;FP 为误检目标数量;FN为漏检目标数量;精确率P(Precision)表示检测正确的目标在全部检测结果中的比率;召回率R表示检测正确的目标占所有舰船目标真值的比率;以P为纵轴,R为横轴,可以绘制出PR 曲线,曲线与横坐标轴围成的面积为AP 值,AP 用来衡量单类目标的检测精度,AP 值越接近1,说明其检测精度越高。

利用本文算法在SSDD 数据集上进行检测,将引入不同模块的检测算法结果进行对比,采用检测精度作为性能指标,实验结果如表1 所示。表中RetinaNet 为原始网络不加改进模块的检测结果;CBAM_RetinaNet 对RetinaNet 算法只引入注意力机制;CSL_RetinaNet 对RetinaNet 算法只引入圆形平滑标签的角度分类方法;本文方法指对RetinaNet算法同时引入注意力机制与圆形平滑标签的角度分类方法。从表1 可以看出,本文方法的检测精度高于其他3 种算法,拥有更好的检测性能,在SSDD数据集检测的AP 值相较于RetinaNet 算法提升了8.74%,引入注意力机制和引入圆形平滑标签的角度分类方法都一定程度提高了舰船目标的检测精度,同时引入两种改进方法时网络的检测性能最好。

表1 SAR图像舰船目标检测结果对比Tab.1 Comparison of ship target detection results in SAR images

为验证本文所提检测网络的性能,在SSDD 数据集上完成本文方法与其他常用算法的对比实验,其他算法包括SSD、YOLOv3 和Faster R-CNN 算法,实验结果如表2 所示。从表中可以看出,本文方法在单目标检测精度AP 评价指标上取得了最优结果。

表2 算法性能对比Tab.2 Algorithm performance comparison

图8 展示了本文方法在SSDD 数据集上的检测结果,其中绿色框为算法正确检测出的结果,红色框为漏检目标,黄色框为虚警。图8(a)展示了近岸大目标检测情况,图8(b)展示了远海大目标检测情况,图8(c)展示了近岸小目标检测情况,图8(d)展示了远海小目标检测情况。从图中可以看出,本文算法对远海大目标、近海小目标的检测性能较好。这是由于在这两种场景下目标周围为海面区域,复杂背景杂波少,容易将舰船目标准确检出。而对于图8(a)近岸场景下的大目标检测所示结果,有3 个舰船目标漏检、1个虚景。这是由于近岸场景下,部分海岸、港口、岛礁等与舰船特征相近,且都表现为强散射点,在特征提取的过程中引入背景干扰信息多,易导致漏检、误检。对于图8(d)呈现了远海小目标检测结果,由于舰船尺度差异明显,在SAR 图像中表现为几十个像素到几万像素的多尺度目标,小目标易存在漏检。总体来说,对于SAR 图像舰船目标检测,本文方法在近海和远海场景下都能取得良好的效果,能够在复杂背景下识别舰船目标,并且能更好地处理多尺度问题,得到更加精准的检测框。

图9(a)展示了本文方法在SSDD 数据集上强干扰环境中的目标检测情况,在背景干扰严重的近岸SAR 图像舰船目标检测也有很好的检测性能。图9(b)展示了本文方法对多尺度目标的检测效果。

本文算法能够检测出更多正确的舰船目标,总体的误检、漏检目标数量较少,大多数目标可以被正确地检测到。在复杂的海洋环境中,此方法仍然取得了较好的检测性能,验证了该方法对于密集型和小型舰船检测稳健性能。舰船目标被预测边界框很好地覆盖,旋转检测框中不包含背景区域信息,可以有效地排除背景区域的干扰,保证提取的目标特征更准确。注意力机制完成了对舰船目标特征的精确提取,从而大大减少了舰船目标的漏检和误检。对于误检、漏检目标问题,分析原因可知,港口处于海陆分割区域,且呈现出与舰船目标相似的成像特征,海岸、码头等陆地强散射体与舰船目标接近,这些多变的地物类型对舰船目标检测造成了干扰,导致出现误检、漏检。

4 结论

本文基于深度学习的方法提出用于SAR 图像舰船检测的改进RetinaNet 模型,在圆形平滑标签(CSL)进行旋转框检测的基础上,在分类与定位网络中加入了注意力机制。经SSDD 数据集实验验证,检测精度相比较于RetinaNet 模型提升了8.74%,验证了本方法的有效性,特别是在近岸和近海场景中的舰船检测更为精确和鲁棒。本方法巧妙地平衡了旋转框预测的质量和单级框架的高速性,对于SAR 图像目标智能提取具有重要意义。但本文方法对背景复杂度较高的SAR 图像舰船目标仍存在错检和漏检现象,下一步工作将考虑进一步优化网络结构。另外,如何针对SAR图像自身特点,合理利用注意力机制进行高精度检测,而不再简单沿用光学图像目标检测方法仍需研究。

猜你喜欢
池化舰船注意力
基于高斯函数的池化算法
风浪干扰条件下舰船航向保持非线性控制系统
让注意力“飞”回来
卷积神经网络中的自适应加权池化
舰船测风传感器安装位置数值仿真
如何培养一年级学生的注意力
基于卷积神经网络和池化算法的表情识别研究
用于手写汉字识别的文本分割方法
A Beautiful Way Of Looking At Things
台日舰船对峙内幕曝光