复杂背景下SAR图像船舶目标检测算法研究
2021-10-28樊海玮秦佳杰
樊海玮,史 双,蔺 琪,孙 欢,秦佳杰
(长安大学 信息工程学院,陕西 西安 710064)
0 引 言
SAR图像船舶目标检测过程中通常存在港口以及近海岸等复杂背景下的船舶目标检测情况,由于船舶紧邻港口受岸上建筑的干扰较为严重,因而容易造成漏检误检的状况。为避免复杂背景下陆地区域对SAR图像船舶目标检测的影响,文中提出将注意力机制思想引入目标检测算法中。目前所研究的基于卷积神经网络的复杂背景SAR图像船舶目标检测算法多以牺牲检测速度为代价提升目标检测精度,故而存在检测模型大、网络参数多的问题,对于实时性要求较高的应用场景如海难救援、紧急军事部署等都具有一定的局限性。
注意力机制在深度学习领域的应用从本质上与人类的视觉选择性机制类似,是从众多信息中选择出对当前任务最重要的信息。Xu K等人在2015年根据注意力机制关注区域选择的不同,将注意力机制分为软注意力和硬注意力[1]。其中软注意力机制在注意力分配时,对于输入的每一个区域给出一个[0,1]范围之间的概率值,然后对其进行加权,对于特征图的每个区域都给予关注,只是每个区域的权重会因关注程度的不同而变化,因此其具有参数化,可微化性能。近年来,不断有学者提出将软注意力机制应用于卷积神经网络端到端的模型训练[2-3]。
1 算法思想
卷积神经网络的快速发展使SAR船舶目标检测技术不断提升,目前已有学者将深度卷积神经网络应用到SAR船舶目标检测问题上,深度卷积神经网络强大的特征提取能力使得在SAR船舶目标检测领域取得了较好的检测结果[4-6]。特别是深度学习算法不受场景限制,在进行复杂场景SAR船舶目标检测时无需进行海陆分割,只需进行数据标注便能够准确学习目标特征。然而,目前所研究的SAR图像船舶目标检测普遍存在模型复杂,参数量多的问题。为提高检测精度,不少学者提出进一步增加网络深度,但同时影响了检测速度,在一定程度上限制了SAR图像目标检测领域的发展[7]。
文中结合注意力机制思想对卷积神经网络的特征进行改善以提升模型的检测性能,尤其是对尺寸较小的SAR船舶目标及复杂背景下的SAR船舶目标。考虑到基于卷积神经网络的两阶段检测算法内存占用大、检测速度慢等缺点,文中选取以一阶段目标检测算法SSD[8]为基础,设计出一个新的单阶段目标检测模型DASSN(dual attention SAR ShipNet )。该模型将SSD网络的基础网络VGG16[9]替换为利用深度可分离卷积的MobileNet网络,有效降低了模型参数,从而提升了模型检测速度,与此同时在模型中引入了空间注意力(spatial attention,SA)以及通道注意力 (channel attention,CA)机制形成双注意力机制模块,增强模型对复杂背景下的SAR船舶目标以及小尺寸SAR船舶目标检测的鲁棒性;继而将针对SAR船舶目标检测问题看为二分类问题的特点,采用了一种适用于SAR船舶目标检测的改进损失函数。
2 基于DASSN的复杂背景SAR船舶检测算法
目前,深度学习网络模型在SAR图像船舶目标检测中的直接应用往往达不到所预期的效果,其原因在于现有的目标检测网络多是基于光学图像的应用。其一,与光学图像相比SAR图像较难获得,因而导致在模型训练过程中容易出现数据不平衡的问题;其二,SAR船舶目标与光学图像目标相比往往尺寸较小,且容易受到杂波及噪声等影响导致图像的分辨程度不高,人眼很难对其进行分类处理;其三,在SAR船舶目标检测过程中只涉及船舶和非船舶的二分类问题,而现有的应用于光学图像目标检测网络多是基于多分类问题的。
另一个值得注意的问题是,目前检测性能较好的网络往往模型较大,参数量较多,即使一阶段网络模型的提出已经在较大程度上提升了模型的检测速度,但如果要达到检测精度更高,检测速度更快的效果,仍需要对网络模型进行不断地改进和更新。因此,文中提出在一阶段目标检测网络SSD的基础上进行改进,生成适合复杂背景和小尺寸SAR船舶目标检测的网络模型。
2.1 模型构建
针对复杂背景SAR船舶目标检测中检测效果易受地物干扰导致模型检测准确率低的问题,提出将结合通道和空间的双注意力机制引入到目标检测网络中,同时考虑到SAR船舶目标尺寸普遍较小的问题,将特征融合技术应用于目标检测网络中来提升模型对小尺寸目标的鲁棒性。为进一步提高模型的检测速度,文中将原SSD检测模型的基础网络替换为轻量级的MobileNet网络,所提模型DASSN网络结构如图1所示。
图1 DASSN目标检测网络结构
模型的输入定义为300×300,网络模型中前13层卷积层为MobileNet基础网络。该目标检测模型在MobileNet网络后加入8个卷积层网络(conv14_1/2,conv15_1/2,conv16_1/2,conv17_1/2),并选取其中4层作为最终的目标检测特征图,整个网络总共选择6层用于目标检测。所提DASSN模型分别在原conv13、conv14_2、conv15_2、conv16_2卷积层基础上引入CBAM(convolutional block attention model)双注意力机制得到相同尺寸的特征图用于目标检测。值得注意的是,所提网络引入膨胀卷积(dilated conv)先对conv5进行处理,然后与conv11进行特征融合后作为最终用于目标检测的特征图。
2.2 基础网络模块
所提目标检测网络选用轻量化MobileNet作为基础网络,该网络的最大特点在于将标准卷积替换为深度可分离卷积(depthwise separable convolution),通过引入宽度乘数(width multiplier)和分辨率乘数(resolution multiplier)两个超参数来减少参数量和计算量。
深度可分离卷积可看作将一个标准卷积分为深度卷积(D-conv)和1×1的点卷积(P-conv)。其中,深度卷积只卷积输入的一个通道,与标准卷积相比能够大幅减少网络参数量,点卷积为传统的卷积运算,但由于其卷积核的尺寸为1×1,相比于标准卷积的大尺寸卷积核具有较少的参数量。
2.3 双注意力机制模块
文中提出将通道注意力机制与空间注意力机制结合生成的双注意力模块CBAM应用到目标检测网络中,CBAM是一种专门为卷积神经网络所设计的简单有效的注意力模块,其网络结构如图2(a)所示,分别从通道和空间两个方面生成卷积网络特征图的attention map,然后将attention map与输入特征图相乘进行特征自适应学习。CBAM作为一个轻量级的模块能够比较方便地融入卷积网络实现端到端的训练。
(1)通道注意力机制(CA)。
模型在特征提取过程中并不是每个卷积核都能起关键性的作用,甚至某些卷积核处理会对模型造成负面影响,进而影响模型的检测性能。为了提高模型的检测精度,文中引入通道注意力机制,使得网络模型能够有效关注到重要通道,而忽略甚至抑制负面通道,其网络结构如图2(b)所示。
(a)CBAM结构
(b)通道注意力机制结构示意图
(c)空间注意力机制结构示意图图2 双注意力机制模块结构示意图
从图2(b)中可以看出,注意力机制的输入特征维度为N×H×W,其中N为输入特征的通道数,H为输入特征图的高,W为特征图的宽。通道注意力可表示为式(1)。
Fc=sig{MLP[GAP(F)]+MLP[GMP(F)]}
(1)
其中,F表示输入特征图;GAP表示全局平均池化;GMP表示全局最大池化;MLP表示多层感知机;sig表示sigmod激活函数,
经过注意力机制处理后得到一个N维向量Fc,其表达式如下:
Fc=(α1,α2,…,αN)T
(2)
其中,αi(i=1,2,…,N)表示第i个通道的重要等级,最后将该向量与输入相乘得到N×H×W的最终输出,该输出能够有效关注重要通道,抑制非重要通道的影响。
(2)空间注意力机制(SA)。
SAR图像在空间各处存在不同价值的信息,例如在复杂场景下停靠于港口的船舶目标,船舶才是重点关注的对象,而港口设备不是需要关注的对象。空间注意力机制的引入能够有效关注到船舶目标而抑制图像中其他非重要信息,从而进一步提高检测精度。
文中采用将空间注意力机制添加在通道注意力机制的输出端,即空间注意力机制的输入为通道注意力机制的输出。所应用的空间注意力机制结构如下所述:先在输入特征图的基础上使用最大池化和平均池化进而得到两个不同的特征描述图,然后通过concatenation方式将两个特征描述合并,接着使用卷积操作生成空间注意力特征图,最后经过sigmod函数得到最后空间注意力机制的输出。
假设空间注意力机制的输出表示为FS,其计算过程可表示如下:
FS=sig{f7×7[GAP(F'),GMP(F')]}
(3)
其中,F′为输入特征图;GAP和GMP与通道注意力机制中的表示意义一致,分别表示全局平均池化和全局最大池化;f7×7表示7×7的卷积操作;sig仍为sigmod激活函数。
注意力机制处理后得到的输出Fs为一个维度为1×W×H的矩阵,表示为:
(4)
其中,ψi,j(i=1,2,…,H,j=1,2,…,W)表示空间坐标为(i,j)位置信息的重要等级,最终的输出为该矩阵与输入特征图相乘,空间注意力机制的引入能够成功关注到空间的有效信息。
2.4 多尺度特征融合模块
为了进一步提升模型整体的检测精度,增强算法对小尺寸目标的鲁棒性,同时考虑到基础特征提取层具有大尺寸、高分辨率的特性,能够很好反映目标的位置和信息,故而所提算法将conv5引入目标检测网络。conv5的特征图尺寸为38×38,为能够从conv5获得更多的语义信息,文中采用膨胀卷积对conv5层特征图进行下采样,卷积核为3×3,滑动步长Stride=2,pad=2,膨胀系数dilation=2。经过膨胀卷积后conv5的特征图尺寸为19×19×512,然后将该特征图与conv11进行特征融合,获得最终用于目标检测的特征图。特征融合方式采用级联融合(concatenation fusion)方式,其具有计算量小、精度高的特点,更加适用于跳层连接融合。
2.5 模型损失函数
原SSD网络的损失函数为位置误差与置信度误差的加权和,位置损失是预测框与真实框参数之间的平滑L1损失,置信损失为softmax损失。对于SAR图像船舶目标检测,置信损失转化为softmax对船舶以及“其他”两类目标的损失函数,可用标准交叉熵损失函数表示,见公式(5),定位损失函数依然遵循原SSD网络的计算方式。
Lconf=-log(pt)
(5)
其中,pt指标签为船舶类的模型估计概率,但该方法存在不会区分难易样本的问题。在复杂背景SAR船舶目标检测样本中,陆地区域中通常会存在与船舶目标相似的干扰物影响SAR船舶目标的检测性能,由于SAR图像特殊的成像机制导致SAR船舶图像中通常存在不同严重程度的斑点噪声,同时对于密集型的多只船舶目标可能会存在相互连接,遮挡等问题,从而使得目标检测模型很难准确检测出目标。为避免复杂场景对SAR图像船舶目标检测带来的干扰,文中采用一种新的二分类损失函数作为SAR船舶目标检测的置信损失函数,见式(6)。
Lconf=-(1-pt)λlog(pt)
(6)
为调节简单样本的权重,文中在原始二分类损失函数的基础上加入新的参数λ,当λ=0时,可表示为式(5),当pt的取值愈接近于0时,-log(pt)的取值愈趋近于无穷大,表明该样本属于困难样本且容易错误分类,则当前样本的分类损失函数值将会被赋予较大的权重;当pt取值愈接近1时,表明当前样本分类错误的概率越小,样本属于简单样本且容易正确分类,同时将会被给予较小的权重。通过对比分析,将文中所提模型置信损失函数中的样本权重因子λ设置为3,权重因子λ的引入能够有效减少简单样本在模型训练过程中所占的比例。
3 实 验
3.1 实验数据集及模型训练
为验证所提模型在复杂SAR图像中船舶目标的检测情况,文中构建了一个复杂背景下的SAR船舶目标检测数据集。该数据集采用目前使用较成熟的SAR船舶目标检测数据集SSDD,SSDD中共含有1 160幅图像,平均每幅图像包含2.12条船舶[5]。实验中通过对原SSDD数据集中复杂背景SAR图像采用随机裁剪、图像旋转、翻转、平移、大小缩放等方式得到复杂背景SAR图像共计1 150幅,基于此,另行搜集了复杂背景SAR图像900幅,并选取其中部分图像对其利用传统数据增强技术进行数据扩充达1 200幅,所搜集的复杂背景SAR图像均来自于目前国内所发布的数据,且多基于Sentinel-1 SAR数据[10]。所有数据均按照VOC数据格式进行标注,共计3 250幅复杂背景SAR船舶图像,命名为SDATA(SAR data),最终按7∶2∶1的比例将数据集分为训练集、验证集及测试集。
模型训练过程中选用Adam优化器进行网络参数迭代更新,共训练200 epochs,batch_size设置为16,采用Poly机制动态调整学习率。
在模型训练过程中,正负样本的IOU阈值设定为0.5,当IOU>0.5时,为正样本;当IOU≤0.5时,为负样本。图3展示了DASSN模型与MobileNet-SSD网络模型在文中数据集训练过程中loss函数值随epoch的变化情况,可以看出,相较于MobileNet-SSD所提网络模型DASSN的收敛速度相对较快,而且DASSN网络模型的损失函数值变化曲线相对比较平缓。不难发现两种模型均在160 epochs左右损失函数值变化幅度较为明显,而在160 epochs之后,DASSN模型的损失函数变化幅度明显减小,说明此时模型性能也相对稳定,表明两种模型在文中数据集中的训练迭代次数应选取在175 epochs左右可使得模型相对比较稳定。
图3 两种网络损失函数
3.2 实验结果及分析
(1)模型性能分析。
实验过程中置信阈值的选取将会对模型检测性能产生不同的影响,为了解DASSN模型在不同置信阈值下的检测性能,分别在不同置信阈值条件下,对模型的综合指标F1-score参数进行对比分析。
在该模型中,当置信阈值取0.2时,模型F1-score取得最大值0.912,当置信阈值不断增大的时候模型综合评价指标F1-score的取值不断变小,表示模型的检测性能也在不断下降,故而为取得最好的检测性能,最终将DASSN模型的置信阈值设定为0.2。
为进一步验证文中所提改进方式对网络模型检测性能的影响,分别对模型改进过程中引入不同改进技术所生成的四个不同模型进行实验分析。
从表1分析可得,模型改进方式的提出对模型的检测性能均有所改善。MobileNet-SSD网络由于其轻量化的特点,在一定程度上损失了检测精度,因而其检测准确率只达到了78.4%。在加入通道注意力机制后,模型的检测准确率相较于MobileNet-SSD网络提升了4.8个百分点。在引入空间注意力机制后,由于模型的双注意力机制使得模型检测准确率有了较大的提升,相较于最初的MobileNet-SSD网络其检测准确率提升了9.9个百分点,其F1-score值也增长至0.897,相较于模型二提升了4.3个百分点,表明引入双注意力机制的检测效果远比引入单通道注意力机制更为明显。实验表明文中最终模型检测性能最优,其检测精度达到0.891,相较于模型三检测精度有所提升,表明引入的特征融合技术能够提升对SAR船舶目标的检测性能,相较于原MobileNet-SSD网络其检测精度提升了10.7个百分点,F1-score值也增长了10.0个百分点,表明文中网络模型对复杂背景SAR船舶目标检测性能有了很大的提升。
表1 不同改进方式对DASSN模型检测性能的影响
(2)模型改进前后实验对比。
DASSN网络模型与原SSD网络模型一致,其输入图像尺寸均为300×300。为了进一步体现文中网络对复杂背景SAR船舶目标的检测性能,实验在所提数据集SDATA上对SSD300网络及DASSN网络进行对比。图4分别为SSD300网络及DASSN网络在复杂背景SAR图像船舶目标检测的结果示意图。
(a)SSD300网络检测结果
(b)DASSN网络检测结果图4 两种网络检测结果对比
为了清晰地对两种网络结构的性能进行对比,分别从平均检测精度、查准率、查全率及F1-score四个性能指标对两种模型进行比较。
表2 模型改进前后性能对比
从表2可以看出,改进后的DASSN模型在平均检测精度上相较于SSD300网络提升了8.8个百分点,模型查准率与查全率分别提升了6.9和8.1个百分点,同时综合评价指标F1-score也提升了7.4个百分点,表明文中所提模型在复杂背景SAR图像船舶目标检测上能够较大程度地提高检测性能。
(3)与其他目标检测算法对比。
为验证文中所提算法的有效性,选取目前常用的深度学习目标检测算法Faster RCNN[11]、YOLOv3[12]及RetinaNet[13],对包括文中算法在内的四种目标检测算法均在所提复杂背景SAR船舶图像数据集上进行实验。
图5分别展示了四种不同模型对两幅SAR图像的检测情况,两幅图像均具有复杂的背景且会对SAR船舶目标检测进行干扰,可以看出除所提模型外,RetinaNet网络具有相对较好的检测性能,但其检测效果相对于所提模型仍具有一定的空间。YOLOv3作为YOLOv2[14]算法的升级版,其检测精度及检测速度都得到了一定程度的提高,但对尺寸较小的密集型船舶目标存在许多漏检情况,并且对紧密连接的船舶检测效果也不理想。所提模型虽然在检测过程中存在部分漏检的情况,但相较于其他网络的检测性能均具有明显的提升。对于密集连接的海岸船舶,由于其存在遮挡粘连等因素导致模型检测困难,但文中模型仍能够表现出较好的检测性能。
图5 不同检测模型的检测结果对比
通过查全率、查准率、F1-score以及检测速度四个方面对各个算法进行比较,其检测结果如表3所示。
表3 不同算法的检测性能对比
从表3可以看出,Faster RCNN网络具有相对较高的检测精度,但明显可以看出其检测速度具有较大的劣势,其FPS仅达到5.3;而RetinaNet相对Faster RCNN与YOLOv3具有较好的检测性能,其查准率较一阶段目标检测网络YOLOv3提升了2.9个百分点,但其检测速度相对YOLOv3有了明显的降低,相对于Faster RCNN其查准率提升了1.4个百分点,检测速度FPS也提升了11.2,但相较于文中所提模型其查准率降低了6.8个百分点,文中算法的F1-score值比其他三种算法分别提升了7.1,9.0及6.1个百分点,表明所提模型较其他三种模型在复杂背景SAR船舶目标检测数据集中表现最佳,同时值得注意的是所提模型的检测速度相较于速度最快的YOLOv3模型也提升了4.8个百分点,表明所提算法在复杂背景SAR船舶目标检测上无论是检测精度还是检测速度都得到了一定的提升,对将深度学习算法应用于实际的SAR船舶目标检测环境具有一定的推动作用。
4 结束语
针对复杂场景下SAR图像船舶目标检测问题,提出了一种具有较高检测速度和检测精度的SAR图像船舶目标检测算法,该算法具有较少的参数量,相对于原SSD网络模型更加轻量化。算法为解决复杂场景易造成干扰的问题,将结合通道注意力与空间注意力机制的双注意力模块CBAM引入网络模型,同时考虑到SAR图像中船舶目标多数尺寸较小,故而文中算法引入基于膨胀卷积的特征融合技术,在不增大输入特征图的基础上使用膨胀卷积增大感受野达到丰富特征数据的目的。最终,通过3种实验对比,验证了文中所提模型对复杂背景下SAR船舶目标检测的有效性,同时也证明了文中算法对实时性SAR应用领域具有一定的现实意义。