基于多尺寸特征叠加的SAR 舰船目标检测方法

2021-04-25 08:12魏松杰张泽栋徐臻刘梅林陈伟
关键词:舰船卷积特征

魏松杰,张泽栋†,徐臻,刘梅林,陈伟

(1.南京理工大学计算机科学与工程学院,江苏南京 210094;2.上海交通大学航天学院,上海 200240;3.上海卫星工程研究所,上海 200240)

舰船目标检测在海洋监测和国土安全领域的作用愈发重要,包括海事安全、海上交通、海洋污染防治和边境管制方面具有较为广泛的应用[1].合成孔径雷达(Synthetic Aperture Radar,SAR)通过保证相参性的脉冲发射信号,具有较高的分辨率,可以全天时、全天候工作,自问世以来,就在民用遥感、测绘和军事目标探测领域展现出优秀的能力[2],随着海洋船舶技术的发展,Sentinel-1、ERS 系列和高分系列等卫星相继出现,基于SAR 图像的舰船目标检测应用场景和应用效果不断扩展提高.

恒虚警处理(CFAR)可以对潜在的舰船区域进行提取,通过既定的检测方法确定阈值,输入信号中根据阈值确定像素是否为目标像素,为保持虚警的概率,阈值会根据输入中的噪声以适当的规则保持恒定,并降低噪声、杂波等干扰对虚警率的影响.针对目标运动时的距离分量导致方位偏移问题,文献[3]通过线性积分和长度归一化技术,将线性特征转化为点特征来构建概率模型实现CFAR 检测.文献[4]提出了一种基于非对称映射和选择性滤波方法的自适应阈值单元平均恒虚警率船舶检测算法,实验证明使用所提出的过滤步骤可以降低虚警率,且不降低检测率.

计算机视觉领域的优秀目标检测与框架不断推陈出新,基于深度学习的目标检测技术已经逐渐代替传统的方法,成为目标检测领域的主流技术,而卷积神经网络(Convolutional Neural Networks,CNN)[5]凭借其良好的特征自提取能力,共享卷积参数等天然优势,已经广泛地应用在目标检测领域.基于卷积神经网络的检测方法主要分为基于候选区域的双阶段目标检测方法与单次目标检测方法.其中以R-CNN[6]、Fast R-CNN[7]、Faster R-CNN[8]、R-FCN[9]和Mask RCNN[10]为代表的基于候选区域的双阶段目标检测方法通过特征图提取候选区域,判断锚点属于前景或背景,利用边框回归与分类器修正得到检测目标分类信息和位置坐标.而YOLO[11]就是基于回归策略的单阶段检测方法,直接使用一个卷积神经网络同时预测边界框的位置和类别.SSD[12]以YOLO 基于回归的思想为基础,使用小卷积滤波器预测目标类别和偏移,并通过将其应用于多个特征映射可以达到多尺度检测.之后在YOLO 和SSD 的基础上又衍生出了YOLOv2[13]、YOLOv3[14]、RetinaNet[15]、RefineDet[16]、M2Det[17]等算法,在检测精度和效率上更加优秀.

以上述多个目标检测算法为基础,文献[18]以RetinaNet 为基础结构,对特征金字塔网络进行改进,提升特征的提取效果,使用迁移学习等方法,相比原算法有更高的准确率.文献[19]针对小目标密集难以检测问题,针对舰船目标设计不同尺度的转换功能,连接到多个特征地图以获取多比例尺特征,加入上下文特征以辅助复杂目标的检测,达到了较好的检测性能.文献[20]设计包括两层结构的级联卷积框架,首先对目标初步的快速筛选,然后借鉴迁移学习方法初始化特征提取网络,结合矩形旋转框等技术可以保证达到较好的检测精度的条件下优化了检测效率.文献[21]提出一种多输入分辨率CNN 模型,模型中不同输入分辨率的组合提高了提取特征的能力,在多类别通用数据集上交叉评估,分类精度得以提高.文献[22]在Faster-RCNN 网络的基础上针对SAR 图像舰船目标调整锚框大小以及损失函数,检测精度和效率有相应的提高,并制作了舰船检测领域的数据集,包含上千图片和不同形态、特点的目标,为舰船目标检测领域提供了良好的检测样本.文献[23]提出一种基于多尺度特征融合的卷积神经网络来生成更加丰富的语义信息,在SAR 图像舰船目标识别体现出较好的效果.本文同样以多尺度特征融合为主要思想,在特征融合过程中应用更深层次的特征图,增加一次融合操作,此外特别针对舰船目标独有特征设计筛选过程,完成SAR 图像舰船目标的识别,同时完成舰船目标的分类功能.

