[论文阅读] Transformer Transforms Salient Object Detection and Camouflaged Object Detection

论文地址:https://arxiv.org/abs/2104.10127
代码:https://github.com/fupiao1998/TrasformerSOD
发表于:Arxiv 2021.04

Abstract

源自机器翻译的transformer网络尤其擅长在长序列中建模远程依赖。 目前,transformer网络在各种视觉任务上取得了革命性的进展,从高级分类任务到低级密集预测任务。 本文主要研究Transformer网络在显著目标检测(SOD)中的应用。 具体来说,我们在统一框架内采用密集transformer主干(dense transformer backbone)进行基于全监督RGB图像的SOD、基于RGB-D图像对的SOD以及基于弱监督的SOD,基于transformer主干可以提供准确的结构建模, 这使得它在学习结构信息较少的弱标签时非常强大。 此外,我们发现vision transformer架构并没有提供直接的空间监督,而是将位置编码为一个特征。 因此,我们研究了两种策略通过我们统一框架中的transformer层提供更强的空间监督,即deep supervision和difficulty-aware learning。 我们发现,deep supervision可以使梯度回到更高层次的特征,从而使得在同一语义对象内做到统一激活。 另一方面,difficulty-aware learning能够识别hard pixel,从而实现有效的hard negative mining。 对传统backbone与transformer backbone在SOD上finetune前后的特征进行可视化,发现transformer backbone在较低层次特征和较高层次特征中分别编码了更准确的对象结构信息和更清晰的语义信息。 作为扩展,我们还将我们的模型应用于伪装目标检测(COD),并获得与上述三个SOD相关任务相似的观测结果。 在各种SOD和COD任务上的大量实验结果表明,transformer网络可以改变显著目标检测和伪装目标检测,为每个相关任务提供新的基准。 源代码和实验结果可以在我们的项目页面https://github.com/fupiao1998/TrasformerSOD找到。

I. Motivation

CNN存在的问题:深层网络的大感受野是通过牺牲结构信息来获得的,因此需要设计复杂的decoder来"尝试"恢复。

而对于Vision Transformer而言,位置编码在建模准确的空间信息方面存在局限,不适合密集预测任务。

II. Network Architecture

在这里插入图片描述

III. Transformer Encoder

Encoder所用的backbone为Swin Transformer。类似于CNN中的backbone,其也可以生成五个尺度下的特征,记做 E θ ( x ) = { t l } l = 1 5 E_{\theta}(x)=\left\{t_{l}\right\}_{l=1}^{5} Eθ(x)={tl}l=15,其通道数分别为 128 , 256 , 512 , 1024 , 1024 128,256,512,1024,1024 128,256,512,1024,1024

IV. Deep Supervision

其实把swin transformer拿来后,一种直接的做法就是把CNN中原来的decoder给直接接到transformer backbone上去。本文基本上也是这么做的,不过文中的将这一操作称为deep supervision,其结构如下所示:
在这里插入图片描述
其实这个deep supervision就是decoder。可以看到encoder最底层特征t5在和t4 concat之后,逐步继续与t3进行向上融合,与传统CNN中decoder的思路比较类似。

具体来说的话,对于encoder所提取的各级特征 { t l } l = 1 5 \left\{t_{l}\right\}_{l=1}^{5} {tl}l=15,首先利用3×3卷积将其降维至32通道(即上图中的BC),得到特征图 { d l } l = 1 5 \left\{d_{l}\right\}_{l=1}^{5} {dl}l=15。接下来做的就是相邻特征的融合,有: b l = C a ( [ d l , con ⁡ v 3 × 3 ( b l + 1 ) ] ) , l = 1 , … , 4 b_{l}=C^{a}\left(\left[d_{l}, \operatorname{con} v_{3 \times 3}\left(b_{l+1}\right)\right]\right), l=1, \ldots, 4 bl=Ca([dl,conv3×3(bl+1)]),l=1,,4 其中 C a C^{a} Ca代表残差通道注意力模块(上图中的RCAB),用于提取各通道中有区分性的信息; [ , ] [,] [,]代表channel wise concat(上图中的C)。在concat之前,上采样所使用的方法为双线性上采样。

将各级decoder特征通过DASPP模块处理后,可以得到相应的单通道预测结果: { s l = D m ( b l ) } l = 1 5 \left\{s_{l}=D_{m}\left(b_{l}\right)\right\}_{l=1}^{5} {sl=Dm(bl)}l=15

V. Discriminator

判别器 R γ R_{\gamma} Rγ的结构较为简单,由五个3×3卷积层组成,其输入为原始图像 x x x与预测结果 s l s_{l} sl进行concat,输出为单通道的置信图 c l c_{l} cl。这里重点讲下文中所提到的Difficulty-aware learning。这个东西的作用类似于hard negative mining,用来强化对hard sample的训练。

那么对于SOD这种密集预测任务来说,hard sample自然就是那些容易预测出错的像素,例如边缘处的像素。本文对于hard的定义也十分直观,对于预测错的像素,我们就认为其hard。形式化地,有: c l = sigmoid ⁡ ( R γ ( s l , x ) ) c_{l}=\operatorname{sigmoid}\left(R_{\gamma}\left(s_{l}, x\right)\right) cl=sigmoid(Rγ(sl,x))

VI. Summary

将transformer引入了SOD任务中。不过有意思的一点是,这里除了backbone换成了transformer,其余部分的组件仍使用了CNN中的习惯设计,在一定程度上可以认为是backbone替换所带来的性能提升。

回答: 本文探索了将普通的Vision Transformer (ViT)作为目标检测的骨干网络。通过对ViT架构进行微调,而无需重新设计分层骨干进行预训练,我们的普通骨干检测器可以取得竞争性的结果。研究发现,只需从单尺度特征图构建简单的特征金字塔(无需常见的FPN设计),并使用窗口注意(无需移动)辅助少量的跨窗口传播块即可。通过使用预先训练的纯ViT主干作为Masked Autoencoders (MAE),我们的检测器ViTDet可以与之前基于分层骨干的领先方法竞争,在COCO数据集上达到61.3 APbox的性能。我们希望这项研究能够引起对普通骨干检测器的关注。\[1\]\[2\]\[3\] #### 引用[.reference_title] - *1* [论文阅读-ViTDet:Exploring Plain Vision Transformer Backbones for Object Detection](https://blog.csdn.net/qq_37662375/article/details/126675811)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [ViTDet:Exploring Plain Vision Transformer Backbonesfor Object Detection(arXiv 2022)](https://blog.csdn.net/qq_54828577/article/details/127262932)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down28v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值