即插即用系列 | CVPR 2024 ABC-Attention:基于双线性相关注意力的红外小目标检测

论文名称:ABC: Attention with Bilinear Correlation for Infrared Small Target Detection

论文原文 (Paper)https://arxiv.org/abs/2303.10321
代码 (code)https://github.com/PANPEIWEN/ABC


GitHub 仓库链接(包含论文解读及即插即用代码)https://github.com/AITricks/AITricks
哔哩哔哩视频讲解https://space.bilibili.com/57394501?spm_id_from=333.337.0.0

目录

      • [1. 核心思想](#1. 核心思想)
      • [2. 背景与动机](#2. 背景与动机)
      • [3. 主要贡献点](#3. 主要贡献点)
      • [4. 方法细节](#4. 方法细节)
      • [5. 即插即用模块的作用](#5. 即插即用模块的作用)
      • [6. 实验结果与分析](#6. 实验结果与分析)
      • [7. 获取即插即用代码关注 【AI即插即用】](#7. 获取即插即用代码关注 【AI即插即用】)

1. 核心思想

本文提出了一种名为 ABC (Attention with Bilinear Correlation) 的新模型,专用于红外小目标检测 (ISTD)。其核心思想是深度融合 卷积神经网络 (CNN) 的局部归纳偏置 与 Transformer 的全局相关性建模能力。为了解决 CNN 感受野受限(易受噪声干扰)和 Transformer 缺乏局部感知(难以检测特征稀少的小目标)的难题,ABC 引入了两个关键创新:

  1. CLFT (卷积线性融合 Transformer) :一个混合模块,它使用一个新颖的双线性注意力模块 (BAM) 来计算全局空间相关性,并将其与一个由(标准/空洞)卷积构成的"局部特征池"相乘,从而在增强真实目标的同时高效抑制噪声
  2. UCDC (U 型卷积-空洞卷积) :一个专为网络深层(低分辨率)设计的 U 型模块,它利用动态变化的感受野 (先扩大后缩小)来精细化处理已被 CLFT 模块增强的目标特征。

2. 背景与动机

  • 红外小目标检测 (ISTD) 任务本身极具挑战性,主要因为:1) 目标尺寸小 、像素占比低;2) 目标信号弱 、对比度低,极易淹没在背景杂波和传感器噪声中;3) 目标特征稀疏,缺乏清晰的轮廓和纹理。

    现有的深度学习方法在该任务上存在两大瓶颈:

    1. 基于 CNN 的方法 (如 U-Net) :受限于卷积的局部感受野 ,缺乏全局信息感知能力。这导致模型很难区分"真实的稀疏小目标"和"外观相似的强噪声/杂波",从而产生大量的虚警 (False Alarms) 。此外,连续的下采样操作(如池化)极易导致微小的目标信息在网络深层被彻底丢失且不可逆转
    2. 基于 Transformer 的方法:虽然拥有强大的全局特征表征能力,但 Transformer 缺乏 CNN 的"卷积归纳偏置"(即对局部空间关系的先验)。对于特征极度稀疏、几乎没有上下文信息的红外小目标,纯 Transformer 很难学习到有效的特征,导致检测效果不佳。

    本文的动机 :设计一个混合架构,既能利用 CNN 强大的局部特征提取能力,又能利用 Transformer 的全局感知能力,实现"去伪存真"------即全局抑制噪声、局部增强目标,并解决深层网络中的目标丢失问题。

  • 动机图解分析(Figure 1):

    • 图表 A (Figure 1):模块效果的可视化对比

    • "看图说话": 这组图完美地展示了 ABC 解决"虚警"问题的动机和流程。

    • 分析:

      1. 原图(第一张): 展示了任务的挑战性。图中有一个真实目标(红框)和一个外观相似的强噪声(黄框)。
      2. ConvModule 之后(第二张): 这是传统 CNN 的问题所在。经过一层标准卷积后,真实目标(红框)和噪声(黄框)都被激活了。这直观地表明,仅靠局部特征,CNN 无法区分它们,这是导致虚警的根源。
      3. CLFT 之后(第三张): 这是 ABC 的核心解决方案。经过 CLFT 模块处理后,噪声(黄框区域)的特征响应被显著抑制 ("suppress"),而真实目标(红框)的特征得到保留和增强。这证明了 CLFT 模块的全局-局部融合机制能有效区分"全局相关的目标"和"局部孤立的噪声"。
      4. UCDC 之后(第四张): 在噪声被抑制后,UCDC 模块对干净的目标特征进行精细化处理 ("refine"),使其轮廓更清晰,为最终的精确分割做准备。
    • 结论: Figure 1 清晰地表明,ABC 的设计(特别是 CLFT)是为了解决 CNN 无法区分目标与噪声这一核心痛点,通过引入全局注意力来抑制虚警。

3. 主要贡献点

  1. 提出 CLFT 模块 (Convolution Linear Fusion Transformer):

    • 这是一个基于 Transformer 架构重新设计的局部-全局特征融合模块。它彻底抛弃了标准 Transformer 中 QKV 自注意力的复杂计算,转而设计了两个并行的分支:一个"局部特征"分支和一个"全局注意力"分支。
    • "局部特征"分支(即 value)由多个并行的标准卷积和空洞卷积 (D.C.) 构成,用于提取丰富且多尺度的局部纹理和上下文信息。
    • "全局注意力"分支(即 attention)通过新颖的 BAM 模块计算得出。
    • 两个分支的结果相乘,使得模型只放大那些**同时具有"强局部响应"和"高全局相关性"**的特征(即真实目标),而抑制那些只有局部响应的特征(即噪声)。如 Ablation Study (Table III) 所示,单独使用任一分支的效果都不如二者结合。
  2. 提出 BAM 模块 (Bilinear Attention Module):

    • 这是 CLFT 内部的核心,是"全局注意力"的来源。它是一种高效的空间相关性计算机制。
    • 与标准自注意力计算 ( H W × C ) (HW \times C) (HW×C) 维度的特征相关性不同,BAM 通过两个点卷积 (PW Conv) 和全连接层 (FC) 将输入特征分别压缩成 query ( H × 1 H \times 1 H×1) 和 key ( 1 × H 1 \times H 1×H) 两个向量。
    • 通过 q × k q \times k q×k 的双线性乘法 (Bilinear) ,BAM 能以极低的计算量生成一个 H × H H \times H H×H 的注意力矩阵。这个矩阵直接建模了图像行与列之间的空间相关性,非常适合定位在空间上稀疏的单个小目标。
  3. 提出 UCDC 模块 (U-shaped Convolution-Dilated Convolution):

    • 这是一个专为网络**最深层(Bottleneck)**设计的特征精炼模块。当特征图分辨率最低时,目标极小,但标准卷积的感受野相对又很大。
    • UCDC 采用一个包含 5 层的 U 型结构(Conv → \rightarrow → D.C.(r=2) → \rightarrow → D.C.(r=4) → \rightarrow → D.C.(r=2) → \rightarrow → Conv),并辅以内部跳跃连接。
    • 这种先扩大再缩小 的感受野设计,使得模块能首先在更大的范围内(D.C.(r=4))过滤目标周围的残余噪声,然后再(D.C.(r=2)Conv)聚焦于目标本身,进行精细化的特征提取。

4. 方法细节

  • 整体网络架构(Figure 2):

    • 模型名称: ABC (Attention with Bilinear Correlation)
    • 架构: 整体为 U-Net 形态的编码器-解码器结构。
    • 编码器 (Encoder):
      1. 输入图像首先进入一个 ConvModule(含两层标准卷积)。如 Model Design (Table VI) 实验所示,这一步至关重要,它对原始图像进行初步的特征提取和降噪,避免 CLFT 模块被原始图像的复杂噪声直接干扰。
      2. 然后,特征图连续经过三个 CLFT 模块,并在每个模块后进行 2 倍下采样。
    • 过渡层 (Bottleneck): 编码器的最深层输出( H 16 × W 16 \frac{H}{16} \times \frac{W}{16} 16H×16W)被送入一个 UCDC 模块进行特征精炼。
    • 解码器 (Decoder):
      1. 解码器的第一层(最低分辨率)使用第二个 UCDC 模块,接收来自 Bottleneck 和编码器对应层(通过跳跃连接)的特征。
      2. 之后的解码层(三层)均使用 ConvModule 模块。
      3. 每一层都通过上采样恢复分辨率,并与编码器的跳跃连接特征相加。
    • 输出头 (Blend): 最后一个 ConvModule 的输出( H × W × C H \times W \times C H×W×C)经过一个 1 × 1 1 \times 1 1×1 卷积(Blend)生成最终的 H × W × 1 H \times W \times 1 H×W×1 分割图。
  • 核心创新模块详解(Figure 2):

    • 对于 CLFT 模块 (Convolution Linear Fusion Transformer):

      • 理念: 重新设计 Transformer 块,使其明确地分离和融合"局部值 (Value)"和"全局注意力 (Attention)"。
      • 机制 (数据流): 模块的输出由三部分相加(见 Eq. 3):原始输入 I I I(残差连接)、局部特征 v v v、以及加权的全局特征 α O a t t e n t i o n \alpha O_{attention} αOattention。
      • 1. 局部特征 v v v (Value) 的生成:
        • 输入 I I I 同时进入一个并行的卷积池
        • 根据图示,这个池包含多个标准 Conv 和多个 Dilated Conv (D.C.),其空洞率 (dilation rate) 分别为 2, 4, 2。
        • 所有这些卷积分支的输出相加 ,生成一个包含了丰富多尺度局部信息的 v v v 矩阵 (Eq. 2)。
      • 2. 全局特征 O a t t e n t i o n O_{attention} Oattention 的生成:
        • 这一步由 value ( v v v) 和 attention 矩阵相乘得到 (Eq. 2)。
        • attention 矩阵本身由 BAM 模块生成。
    • 对于 BAM 模块 (Bilinear Attention Module):

      • 理念: 传统自注意力的 O ( N 2 C 2 ) O(N^2C^2) O(N2C2) 复杂度太高。BAM 设计了一种极其高效的 O ( H × W ) O(H \times W) O(H×W) 方式来计算空间相关性
      • 机制 (数据流):
        1. 输入特征 I I I ( H × W × C H \times W \times C H×W×C) 分别通过两个 1 × 1 1 \times 1 1×1 的 PW Conv (点卷积),均输出 1 个通道,得到 I 1 I_1 I1 和 I 2 I_2 I2( H × W × 1 H \times W \times 1 H×W×1)。
        2. I 1 I_1 I1 (作为 query 基) 和 I 2 I_2 I2 (作为 key 基) 被 reshape 为 ( H W ) × 1 (HW) \times 1 (HW)×1 的长向量。
        3. query 向量被送入一个 FC (全连接) 层,将其维度从 H W HW HW 压缩到 H H H,并重塑为 q q q ( H × 1 H \times 1 H×1)。
        4. key 向量被送入另一个 FC 层,将其维度从 H W HW HW 压缩到 W W W (图中误标为 H H H,但 1 × H 1 \times H 1×H 的形态是正确的),并重塑为 k k k ( 1 × H 1 \times H 1×H)。
        5. 执行 q × k q \times k q×k 双线性乘法 ,得到一个 H × H H \times H H×H 的矩阵,该矩阵代表了图像中任意两行 (q) 与两列 (k) 之间的相关性
        6. 该 H × H H \times H H×H 矩阵经过一个 PW Conv (升维到 C C C 通道) 和 Softmax,生成最终的 H × H × C H \times H \times C H×H×C attention 矩阵。
      • 总结: CLFT 模块通过 BAM 提供的全局空间注意力,去"筛选"由卷积池提供的丰富局部特征,实现了"去伪存真"。
    • 对于 UCDC 模块 (U-shaped Convolution-Dilated Convolution):

      • 理念: 在网络的最深层(分辨率最低、感受野最大时)对特征进行精细化处理。
      • 机制 (数据流):
        1. 输入特征首先通过一个 Conv 层。
        2. 然后进入 U 型结构的"下降"部分:D.C.(r=2)D.C.(r=4),感受野逐层扩大,用于捕获目标周围的上下文并过滤残余噪声。
        3. 然后进入"上升"部分:D.C.(r=2)Conv,感受野逐层缩小,用于重新聚焦目标本身,精炼其特征。
        4. 内部跳跃连接 :U 型结构内部(Conv ↔ \leftrightarrow ↔ Conv, D.C.(r=2) ↔ \leftrightarrow ↔ D.C.(r=2)) 使用了残差连接,确保在感受野变换过程中信息不会丢失。
  • 图解总结:

    • Figure 1 提出了核心问题:标准 ConvModule (图 1-2) 无法区分噪声(黄框)和目标(红框),导致虚警。
    • Figure 2 (CLFT) 提供了解决方案:CLFT 模块 (图 1-3) 利用 BAM 的全局视野,识别出黄框是孤立噪声并将其抑制
    • Figure 2 (UCDC) 提供了精炼方案:UCDC 模块 (图 1-4) 接收 CLFT 传递来的"干净"特征,并利用其 U 型空洞卷积结构对目标进行精细化描绘。
    • 这套流程(粗提 → \rightarrow → 去噪 → \rightarrow → 精炼)完美地解决了红外小目标检测中的核心挑战。

5. 即插即用模块的作用

本文的两个核心创新 CLFTUCDC 均可作为即插即用的模块,在其他网络和任务中发挥作用:

  • CLFT 模块:

    • 适用场景 1:高噪声/强杂波环境下的目标检测与分割。
    • 具体应用: 在任何 U-Net 或其他分割网络的编码器 中,用 CLFT 模块替换标准的 Conv 块或 Transformer 块。如 Figure 1 和 Table III 所示,CLFT 强大的"局部-全局"融合能力使其成为一个卓越的噪声抑制器目标增强器
    • 适用场景 2:需要融合局部纹理和全局上下文的任务。
    • 具体应用: 例如在医学影像(病灶 vs. 伪影)或遥感影像(小型人造物 vs. 自然杂波)中,CLFT 可以帮助模型区分"长得像但不是"的干扰物。
  • UCDC 模块:

    • 适用场景 1:U-Net 架构的性能瓶颈------Bottleneck。
    • 具体应用: 在任何 U-Net 架构中(用于分割、去噪等),用一个 UCDC 模块替换掉 Bottleneck 处堆叠的 2-3 个标准 Conv。UCDC 的 U 型空洞卷积结构能在此处(最低分辨率)进行更有效的多尺度特征处理和精炼,而不是简单地堆叠卷积。
    • 适用场景 2:深层特征的精细化处理。
    • 具体应用: 在解码器中,尤其是在处理已被编码器高度压缩的特征时(如 Table IV 和 Table VII 所示),UCDC 模块比标准 ConvModule 更能胜任特征的精细恢复和噪声过滤。

6. 实验结果与分析

定量评估 (Quantitative Results) 我们在 NUAA、IRSTD1k、SIRSTAUG 和 NUDT 四个公共数据集上进行了广泛的实验 。结果表明,ABC 模型在 IoU、nIoU 和 F1 分数这三个评价指标上均优于现有的 SOTA 方法(包括 CNN 基方法和 Transformer 基方法) 。特别是在最具挑战性的 IRSTD1k 数据集上,ABC 的 IoU、nIoU 和 F1 分别比第二名高出 3.15%、1.28% 和 2.09

到此,所有的内容就基本讲完了。如果觉得这篇文章对你有用,记得点赞、收藏并分享给你的小伙伴们哦😄。

7. 获取即插即用代码关注 【AI即插即用】

相关推荐
AI即插即用1 小时前
即插即用系列 | WACV 2025 SvANet:专为极小目标(<1%)设计的尺度变化注意力网络,医学图像分割新SOTA!
人工智能·深度学习·神经网络·目标检测·计算机视觉·cnn·视觉检测
秋邱1 小时前
AR + 离线 AI 实战:YOLOv9+TensorFlow Lite 实现移动端垃圾分类识别
开发语言·前端·数据库·人工智能·python·html
源于花海1 小时前
昇腾Catlass的算子优化:Transformer中小批量矩阵乘法优化与性能提升实践
深度学习
Sheffi661 小时前
大语言模型 (LLM) 在 App 中的集成方式
人工智能·语言模型·自然语言处理
Swift社区1 小时前
在 Swift 中使用 Image Playground 生成 AI 图像:完整实战指南
开发语言·人工智能·swift
得贤招聘官1 小时前
AI 时代 HR 的进化与工具赋能
人工智能
源于花海1 小时前
PyTorch模型轻松迁移昇腾平台:BERT优化与RoPE自定义算子实战
深度学习
聆风吟º1 小时前
openEuler 开源操作系统测试实战:搭建本地AI问答工具
人工智能·ai·开源·openeuler·ollama
低调小一1 小时前
从聊天记录到单一 Prompt:搞懂 Messages、Chat Templates、Special Tokens
人工智能·prompt