针对SAR 舰船目标中不同尺度目标对检测结果的影响,本文借鉴YOLOv3 检测算法中可变尺度特征图和回归策略,设计了多层次特征检测的卷积神经网络,通过改进YOLOv3 模型增强网络对不同尺度舰船目标的适应能力,对多种尺度的检测目标使用相适应特征图进行提取,对检测损失函数进行相应的改进,模型通过共享参数和剪枝压缩进行轻量化处理,同时建立了包含四种类别的舰船检测数据集,使用预训练权重等方法,进行了多组对比分析实验进行验证.

1 模型方法

模型的整体流程如图1 所示,图中数字对应文中相应章节.首先对原始的SAR 图像进行图像的预处理操作,然后将图像裁剪成适合神经网络接受的大小,通过特征叠加网络得到不同尺寸的特征图,对每种特征图的预测结果进行筛选,区分正负样本,然后通过计算损失函数的大小来确定最终检测结果.

图1 总体检测流程Fig.1 Detection procedure overview

1.1 模型设计流程

1.1.1 残差网络模块

基于前馈神经网络的结构,随着隐藏层数的增加,对输入特征抽象层次越来越高,可提取不同层次特征越丰富,由此增加网络的宽度和深度可以对网络的性能有相应的提升,但随着网络层数的不断增加,由于样本中噪声干扰或模型复杂度过高,在反向传播过程中网络权值参数的连乘产生梯度弥散或爆炸问题.

残差网络(Residual Network)的出现很好地解决了这些问题,对于网络层数的增加而出现的退化问题,使得在中间某一层已经达到了较好的参数调整,所以更深层次的网络至少保证了不低于低层次的网络,恒等快捷连接(shortcut connection)可以使映射对输出的变化更灵敏,由于其学习的是两层参数之间的差值,比直接拟合效果的作用占比更大,所以在训练更深网络的同时,可以保证性能不会退化,残差网络中的残差模块结构如图2 所示.这样的结构对于恒等映射,上一层的输出x 到更深一层的输出H(x),参数的学习调整函数F(x)会不断拟合两者相等的关系,而残差结构会学习F(x)=H(x)-x 这个差值,因为相比通过非线性层来拟合,将残差推到0 会更加容易.使用这种残差学习方法没有减小回传损失,但差值的学习对比原来线性学习的参数量更小,相当于增加了对损失误差的灵敏度,在不断增加网络层数后也可以保持精度的平稳率.

图2 基本残差模块Fig.2 Basic residual module

1.1.2 网络结构

特征融合结构如图3 所示,其基本原理借鉴YOLOv3 目标检测算法,通常卷积操作会获得更高层次的语义信息,但随着多次下采样操作,对于舰船等低分辨率小目标提取的信息不足,增加特征融合结构,利用特征金字塔中不同尺寸特征图结合检测有利于提取不同分辨率、多尺寸目标的语义信息.

图3 特征融合结构Fig.3 Feature fusion structure

特征提取网络如图4 所示,由两种步长3×3 和1×1 的卷积层叠加而成.

图4 特征提取网络Fig.4 Feature extraction network

检测的基本过程是产生不同尺寸的先验框,通过损失函数不断调节位置,使用非极大值抑制算法根据目标分类得到的边界框概率排序后,去掉概率得分较低的边框得到结果,筛选出预设阈值以上的集合.

对于尺寸为416×416 的原始图片会生成4 种不同尺寸的特征图,如图5 所示,对应提取不同分辨率的语义信息,因为直接使用多尺度特征图分别进行不同的检测生成的参数量过大,为此多尺度特征图通过上采样与浅层特征融合可以使小目标可以同时关注低分辨率的部分特征与全局信息.

图5 网络结构图Fig.5 Network structure

如原始图片尺寸为416×416,经过5 次卷积操作和后随的2 步长的池化操作,其中一个输出的张量为13×13×255,为了使用深层特征,经过步长为2的上采样后,将特征层维度与26×26 的特征图保持一致进行后续的处理.

