杨 程,林泽南,王麒风,陈舒敏,林 晨
(1.中国船舶集团有限公司第七二三研究所,江苏 扬州 225101;2.海军装备部,北京 100084)
受益于探测器和遥感技术的不断发展,遥感图像的解释精度也在不断提高,基于深度学习的目标检测算法得以满足军事侦察、城市规划、战略部署等实际场景的应用需求,极大地推动了地球观测技术和相关目标检测方法的发展。在这些目标检测器中,特征金字塔网络(FPN)[1]作为一种简单有效的两阶段目标检测框架,通过将经过通道数降维的语义强特征从高层级向低层级传播,在卷积网络固有的特征层级上构建一个特征金字塔,来提升检测器对多尺度目标的检测能力,从而被广泛应用于光学遥感图像的检测任务中。
尽管当前学者们基于FPN提出了大量针对光学遥感舰船目标的检测方法,如Gao等人[2]提出了一种有效的训练策略,将大量仅包含陆地区域的图像作为负样本合并,使得舰船检测任务无需预先进行海陆分割,避免了分割带来的参数增加和虚警提升。Feng等人[3]在FPN中引入了一个新的序列级局部上下文模块,从而在大规模遥感图像中生成更精确的候选框,提升遥感舰船目标的检测效率。Wu等人[4]提出了一种新的从粗到细的船舶检测网络,直接实现了从图像像素到具有置信度边界框的端到端映射。然而,受制于FPN中特征金字塔在特征融合前后存在的一些设计缺陷,以及其金字塔层级和候选框大小之间启发式的映射机制,使得FPN浅层特征图对小目标特征的学习能力弱且小,目标深层语义特征与浅层空间特征不匹配,导致基于FPN的检测器在实际小目标检测任务中仍然存在检测性能不佳的问题。
本文提出了一种基于特征对齐和融合的光学遥感舰船小目标检测方法。通过在相邻层级特征图间添加权重系数,并设计一种新的自上而下的跃层连接策略,来解决浅层特征层中对小目标特征学习能力不够和小目标语义特征信息不足的问题。其次,针对相邻层级特征图中目标语义特征和空间特征不匹配的问题,将FPN原有的最近邻上采样替换为加入特征对齐模块的特征对齐上采样,进一步解决了因相邻层级特征未匹配而产生的小目标特征丢失问题。最后,在基于DOTA[5]和NWPU VHR-10[6]遥感数据构建的小目标数据集上进行了消融实验和对比实验,实验结果均验证了所提方法的有效性。
基于候选区域的两阶段目标检测算法[7-8],通常将检测任务分为分类和回归2个任务,采取先提取足够的候选框进行目标实例的分类,再对分类后候选框的位置进行预测的方法来完成检测任务。因此,为了优化检测器对小目标的识别和检测能力,设计了一种基于候选区域的小目标检测方法,其网络结构示意图如图1所示,其中包括在FPN中加入的特征融合因子、跃层连接策略和特征对齐模块。
FPN特征融合前的主要缺陷在于浅层特征图对小目标特征的学习能力不足,因此在相邻层级特征图融合时,为保证浅层特征图小目标的特征信息,在深层特征图上添加一个权重系数来控制语义特征信息的传递,从而使FPN的浅层特征图更加适应小尺寸目标的检测任务。FPN添加融合因子后,相邻层级间的特征融合如下所示:
Pi=Qouti(Qini(Ci)+αi×fup(Pi+1))
(1)
式中:Pi,i∈(2,3,4)为FPN中不同层级的特征图;Ci,i∈(2,3,4)为骨干网络中不同层级的特征图;Qout为用于处理特征图的卷积运算;Qin为特征图降维时的卷积运算;fup为用于深层特征图2倍上采样的运算;αi∈(0,1],i∈(2,3,4)为融合因子,α=1时特征融合方式与原始FPN相一致。
针对α参数设置的选择,首先,按五等分点在0到1之间取值;其次,通过实验得到该参数下小目标的检测性能,以α=1时的检测性能为基准进行对比。对比图如图2所示。
由图2可以看出,小目标检测性能随着α的增大,呈现先提升后降低的趋势,且在0.6附近取得最大值。因此,进一步采用随机搜索的方法在区间[0.4,0.8]内进行α的调优,并在α=0.5时取得最优结果。
密集连接是一种可以确保特征信息最大程度流动在网络各层之间的连接方式[9],它利用前馈式的连接方法将每一层特征映射到后续层上。因此,为了缓解FPN在特征融合后浅层特征图语义特征不足的问题,并在自上而下的金字塔路径中更好地传递深层语义特征,本文借鉴密集连接的思路设计了3种跃层连接策略,在确保模型计算量增加较小的情况下,增强FPN浅层特征层的语义特征表示,提升检测器的小目标分类性能。3种不同的跃层连接策略,其结构示意图如图3所示。
图3 3种FPN跃层连接结构示意图
跃层连接策略的设计思路延续了FPN上采样的融合策略,但与FPN不同的是,将深层特征图进行了更高倍数的上采样来与更浅层的特征图尺寸匹配,从而便于融合两者的特征信息。并且为了节省参数和计算量,延续采用了FPN特征图融合之间元素级相加,而舍弃了密集连接中合并数组的方法。
FPN在恢复图像分辨率的过程中均采用最邻近上采样法,通过在原始图像中找到一个最接近的像素点,然后将其像素值插入到上采样图像中,从而完成对原始图像的放缩。但这种方法在对特征图上采样后,特别是采用跃层连接策略后,很容易造成两幅特征图中小目标特征的不对齐,使小目标的语义或空间特征淹没在背景噪声中。如图4所示,最近邻上采样融合后,标注框内小目标的特征丢失。
图4 最近邻上采样示意图
因此,引入一个特征对齐模块,能建立特征映射之间明确的对应关系,解决特征之间的误对齐,尽可能减少小目标的深层语义特征和浅层空间特征在传递过程中的损失,其结构示意图如图5所示。
图5 特征对齐模块结构示意图
首先通过1×1卷积层将深层和浅层特征图压缩至相同的通道深度,然后将经过双线性插值上采样后的深层特征图与浅层特征图合并在一起,输入到3×3的卷积层中预测特征的偏移量:
ΔRi-1=Qpi(concat(Qi(fup(Fi)),
Qi-1(Fi-1)))
(2)
式中:Fi,Fi-1,i∈(3,4,5)分别为深层和浅层特征图;Qi,Qi-1为用于通道压缩的卷积运算;fup为用于特征图上采样的运算;Qp为用于特征偏移量预测的卷积运算;ΔRi-1∈RHi-1×Wi-1×2为预测得到的偏移场。
然后根据得到的偏移场ΔRi-1,将浅层特征图上的每一个像素点pi-1通过加法运算映射到深层特征图的像素点pi上。但此时浅层特征图和偏移场之间分辨率存在差距,因此需将偏移量缩减至一半:
(3)
式中:pi,pi-1,i∈(3,4,5)分别为特征图上对应的像素点;ΔRi-1为预测得到的特征偏移量。
最后,利用偏移场预测的双线性核权重线性内插深层特征图中pi像素点的左上、右上、右下和左下位置的像素点像素值,完成特征对齐上采样:
(4)
式中:N(pi)为深层特征图中像素点的邻接点;ωp为双线性核权重。
特征对齐模块的可视化流程图如图6所示。
由图6可见,经过特征对齐模块得到的特征图,相较于原始的FPN上采样特征图,其目标的深层语义特征能更好地收敛至浅层特征图中相对应的位置上,降低了后续小目标特征在融合过程中的丢失程度。与此同时,特征对齐也抑制了特征图中部分背景噪声,为后续小目标的识别任务提供了良好的特征基础,因此采用特征对齐模块能有效地提升小目标的检测性能。
相较于其它基于GAN或超分辨的特征增强方法,特征对齐模块的参数量和计算量都小得多,且训练较为简单稳定。其次,基于GAN的增强方法主要通过缩小舰船小目标与大目标之间的特征表示差异,来解决检测器检测舰船小目标困难的问题,从而达到增强舰船小目标特征的目的。而本文的方法侧重于通过对齐深层和浅层的小目标特征来增强浅层小目标的特征表示能力,相较于信赖GAN生成的舰船小目标特征,充分利用现有的舰船小目标特征,具有一定的可靠性和稳定性。因此通过利用特征对齐模块,将语义信息更加有效地从深层传递到浅层,能在丰富浅层舰船小目标特征语义表示的同时抑制背景噪声,从而进一步提升检测器对舰船小目标的区分能力。
本实验配置如下:基于NVIDI单卡RTX 2080Ti和Intel(R) Core(TM) i7-9700K CPU @ 3.6 GHz搭建的硬件平台,基于Ubuntu 16.04 LTS系统搭建的Pytorch软件平台。训练中,采用ResNet50-D模型作为骨干网络,总批量大小为4,学习率为0.002 5,学习策略为warm up[10],随机梯度下降优化器[11-12]的权重衰减和动量分别为0.000 1和0.9,Anchor比例为[0.5,1.0,2.0],尺度为[4,8,16,32,64],正样本阈值为0.7,负样本阈值为0.3,每个图像的候选框数量和最大预测数量均为2 000,分类和回归损失函数为交叉损失和Smooth L1损失函数[13]。
实验所用验证数据集选取DOTA和NWPU VHR-10遥感数据集作为基准,采用重新标注之前忽略的10及以下像素的DOTA v1.5和原始专家手动注释的NWPU VHR-10标注结果,选取2个原始数据集中船舶和汽车这2个尺寸实例小且数量占比大的目标实例,经过标签处理后,按3∶1∶2的比例将原始数据集划分为训练集、验证集和测试集,完成小目标数据集的构建。由于显卡内存的限制,大尺寸的遥感图像无法直接送入检测器进行训练,因此,将原始图像按步幅200裁剪成800×800的图像[12]。
2.3.1 评价指标
本文采用精准率、召回率和平均精度(AP)的检测精度为度量标准。计算公式为:
(5)
式中:P表示精确度;R表示召回率;Pt表示正类中判为正类的数量;Pt表示正类中判为负类的数量;Nf表示负类中判为正类的数量。
为方便与主流检测算法对比,采用PASCA VOC[14-15]的AP,计算方式并通过计算所有类别AP值的平均值得到mAP。
2.3.2 消融实验结果
为验证对FPN改进的有效性,在所构数据集上进行了2个消融实验,分别为3种跃层连接策略的消融对比实验和3种改进方法的消融实验,其中跃层连接策略的实验结果如表1所示。
表1 跃层连接策略的消融对比实验结果(%)
从表中可以看到,图3(a)和(c)2种跃层连接策略在FPN和FAM-FPN上均能有效提升检测器的检测精度。尤其采用FAM-FPN时,相较于原始的FPN,所提出的特征对齐模块很好地提高了小目标的检测精度,优于采用FPN的表现,其原因为跃层连接中高倍的上采样操作,加剧了层级间特征的不匹配,导致融合后浅层特征图中部分小目标的特征表示丢失。而3种跃层连接策略在FPN上的表现均逊色于在FAM-FPN中的表现,其原因是跃层连接中如果依旧采用插值算法进行深层特征图的上采样操作,会加剧层级间特征的不对齐,严重影响了浅层特征图中小目标的空间特征表示,而特征对齐模块在跃层连接中更能有效缓解这一问题。对比3种跃层连接策略的实验结果可以发现,软连接的跨层级融合策略(如图3(c))相比于密集连接的跨层级策略(如图3(a)和(b)),更适用于小目标的检测任务。因此,采用软连接的跨层级融合策略结合特征对齐模块能更好地匹配小目标不同层级间的有关特征,确保网络各层级之间小目标有关特征的流动性,且最大程度上减少了浅层特征中的小目标语义和空间特征的丢失,利于后续检测器对小目标的检测任务。为了更好地评价改进方法的小目标检测性能,也进行了3种改进方法的消融实验,实验结果如表2所示。
表2 基于特征对齐和融合的检测方法的消融实验结果(%)
从表2中可以看到,自上而下的ResNet+FPN层级间特征融合结构,一定程度能增强小目标的特征表示能力,但也存在上文中所提到的3个问题。消融实验结果表明,结构层级间融合因子、特征对齐模块和跃层连接策略3种对FPN的改进方法均在一定程度上提升了检测器的小目标检测能力,深层特征图融合权重和特征对齐模块有效缓解了FPN在融合过程中出现的深层语义特征不足和浅层空间特征模糊的问题。首先深层特征图融合权重优化了FPN层级和候选框大小之间的映射机制,使浅层特征图能更好地学习小目标的特征;其次,特征对齐模块利用特征偏移场很好地解决了FPN进行插值上采样时出现的特征不对齐的情况,从而在后续特征融合时,能更加准确且有效地将深层语义信息传递到浅层特征图中,并且跃层连接策略也能在小目标特征有限的情况下,最大程度上确保小目标语义特征能流动在网络的各层级之间。结合表1跃层连接策略有关的消融实验结果看,特征对齐模块在多倍上采样的过程中,能更好地匹配特征层级间小目标的有关特征,从而提升检测器对小目标的识别精度。消融实验结果表明,所提出的方法均有益于光学遥感小目标检测任务,各方法mAP指标相较于原先的FPN分别提升了1.1,3.85和5.79,其中3种改进方法组合的提升效果最为明显。
2.3.3 对比实验结果
为准确衡量改进后检测器的检测性能,在相同的实验条件下,将所提出的改进方法与3种主流算法进行对比,实验结果如表3所示。从精度指标的直观分析可以发现,所提出的改进方法在船舶和小型车辆实例以及mAP上均领先于其它主流检测算法,其中与Faster R-CNN[1]相比mAP提升了9.63,与基于Faster R-CNN改进的Faster R-CNN with FPN[16]相比mAP提升了5.79,相较于更适用于较小目标的SCRDet[17]检测方法mAP提升了1.69。实验结果验证了所提改进模型在小目标检测任务中良好的检测性能。
表3 性能对比实验结果(%)
2.3.4 实验结果可视化
改进的检测器在验证数据集上的部分检测结果如图7所示。从图中可以看到,所提改进方法在光学遥感图像上能够比较全面且准确地识别出船舶和汽车实例,尤其是船舶实例,在其密集或者稀疏分布于港口或海面时,均能被改进的算法识别检测到。
本文主要针对目前基于FPN改进的光学遥感舰船小目标检测方法所存在的浅层特征层对小目标特征的学习能力不够、浅层小目标语义特征信息不足和层级内小目标有关特征不匹配的问题,进行了深入分析,提出了基于特征对齐和融合的小目标检测方法,采用层级间特征融合因子、特征对齐和跃层连接的改进方法,有效提升了检测器的小目标检测性能。在以DOTA和NWPU VHR-10数据集为基准构建的小目标检测数据集上对所提改进方法的有效性进行了验证,并与其它3种主流算法对比,实验结果表明,本文所提出的方法在光学遥感图像的检测任务中能更好地检测出舰船小目标实例。