Sw-YoloX An anchor-free detector based transformer for sea surface object detection

发布时间 2023-12-19 11:59:17作者: Lorenzo不爱吃香菜

Sw-YoloX An anchor-free detector based transformer for sea surface object detection

基于Transformer用于海上目标检测的无锚检测器:Sw-YoloX

1)由于不同海洋状态下的活体和漂浮物体数据稀缺且昂贵,我们基于2022年1月至3月在中国厦门的实际海面测量,构建了XM-10000基准数据集。
2)为了在高分辨率海面图像中寻找注意区域,我们使用swin变压器(Liu etal.,2021a)作为SwYoloX的主干。利用其全局信息建模能力,解决了物体姿态的不确定性难题。
3)为了解决目标尺度的不确定性,我们使用了YoloX的解耦头和SimOTA正样本分配策略(Ge et al.,2021),通过无锚机制消除了先验,从而提高了变压器的预测潜力。
4)为了提高特征融合阶段对象语义信息传递的效率,我们添加了ASPP(Chen等人,2017)和CBAM Woo等人。(2018)模块到Sw-YoloX的颈部。5)为了进一步提高检测器的性能,我们使用了一些启发式的训练策略,以相对较小的成本提高了检测器的泛化能力。


此外,为了防止检测器在训练过程中出现过拟合,我们对原始数据集进行了数据增强。如果简单地应用随机翻转和旋转等普通方法,对检测器精度的提高是有限的。为了解决上述问题,我们结合了四种有效的数据增强方法,即镶嵌、混合、光度畸变和随机仿射,如图所示。2 . 马赛克是一种改进版的混合剪辑,它可以缝合和旋转四幅图像,大大地丰富了背景信息,有效地增加了图像中有效像素的数量。混合使探测器明显更抗雾化背景和噪音干涉光度失真可以通过调整色调和饱和度来模拟不同的天气条件。随机仿射可以扩展表面物体的不同姿态。

使用CNN和Transformer的组合,使用Swin Transformer 作为检测器的主干,使用CNN作为检测器的头部

使用Swin Transformer 作为Sw-Yolox检测器的主干

在进入舞台块之前,图像被补丁分区结构降采样为4×4大小的标记。补丁分区由切片操作、层归一化和全连接层组成。每个阶段包含一个补丁合并操作和几个双变压器块。每个swin变压器块分别使用windows多头自注意(W-MSA)和移位窗口多头自注意(SW-MSA)来计算局部自注意,并分别生成不同比例的令牌。它包括层范数(LN)、多层感知(MLP)、多头自我注意和残差连接。残余结构用于解决深度变压器的简并度,通过允许网络只关注当前训练的变化部分。LN用于校准数据分布,便于训练。MLP可以通过非线性映射来增强检测器的表达能力。大范围的信息通过局部自注意模块进行转换,计算结果如下所示:

使用Swin Transformer 作为Sw-Yolox检测器的neck


整个结构被设计为对swin变压器输出的特征层进行深度融合。为了提高小目标的检测精度,减少参数的数量,本文对尺度最大的两个特征层进行了融合。然后,我们遵循YoloX的路径聚合网络(Liu et al.,2018),在上采样和下采样之前添加了CBAM轻量级模块,它由两个独立的子模块组成:通道注意模块(CAM)和空间注意模块(SAM)。

CBAM的无缝集成使探测器能够自适应地调整特征的融合权值,突出海面物体的有效特征,衰减传感器噪声和其他混乱信息的影响。此外,我们在最后一个阶段的输出后添加了ASPP结构,并一起进行端到端训练。


ASPP如图所示我们通过四个平行的分支获得了不同的感受野的特征。中间的两个分支使用无卷积,展开因子分别为3和6。来自四个分支的信息通过连接和1×1卷积进一步融合。每个1×1的卷积可以解释为每个通道的加权特征融合。随后的实验表明,ASPP可以有效地提高探测器获得多尺度上下文的能力。然而,过多的ASPP结构可能会导致模型复杂性的增加,从而导致推理变慢,所以我们只在最后一个阶段的输出上对ASPP结构进行字符串处理。

