SETR——Rethinking系列工作,展示使用纯transformer在语义分割任务上是可行的,但需要很强的训练技巧

image.png

题目:Rethinking Semantic Segmentation from a Sequence-to-Sequence Perspective with Transformers

作者:image.png
开源:https://fudan-zvg.github.io/SETR

1.研究背景

1.1 为什么要研究这个问题?

自[ 36 ]的开创性工作以来,现有的语义分割模型主要是**基于全卷积网络( FCN )的模型。**一个标准的FCN分割模型具有编码器-解码器结构: 编码器用于特征表示学习,而解码器用于特征表示的像素级分类。
[ 36 ]Jonathan Long, Evan Shelhamer, and Trevor Darrell. Fully convolutional networks for semantic segmentation. In CVPR, 2015. 1, 2, 3, 6

1.2 所研究的问题目前存在什么样的困难?

FCN针对在非约束场景图像中学习对语义分割至关重要的长距离依赖信息,存在有限的感受野限制!

1.3 学者们都做了哪些研究来解决此问题?这些解决方法还有什么不足?

为了克服上述缺陷,近年来提出了许多方法。一种方法是直接操纵卷积操作(directly manipulate the convolution operation),包括大的核尺寸[ 40 ](large kernel sizes),空洞卷积[ 8、22 ](atrous convolutions)和图像/特征金字塔(image/feature pyramids);另一种方法是将注意力模块集成到FCN架构中,该模块旨在对特征图中所有像素的全局交互进行建模。
无论采用哪种方式,标准的编码器-解码器FCN模型架构都保持不变。
最近,人们尝试完全去除卷积,转而使用注意力独立模型[ 47 ]。然而,即使没有卷积,它们也不会改变FCN模型结构的本质:编码器对输入的空间分辨率进行降采样,开发出有助于区分语义类的低分辨率特征表示,解码器再对特征表示上采样到全分辨率语义映射。

2.研究目的

在本文中,我们旨在为语义分割模型的设计提供一种反思,并贡献一种替代方案。我们提出用一个纯transformer[ 45 ]来代替空间分辨率逐渐降低的基于堆叠卷积层的编码器,从而产生了一个新的分割模型- -SEgmentation TRansformer (SETR)。
该转换器将输入图像视为由学习到的块嵌入表示的图像块序列,并对该序列进行全局自注意力建模,用于判别性特征表示学习。具体来说,我们首先将一幅图像分解为固定大小的面片网格,形成一个面片序列。对每个面片的扁平化像素向量施加线性嵌入层,得到特征嵌入向量序列,作为transformer的输入。给定从编码器转换器中学习到的特征,然后使用解码器恢复原始图像分辨率。关键的是,在编码器转换器的每一层都没有空间分辨率的下采样,而是全局上下文建模,从而为语义分割问题提供了一个全新的视角。(无需从局部到全局学习)
创新点:

  • 我们从序列到序列学习的角度重新建模了图像语义分割问题,为占主导地位的编码器-解码器FCN模型设计提供了一种替代方案。
  • 作为一个实例,我们利用Transformer框架通过对图像进行序列化来实现我们的全注意力特征表示编码器。
  • 为了更全面地考察自注意特征的呈现,我们进一步介绍了三种不同复杂度的解码器设计。

3.研究方法

Transformer