同样26×26 的张量也经过步长为2 的上采样与第一次下采样后的特征图维度相同,同样深浅层特征融合分别为61 层和85 层,36 层和97 层,此外经过对YOLOv3 特征融合网络的增改,进一步将11 层与步长为2 上采样后的109 层特征融合,从而更加充分地发挥层次结合的优势.不同尺寸的特征图的感受野映射原始图片区域大小不同,将语义更强但尺寸更小的特征图增加分辨率,融合更多语义信息达到多尺度检测的目的.SAR 图像中舰船目标相比其他目标有其独有的特点,本文考虑表1 中多种特征设计网络结构.

表1 针对SAR 舰船图像目标特征的设计Tab.1 Design for SAR image target features

SAR 图像中的舰船若处在运动状态中通常会展现尾迹,在图像中体现为船尾后的白色像素轨迹,这也是识别为舰船目标的重要特征,通过在特征融合之前增加卷积层数,更有效地提取目标的局部特征.

此外,实验中使用的为10 m 分辨率的SAR 图像,根据查阅常用民用舰船的最大最小尺寸约为10 m 到460 m,考虑船身的长宽比及高度等特点,映射到图像中像素约占10 到200 像素点,在检测框筛选阶段设置相应的阈值筛选掉不符合尺度的目标,同时设置船身长宽比例临界值为1 到10,目标长宽比例越界的筛选掉.同样,除非在港口停泊处,在海面舰船航向中,方向基本水平一致,通过计算初步筛选目标舰船的斜率考虑舰船集群的大致航行方向计算平均斜率,在检测框筛选阶段筛选目标斜率与平均斜率差值大于0.5 的目标,船身与水平方向的斜率可以由目标像素的坐标位置(Xmin,Ymin),(Xmax,Ymax)推算得出,见图6.

图6 针对SAR 舰船目标设计筛选过程Fig.6 Design screening process for SAR ship targets

1.1.3 损失函数设置

网络将输入图像划分成S×S 个网格,每个网格会预先产生3 种尺寸的边界框,若网格中心点置于目标则会由其负责检测.每个网格预测出检测物体边界框的4 个偏移坐标、以及置信度得分,但因为YOLOv3 采用了多个尺度的特征融合,边界框的实际数量较大.因为每种规模特征图对应4 个边界框,所以得到的张量是S×S×[3×(4+1+80)]即255 的张量深度,其中包含边框左上角的横纵坐标和边框的长宽、边框置信度以及默认80 种分类预测.

损失函数为网络预测结果与真实结果之间的偏差,这里损失函数由边框的位置误差、边框的置信度误差和对象分类的误差三部分组成.

通过设置预测边界框与真实边界框的交并比来评估位置误差(见图7),在使用非极大抑制法筛选时考虑真实目标框与预测框之间的重叠面积和边框中心点位置,加速回归效率,使用DIoU(Distance-IoU)边框回归机制(见图8).

图7 交并比Fig.7 Intersection-over-Union(IoU)

IoU 的测量标准只有bounding box 与ground truth 的面积重叠比率,考虑加入两个框之间相对距离与并集所在最小矩形的相对大小,如下式:

式中:c 表示bounding box 的中心,c*表示ground truth 的中心,E 为对两点计算欧几里得度量,在二维图像上即两点间距离,d 表示两者并集所在最小矩形的对角线长度,通过这种IoU 损失可在预测框与真实框分离或中心点处于同一水平线时,由于闭包约束可以更快地降低损失,加快收敛.

图8 基于DIoU 损失边框回归Fig.8 DIoU loss for bounding box regression

式中:w 和h 分别是ground truth 的宽和高,x 和y 为左上角坐标点,α 和β 为权重平衡因子,共S×S 个栅格,B 为当前栅格中预测框总数,为i 号栅格中检测到的目标,为i 号栅格中编号为j 的预测框检测到的目标为i 号栅格中编号为j 的预测框未检测到的目标.为预测框是否负责某个对象的参数置信度分数为分类概率,对应的真实框参数信息分别为

1)预测框的位置误差:

2)预测框的置信度误差:

根据交叉熵来表示置信度误差,包括边界框是否为前后景及是否包含目标的置信分数,为避免非目标置信分数对整体置信误差的负面影响过大,产生混淆,通过乘以权重因子β 减少不含检测目标的预测框对损失函数的作用占比,这里设置β=-0.3.

3)对象分类的误差:

若i 号栅格编号为j 的预测框中不包含目标,此项误差损失不会参与计算,对象分类的损失误差同样使用交叉熵损失函数进行收敛.

1.2 模型压缩

