【论文阅读笔记】CamoFormer: Masked Separable Attention for Camouflaged Object Detection

1.论文介绍

CamoFormer: Masked Separable Attention for Camouflaged Object Detection

CamoFormer:用于隐藏目标检测的掩蔽可分离注意力

TPAMI 2024
Paper Code

2.摘要

如何从背景中识别和分割隐藏的对象是一个挑战。受transformer中多头自注意的启发,提出了一种简单的掩蔽可分离注意(MSA)伪装目标检测算法。我们首先将多头自注意力分为三个部分,分别负责使用不同的掩模策略将被遮挡的物体从背景中区分出来。此外,我们建议捕获高分辨率的语义表示逐步基于一个简单的自上而下的解码器与MSA,以达到精确的分割结果。这些结构加上骨干编码器形成了一个新的模型,称为CamoFormer。

**Keywords:**隐藏目标检测,自注意,掩蔽可分离注意,自顶向下解码器

3.Introduction

之前只关注局部特征进行点级细化,而忽略了在前景和背景特征之间建立交互的重要性。在本文中,提出了掩蔽可分离注意力(MSA),它考虑了从一个新的角度编码的方式,隐藏的对象和背景特征。MSA是建立在多头自注意机制,但不像传统的方法,利用多个注意头只是为了增强特征表示,我们建议利用不同的注意头来计算不同区域的像素相关性。具体来说,将自注意力头分为三组。首先使用两组头部来独立地计算前景和背景区域的像素相关性。我们的目标是使用由预测头生成的预测前景内构建的注意力分数来索引来自全值表示的隐藏对象,并且对于背景也是如此。此外,我们保留了一组正常的注意力头,用于计算全局的像素相关性,这可以帮助从全局视图中区分被隐藏的对象。因此,三组头部是互补的。

给定所提出的MSA,我们将其应用于编码器解码器架构以逐步细化分割图。在解码器的每个特征级别,预测分割图并将其发送到MSA块以提高预测质量。这种渐进的细化过程使我们能够随着特征分辨率的增加获得高质量的图像对象预测。

  • 提出了一种利用不同的自我注意头来计算不同区域的视觉相似度,同时显式地模拟前景和背景之间的全局依赖关系的掩蔽可分离注意方法(MSA)。
  • 我们提出了一种新的网络体系结构,称为CamoFormer,其中构建了一条自上而下的路径,以充分利用我们的MSA的潜力。实验结果表明,我们的方法取得了比以往工作更好的性能。
  • 提出了两个新的简单度量来评估伪装目标检测模型在边界区域上的性能,结果表明我们的方法在处理边界区域方面具有更好的性能。

4.网络结构详解


编码器。默认情况下,采用PVTv2作为编码器,因为Vision Transformer在二进制分割任务中表现出了出色的性能。给定一幅输入图像I ∈ RH×W×3,将其送入编码器,从四个阶段生成多尺度特征图,记为{Ei}4 i=1。因此,E1的空间大小为H/4 × W/4,E4的空间大小为H/32 × W/32。然后,聚合来自编码器的最后三个阶段的特征,并将它们发送到卷积块,从而产生具有更高级语义的表示E5。

解码器 。解码器是建立在编码器之上的。将来自编码器的多级语义特征{Ei} 5i =1馈送到解码器。为了在效率和性能之间实现更好的折衷,首先将Cd = 128个通道的1 × 1卷积连接到每个级别的特征图。如图所示,采用渐进的方式从编码器的顶部细化特征。在每个特征层次上,使用掩蔽的可分离注意力(MSA)来更好地区分伪装目标和背景。在渐进式融合的初始级中,聚集特征D4可以写为:

其中Fup(·)是用于形状匹配的双线性上采样操作。在以下级别中的聚合特征{Di}3 i=1可以被定义为:

与使用加法运算或级联运算来融合来自不同特征级别的特征不同,本文首先计算它们之间的元素乘积,然后使用求和运算。

损失函数 。在每个feature级别添加了监督。将CamoFormer的解码器生成的预测表示为{Pi} 5i =1。除了最终预测图P1之外,所有其它预测图Pi在MSA中被用于如上所述的渐进细化。在训练过程中,每个Pi被重新缩放到与输入图像相同的大小,并且它们都由BCE损失和IoU损失来监督。总损失是多级损失的总和。CamoFormer的总损耗可以用公式表示如下:

掩码可分离注意力Masked Separable Attention