使用Yolox作为检测器的基线

YoloX集成了业界最先进的检测技术,并在性能方面优于大多数探测器。因此,我们选择了YoloX的解耦头和SimOTA策略,结合swin变压器,结合最适合海面目标检测的探测器。传统的检测器将分类任务、回归任务和置信度值一起输出,但实际上,这三者在原则上是完全不同的。分别预测这三种情况将会显著提高检测精度。本文中使用的头部如图所示。9 .
我们将颈部的输出连接到三个解耦的头部,每个头部都有两个分支,用于分类任务和回归任务各自地在回归任务的分支上,还包括了对象的置信度输出。回归任务输出的四个值分别是左上角的坐标和地面真值框的长度和宽度值。同时,有效的正样本选择方法和基于无锚点的损失计算方法可以更好地适应对物体大小不确定的海面物体的探测任务。整个SimOTA分配策略分为4个步骤,如图所示。

1)生成一个阳性样本候选区域。以当前GT盒的质心为中心,创建一个具有网格单元长度2.5倍的黄色方形盒子。如果网格单元格的中心点在蓝色框和黄色框内,则网格单元格属于阳性样本候选区域,即红框内的所有网格单元格。
2)用当前的GT盒计算阳性样本候选区域内每个预测盒的IoU,并将得到的IoU值从最小到最大进行排序。将顶部的candidate_K IoU值求和并记为dynamic_k。
3)计算每个预测箱和当前GT箱的成本值,得到成本矩阵。该矩阵表示当前GT箱和预测箱之间的成本关系。通过成本矩阵,检测器可以自适应地找到每个GT盒的正样本。其计算公式如下:

4)将成本矩阵的值按升序排列。以成本值最小的第一个dynamic_k预测盒作为当前GT盒的最终正样本,其余的预测盒作为负样本。

Training strategies

为了进一步提高检测器的性能,除了使用多数据增强外,我们还结合了多尺度训练、超参数调优和多模型集成,以相对较小的成本提高了检测器的泛化能力。实验结果表明,这些启发式训练策略可以有效地提高检测器对成像背景剧烈变化的适应性和困难类别的分类性能。
用于多模型集成的自训练分类器。我们在实践中部署了在XM-10000基准数据集上训练的Sw-YoloX,发现该检测器虽然具有良好的定位能力,但在分类方面较差。随后,我们可视化了归一化的混淆矩阵,如图所示。11,观察到浮动物体和生命的分类精度低是探测器整体性能的关键。为了提高困难样本的分类精度,我们提出了另一种包含背景类别的自训练分类器。我们通过裁剪真实的边界框,将每个图像块调整大小并填充到64×64来构建训练集,并选择ResNet34(He et al.,2016)作为分类器。如图所示。11,在自训练分类器的帮助下,我们的检测器在验证集上的AP值提高了约0.9 %到1.1 %。
培训细节。本文基于Xm-10000基准数据集的足够样本,将训练集、验证集和测试集的比例划分为8:1:1。由于swin变压器难以训练,我们通过加载预先训练的权重来初始化主干,其他卷积层使用Kamin分布随机初始化(Heet al.,2015)。在前五个时代,检测器对数据分布的了解为零,如果直接应用预设的学习率,就会使模型不稳定,甚至过拟合。因此,我们在前5个时代使用预热学习速率调度策略,以防止梯度优化路线的移动。在过去的五个时代中,检测器学习到的数据的属性趋于稳定,如果同时使用更大的学习速率,这种稳定性就会被破坏。为了进一步接近目标函数的最优点,我们在最后5个时期采用了基于余弦退火的学习速率调度策略。此外,我们对Sw-YoloX进行多尺度训练。e.将由数据加载器生成的每个批处理缩放到其原始大小的1.0、0.83和0.67倍。对于对照组内的不同探测器,我们进行了相同的多尺度测试。