通常情况下经过卷积神经网络多轮训练所得的模型中会存在冗余信息,随着模型复杂度的增加,所得的模型需要计算的浮点数操作会越来越大,模型体积也会过大,这样不利于模型在存储空间、运算资源受限的平台上部署使用,因此需要针对网络模型特点对其进行压缩操作,本文用于深度压缩的方法有权值参数共享和剪枝两种.

1.2.1 权值参数共享

权重参数共享可以显著减少网络所使用的参数量,图片经过卷积操作后,与特征图之间的映射关系存储了大量参数,通过随机散列函数将参数重分配,使得部分重复参数可以共同使用,网络参数矩阵经过聚类等方式重新存储,使用较少的参数可以替换原参数矩阵.

权重参数共享存储如图9 所示,假设两层神经元之间的参数由矩阵V 表示,经过散列存储的参数集由R 表示,重新分配的参数经过不同散列函数映射,由原来28 个参数降低到6 个,压缩了4 倍,由于原来重复的参数信息都在集合R 中,基本上保持泛化性能的同时,大大减少了神经网络的存储需求.

图9 权重共享矩阵Fig.9 Weight sharing matrix

1.2.2 剪枝

神经网络的各层连接通常如图10 所示,相邻两层的的神经元连接数目较多,其中有很多冗余单元,如果不对密集网络进行裁剪操作会产生大量浮点乘法计算.两层之间每条连接线都有相应的权值,通过去除权值贡献较低的连接,即将较小的权重置零来去除神经键,若某一神经元与上下两层的连接权重都为零则去除次神经元,这样在基本保证模型准确率的前提下大大减少了参数量,将原权值矩阵稀疏化,从而降低网络的复杂度.

图10 剪枝前后的网络连接Fig.10 Network connection before and after pruning

裁剪部分主要针对BN 层进行,BN 层引入了γ和β 两个可学习重构参数.针对每次反向传播过程,对L1 正则梯度和BN 层的梯度进行结合,设置一个有序列表存储裁剪BN 层中γ 参数,设置裁剪阈值为0.9 进行裁剪.未经过阈值筛选的γ 通道去掉其权值大小,重新得到本层的结构并将β 参数与后续的卷积模块中BN 的运行方差参数结合计算.

2 实验结果与分析

2.1 实验平台与数据集

实验所使用的计算机硬件平台是64 位Windows10 操作系统,中央处理器为Intel(R)Core(TM)i5-8300H CPU@2.3GHz,独立显卡型号为NVIDIA GTX 1080,16 GB 内存,CUDA 加速环境为CUDA 8.0和cudnn 6.0,采用的网络开发框架为Darknet.

实验数据集采集自欧洲航天局哥白尼计划(GMES)中的地球观测卫星哨兵一号(Sentinel-1)卫星所拍摄的雷达影像,采集时间为2017-06-26 T 23:03:40.552573 到2017-06-26 T 23:04:05.551041,数据类型为IW GRD(干涉宽幅模式的地距多视产品),对诺福克港、圣地亚哥港、迪拜港等大型港口附近的舰船图像目标进行处理,制作了PASCAL-VOC 格式舰船目标遥感数据集,人工标注了4 种不同种类的民用舰船.SAR 图像分为方位和距离分辨率,方位分辨率为不同波束的方位向所能辨别的两目标之间最小距离,距离分辨率为同一方位角距离雷达不同被区分的最小距离.

该数据集包含不同距离分辨率(5~20 m)以及不同背景下(近岸、近海)不同尺寸的舰船目标,样本场景的多样性保证了训练出来的模型有更强的泛化能力,同时采用旋转和反转两种方式对数据集进行样本扩充,共计1 241 个目标,以4 ∶1 划分为训练集和测试集.本文使用开源工具LabelImg 对数据集中的遥感图像进行了人工标注,图片标注后,都会对应生成相同文件名且后缀为.xml 的文件,该文件依次记录了对应图片中所有标注框的位置和目标类别等信息.

2.2 网络训练

使用在ImageNet 数据集上预先训练好的特征提取网络模型,对训练参数进行调整.

模型优化算法的方法采用随机梯度下降法(SGD),批量大小取64 更新控制训练样本量,学习速率在训练开始为0.001,设置学习率衰减系数0.000 5 防止过拟合,为使批处理训练时权值参数震荡加速收敛,使用带有动量因子梯度代替原梯度进行参数更新,默认设为0.9.训练过程中损失函数的变化情况如图11 所示,经过20 000 步迭代后网络基本收敛.