隐藏目标检测是不同的规模和高度相似的背景,这使得他们很难完全分割。如何从背景中准确地识别出隐藏的物体是至关重要的。本文通过提出掩蔽可分离注意力(MSA)来解决这个问题,其中不同的注意力负责不同的功能。打算使用部分注意力头分别计算预测的前景和背景区域的注意力分数,并使用它们来更好地识别隐藏的对象。MSA基于自注意力的修改版本以节省计算,即Multi-Dconv Head Transposed Attention,我们将其简称为TA。给定输入X ∈ RHW×C,其中H和W分别是高度和宽度,而C是通道数,TA可以用公式表示为:

其中Q、K、V是查询矩阵、键矩阵和值矩阵,它们可以通过使用三个单独的1×1卷积以及随后的3 × 3深度卷积来生成,α是可学习的缩放参数。在实际使用中,上述公式也可以扩展到多头版本,如在原始的自注意力中所做的那样,以扩充特征表示。

掩码的可分离注意 。上述TA中的注意头同样用于对空间信息进行编码。与此不同的是,在MSA中,提出了在TA中引入一个可以在每个特征水平上生成的预测掩模作为前景-背景对比先验,以更好地识别伪装目标。为了实现这一点,将所有的注意力头部分为三组:前景头部TA(F-TA),背景头部TA(B-TA)和正常TA。MSA的结构细节如图所示。

这里的attention是基于卷积层实现的注意力。输入的特征先经过归一化,然后分别经过卷积得到qkv,把mask点乘到qk上,最后用注意力公式计算出结果。

具体地,给定预测的前景掩模MF,F-TA的公式可以写为:

其中QF、KF是掩码查询和键矩阵,可以通过将它们与MF相乘来产生,VF是没有掩码的值矩阵。以这种方式,可以通过在前景区域内建立成对关系来细化特征,从而避免可能包含污染信息的背景的影响。类似地,通过广播减法MB = 1-MF给定背景掩模,我们也可以对背景进行该过程。因此,B-TA的公式可以写为:

除了F-TA头和B-TA头之外,第三组头保持不变,用于建立前景和背景之间的关系。

然后将所有磁头的输出连接并发送到3 × 3卷积中进行特征聚合,并将通道数映射到Cd:

掩码生成。在每个特征级,掩模应通过3 × 3卷积和Sigmoid函数生成,然后用于MSA。由于监督被添加到每个特征级别,因此我们直接使用预测{Pi}5 i=2作为掩码,并将它们中的每一个发送到对应的MSA。注意,我们不对预测图进行二值化,而是将它们保持为范围从0到1的连续图。

这里其实就是以PVTv2编码器,出来四层特征,其中把高层特征2、3、4 cat到一起,然后卷积,就可以得到高级特征E5,然后再卷积得到P5(一层输出)。对于其他层而言,每层都加上一层的输出特征、当前层的编码器输出和上一层的预测结果入MSA(Di+1,Ei,Pi+1)得到Di,再卷积得到预测结果Pi。(对于D4没有D5,就用E5)。

对于MSA:前景头:输入上一层的处理后的特征和上一层的预测结果;背景头:输入上一层的处理后的特征和(1-上一层的预测结果);正常头就输入上一层的处理后的特征自己。

第二层的P2是最终的预测结果

5.结果与分析


这个模型设计了多个注意力头,分别应对于前景与背景和正常的自注意力,这应该就是创新之处了,它说还有设计了新的边界衡量指标,这个没有仔细看

相关推荐
maknul19 分钟前
【学习笔记】AD智能PDF导出(装配文件)
笔记·学习·pdf
pq113_61 小时前
ftdi_sio应用学习笔记 4 - I2C
笔记·学习·linux驱动·ftdi_sio
快乐飒男2 小时前
Linux基础05
linux·笔记·学习
田梓燊3 小时前
湘潭大学软件工程算法设计与分析考试复习笔记(六)
笔记·算法·软件工程
网安墨雨3 小时前
网络安全笔记
网络·笔记·web安全
南东山人3 小时前
关于内核编程的一些笔记
linux·笔记
重生之Java开发工程师3 小时前
算法笔记:前缀和
笔记·算法
漆黑的莫莫4 小时前
经验笔记:git checkout 与 git switch
笔记·git
小小逆向4 小时前
[SWPUCTF 2021 新生赛]老鼠走迷宫
笔记
俸涛努力学前端5 小时前
ajax (一)
开发语言·前端·javascript·笔记·ajax