ICCV 2023 | 南开大学提出LSKNet:遥感旋转目标检测新SOTA
Large Selective Kernel Network for Remote Sensing Object Detection
代码链接:
最近关于遥感物体检测的研究主要集中在改进旋转包围框的表示方法上,但忽略了遥感场景中出现的独特的先验知识。这种先验知识是非常重要的,因为微小的遥感物体可能会在没有参考足够长距离背景的情况下被错误地检测出来,而不同类型的物体所要求的长距离背景可能会有所不同。
在本文中,我们将这些先验因素考虑在内,并提出了 Large Selective Kernel Network (LSKNet)。LSKNet 可以动态地调整其大空间感受野,以更好地建模遥感场景中各种物体的测距的场景。
据我们所知,这是首次在遥感物体检测领域探索大选择性卷积核机制的工作。在没有任何附加条件的情况下,我们 LSKNet 比主流检测器轻量的多,而且在多个数据集上刷新了 SOTA!HRSC2016(98.46% mAP)、DOTA-v1.0(81.64% mAP)和 FAIR1M-v1.0(47.87% mAP)。
近期很少有工作考虑到遥感图像中存在的强大的先验知识。航空图像通常是以高分辨率的鸟瞰视角拍摄的。特别是,航空图像中的大多数物体可能是小尺寸的,仅凭其外观很难识别。相反,这些物体的成功识别往往依赖于它们的背景,因为周围的环境可以提供关于它们的形状、方向和其他特征的宝贵线索。根据对主流遥感数据集的分析,我们确定了两个重要的前提条件:
LSKNet Architecture
图 3 展示了一个 LSKNet Bolck 的图示,是主干网中的一个重复块,其灵感来自 ConvNeXt, PVT-v2, VAN, Conv2Former 和 MetaFormer。每个 LSKNet 块由两个剩余子块组成:大核选择(LK Selection)子块和前馈网络(FFN)子块。LK 选择子块根据需要动态地调整网络的感受野。前馈网络子块用于通道混合和特征细化,由一个全连接层、一个深度卷积、一个 GELU 激活和第二个全连接层组成的序列。核心模块 LSK Module(图 4)被嵌入到 LK 选择子块中。它由一连串的大内核卷积和一个空间内核选择机制组成。
根据 Introduction 中所说的先验(2),建议对一系列的多个尺度的背景进行建模,以进行适应性选择。因此,我们建议通过明确地将其分解为一连串具有大的卷积核和不断扩张的 depth-wise 卷积来构建一个更大感受野的网络。其序列中第i个深度卷积的核大小 k、扩张率 d 和感受野 RF 的扩展定义如下:
核的大小和扩张率的增加确保了感受野有足够快的扩展。我们对扩张率设定了一个上限,以保证扩张卷积不会在特征图之间引入空隙。
所提出的设计有两个优点。第一,它明确地产生了具有各种大感受野的多个特征,这使得后来的内核选择更加容易。第二,顺序分解比简单地应用一个较大的核更有效更高效。为了提高网络关注检测目标的最相关的空间背景区域的能力,我们使用了一种空间选择机制,从不同尺度的大卷积核中空间选择特征图。图 4 显示了 LSK 模块的详细概念图,在这里我们直观地展示了大选择核是如何通过自适应地收集不同物体的相应大感受野而发挥作用的。
class LSKmodule(nn.Module):
def __init__(self, dim):
super().__init__()
self.conv0 = nn.Conv2d(dim, dim, 5, padding=2, groups=dim)
self.convl = nn.Conv2d(dim, dim, 7, stride=1, padding=9, groups=dim, dilation=3)
self.conv0_s = nn.Conv2d(dim, dim//2, 1)
self.conv1_s = nn.Conv2d(dim, dim//2, 1)
self.conv_squeeze = nn.Conv2d(2, 2, 7, padding=3)
self.conv_m = nn.Conv2d(dim//2, dim, 1)
def forward(self, x):
attn1 = self.conv0(x)
attn2 = self.convl(attn1)
attn1 = self.conv0_s(attn1)
attn2 = self.conv1_s(attn2)
attn = torch.cat([attn1, attn2], dim=1)
avg_attn = torch.mean(attn, dim=1, keepdim=True)
max_attn, _ = torch.max(attn, dim=1, keepdim=True)
agg = torch.cat([avg_attn, max_attn], dim=1)
sig = self.conv_squeeze(agg).sigmoid()
attn = attn1 * sig[:,0,:,:].unsqueeze(1) + attn2 * sig[:,1,:,:].unsqueeze(1)
attn = self.conv_m (attn)
return x * attn
在我们的实验中,我们报告了 HRSC2016、DOTA-v1.0 和 FAIR1M-v1.0 数据集上的检测模型结果。为了保证公平性,我们遵循与其他主流方法相同的数据集处理方法和训练方式(如 -Net, Oriented RCNN, R3Det...)。
▲ 表3. 在HRSC2016数据集上与最先进的方法比较
▲ 表6. 分解的大核的数量对推理的FPS和mAP的影响,给定的理论感受野是29。将大核分解成两个深度方向的核,实现了速度和精度的最佳表现。
▲ 表8. 对我们提出的LSK模块的空间选择中的最大和平均池化的有效性进行消融实验。在同时使用最大和平均池化时,获得了最好的结果。
▲ 图6. DOTA-v1.0中物体类别的预期感受野和GT框面积的比率:Rc。不同物体类别所需的相对范围有很大的不同。
▲ 图8. 桥梁、环岛和足球场的LSKNet-T块中的大卷积核选择差异。B i j代表第i阶段的第j个LSK Block,数值越大,表明检测时更倾向于选择有更大感受野的卷积核,对更大范围的背景的依赖性也越大。
更多阅读
#投 稿 通 道#
让你的文字被更多人看到
如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。
总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。
PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学术热点剖析、科研心得或竞赛经验讲解等。我们的目的只有一个,让知识真正流动起来。
📝 稿件基本要求:
• 文章确系个人原创作品,未曾在公开渠道发表,如为其他平台已发表或待发表的文章,请明确标注
• 稿件建议以 markdown 格式撰写,文中配图以附件形式发送,要求图片清晰,无版权问题
• PaperWeekly 尊重原作者署名权,并将为每篇被采纳的原创首发稿件,提供业内具有竞争力稿酬,具体依据文章阅读量和文章质量阶梯制结算
📬 投稿通道:
• 投稿邮箱:hr@paperweekly.site
• 来稿请备注即时联系方式(微信),以便我们在稿件选用的第一时间联系作者
• 您也可以直接添加小编微信(pwbot02)快速投稿,备注:姓名-投稿
△长按添加PaperWeekly小编
🔍
现在,在「知乎」也能找到我们了
进入知乎首页搜索「PaperWeekly」
点击「关注」订阅我们的专栏吧