由于FCN的encoder部分一般对图像下采样16倍,故将图片分割为原图的16×16块;每个patch经过线性映射得到L×C的矩阵( L = H 16 ∗ W 16 L=\frac{H}{16}*\frac{W}{16} L=

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/547292.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu20.04安装+ros-noetic安装+内网穿透frp

刷机后的系统安装 ubuntu20.04安装安装ros-noetic安装各种必要的插件安装vscode内网穿透连接实验室主机配置frpc和frps文件运行完成自动化部署免密登录linux的免密登录windows上的免密登录 内网穿透的参考链接:如何优雅地访问远程主机?SSH与frp内网穿透配…

Python学习笔记 - 正则表达式

前言 正则表达式(Regular Expression,在代码中常简写为 regex、regexp、RE 或 re)是预先定义好的一个“规则字符串”,通过这个“规则字符串”可以匹配、查找、替换那些符合“规则”的文本,也就是说正则表达式针对的目标…

MSTP/RSTP的保护功能

目录 原理概述 实验目的 实验内容 实验拓扑 1.配置RSTP/MSTP 2.配置BPDU保护 3.配置根保护 4.配置环路保护 5.配置TC-BPDU保护 原理概述 在RSTP或MSTP交换网络中,为了防止恶意攻击或临时环路的产生,可配置保护功能来增强网络的健壮性和安全性。…

C++vector类(个人笔记)

vector类 1.熟悉vector接口以及使用1.1vector的定义1.2vector迭代器使用1.3vector空间增长1.4vector增删查改1.5vector迭代器失效问题(重点) 2.vector的一些笔试题3.模拟实现vector 1.熟悉vector接口以及使用 vector的C官网文档 1.1vector的定义 (con…

用python快速读取大文件几个GB以上的csv数据文件

用python快速读取大文件几个GB以上的csv数据文件 遇到几个GB的csv大文件,用python读取时,可以通过next()函数一行行来读取以提高效率,然后分批量进行处理。 1、文件格式例图 其中第一、第二行是数据行数、列数汇总。 2、流程 1、把csv第一、第二行的数据说明,先读取出来…

Windows远程桌面连接虚拟机Linux

Windows远程桌面连接虚拟机Linux 需要先打开虚拟机的启用VNC连接使用VNC客户端进行连接 yum install -y tigervnc-server #安装tigervnc-server vncserver #启动一个vnc进程 #第一次启动会要求设置密码 #如果需要更改密码可以使用vncpasswd进行更改密码 vncserver -list #查看…

ASUS华硕ROG幻13笔记本电脑GV301R工厂模式原厂OEM预装Windows11系统,恢复出厂开箱状态

适用于型号:GV301RC、GV301RE、GV301RA 工厂模式安装包:https://pan.baidu.com/s/1gLme1VqidpUjCLocgm5ajQ?pwddnbk 提取码:dnbk 工厂模式Win11安装包带有ASUS RECOVERY恢复功能、自带所有驱动、出厂主题壁纸、系统属性专属联机支持标志…

java算法day55 | 动态规划part16 ● 583. 两个字符串的删除操作 ● 72. 编辑距离

583. 两个字符串的删除操作 思路: 和1143.最长公共子序列这道题思路相同,只不过需要对return的数据做一些操作。 class Solution {public int minDistance(String word1, String word2) {int[][] dpnew int[word1.length()1][word2.length()1];for(int …

06_定时器中断

72分频 72MHz 72000000 经过72分频 1000000

【攻防世界】ics-07

<?php session_start();if (!isset($_GET[page])) {show_source(__FILE__);die(); }if (isset($_GET[page]) && $_GET[page] ! index.php) {include(flag.php); }else {header(Location: ?pageflag.php); } <?phpif ($_SESSION[admin]) {$con $_POST[con];$…

可溶性PFA材质三角漏斗耐腐蚀进口聚四氟乙烯漏斗低溶出析出

PFA全名为可溶性聚四氟乙烯、全氟烷氧基树脂&#xff0c;成品外观透明可视&#xff0c;便于观察&#xff0c;有着良好的化学稳定性、耐温性&#xff0c;耐受强酸强碱以及各种有机溶剂&#xff0c;且PFA原料本身较为洁净&#xff0c;金属离子溶出析出少&#xff0c;经过清洗后可…

OpenCV——SUSAN边缘检测

目录 一、SUSAN算法二、代码实现三、结果展示 OpenCV——SUSAN边缘检测由CSDN点云侠原创&#xff0c;爬虫自重。如果你不是在点云侠的博客中看到该文章&#xff0c;那么此处便是不要脸的爬虫。 一、SUSAN算法 Susan边缘检测是一种经典的边缘检测算&#xff0c;它由Susan Smith…

1044: 顺序栈基本操作的实现

解法&#xff1a; #include<iostream> #include<stack> using namespace std; int main() {int n, a, k;stack<int> sk;cin >> n;while (n--) {cin >> a;sk.push(a);}cin >> k;while (k--) {sk.pop();}if (!sk.empty()) {cout << s…

C语言 | 自定义类型:struct结构体(详解)

目录&#xff1a; --前言 1. 结构体类型的定义与基础结构 2. 结构体的使用 3. typedef相关 4. 结构体的自引用 5. 结构体内存对齐 6. 结构体传参 7. 结构体实现位段 --前言&#xff1a; c语言中内置类型&#xff0c;也有自定义的类型。 例如&#xff1a;内置类型 in…

用html写文本变形动画

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><title>文本变形动画</title><link rel"stylesheet" href"./style.css"> </head> <body> <!-- 两个文本部分…

给你的Qt软件加个授权

写在前面 环境&#xff1a; Win11 64位 VS2019 Qt5.15.2 核心思路&#xff1a; 将授权相关信息加密保存到License.txt中&#xff0c;软件运行时获取并解密授权信息&#xff0c;判断是否在限制期限内即可。 加解密部分使用第三方openssl库进行&#xff0c;因此需要手动在…

设计模式:时序图

设计模式&#xff1a;时序图 设计模式&#xff1a;时序图时序图元素&#xff08;Sequence Diagram Elements&#xff09;角色&#xff08;Actor&#xff09;对象&#xff08;Object&#xff09;生命线&#xff08;Lifeline&#xff09;控制焦点&#xff08;Focus of Control&am…

环形链表II

给定一个链表的头节点 head &#xff0c;返回链表开始入环的第一个节点。 如果链表无环&#xff0c;则返回 null 如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 为了表示给定链表中的环&#xff0c;评测系统内部使用整数 …

gma 2 用户文档(pdf版)更新计划

随着 gma 2 整体构建完成&#xff0c;下一步继续针对库内所有功能完成一个用户指南&#xff08;非网站&#xff09;。相较于上次更新用户文档pdf版&#xff0c;已经过去了大半年。当然&#xff0c;PDF 版比网站上内容更丰富&#xff0c;也更新&#xff08;文档基于 gma 2.0.9a2…

李沐37_微调——自学笔记

标注数据集很贵 网络架构 1.一般神经网络分为两块&#xff0c;一是特征抽取原始像素变成容易线性分割的特征&#xff0c;二是线性分类器来做分类 微调 1.原数据集不能直接使用&#xff0c;因为标号发生改变&#xff0c;通过微调可以仍然对我数据集做特征提取 2.pre-train源…