图11 损失函数变化曲线Fig.11 Loss function curve

2.3 实验结果评估

为评估算法的检测效果,采用如下式所示标准对检测器的性能进行定量化描述:

式中:Ntp表示正确检测的样本数,Nfp表示错误检测的样本数,Nfn表示漏检目标的样本数,准确率(precision)表示在所有被预测的目标样本中,预测正确的比例,召回率(recall)表示预测正确的样本数在所有真实样本数中的比例.同时,使用如下式所示的F1值来表示算法的综合性能.

首先对测试集的实验结果进行分析,测试结果如表2 所示.

表2 测试集的实验结果Tab.2 Experimental results of test set

图12 给出一些典型的测试结果例图,其中检测出的各类目标分别用不同的方框标记出来.不同场景下算法的检测结果如图13 所示.其中图13 的第一行、第二行为海面舰船目标检测结果,该场景下舰船的特点是目标相对背景较小,容易造成漏检以及定位不准的问题,部分目标有较严重的拖尾痕迹,算法可以较为准确地完成对海面舰船目标的检测.图13 的第三行为复杂背景下的近岸舰船目标检测,该类舰船目标特点是背景复杂,舰船目标与岸边建筑难以区分,有若干港口处模糊小目标漏检.可以看出,算法对河道、港口等多种背景下不同尺寸的舰船目标均有较好的检测效果.其次,为测试算法的泛化能力,同时准备了马六甲海峡、安特卫普港和长三角等大型港口的若干原始大幅面SAR 图像进行测试,测试图片幅面平均为25501×16731 像素,对比另外两种检测算法部分检测结果如图13 所示,实验表明,本文方法完成端到端的检测,平均准确率为91.39%,召回率为93.03%,F1值为92.20%,可以达到对SAR 图像舰船目标的有效处理.

图12 测试示例图片Fig.12 Test sample pictures

图13 不同场景下检测结果对比Fig.13 Comparison of detection results in different scenes

表3 以帧/s(Frame per second)给出了检测程序运行的效率,有助于评估本文方法的实时数据处理和目标检测的性能.

表3 同时给出了本文方法与其它目标检测算法在舰船数据集上的测试性能对比,本文方法的准确率为91.39%,比SSD 和Faster-RCNN 分别提高了4.03%和2.13%,得益于网络结合深层特征的多尺度检测,采用特征映射模块和残差网络模块,获得了更丰富的语义信息.

表3 各方法对比Tab.3 Comparison of methods

本文对实验用的模型进行了压缩,并测试了压缩后模型的识别能力.良好的模型压缩方法在保证不损害检测效率的前提下追求更大的空间节省和更快的运行效率.表4 描述了模型压缩前后的识别正确率、压缩率以及效率.由表可知,本文提出的权值参数共享+剪枝的方法将模型从272 MB 压缩到了34 MB,压缩了8 倍,并且精度仅损失1.23%,证实了压缩方法的有效性.

表4 模型压缩前后的统计数据Tab.4 Statistical data of the original model and compressed model

3 结论

本文设计了一种基于YOLOv3 框架的水面SAR遥感图像中舰船目标快速识别和分类方法,通过采集并标注SAR 图像舰船目标样本,制作相应的数据集用于模型训练,结合残差单元与多尺度训练,增强网络对不同尺寸目标尤其小目标的良好适应性,针对舰船目标特点设计网络检测、筛选过程.采用基于相对距离的边框交并比策略与权重因子的损失函数,提高收敛速度与检测效果,使用权值参数共享和剪枝方法对模型进行轻量化处理.端到端的训练简化了训练流程,无需人为进行子问题的划分,且通过实验表明模型对新数据集有较好的适应能力.同时本文研究也为星载SAR 等目标识别系统的设施提出了新的思路,基于卷积神经网络等深度学习方法的SAR 图像舰船目标检测预计将面向实时、广域、高速、精准的应用需求不断发展完善.

猜你喜欢
舰船卷积特征
支持向量机的舰船图像识别与分类技术
风浪干扰条件下舰船航向保持非线性控制系统
离散型随机变量的分布列与数字特征
一种基于卷积神经网络的地磁基准图构建方法
基于3D-Winograd的快速卷积算法设计及FPGA实现
一种并行不对称空洞卷积模块①
舰船测风传感器安装位置数值仿真
从滤波器理解卷积
抓特征解方程组
不忠诚的四个特征