分割模型Maskformer系列

maskformer:Per-Pixel Classification is Not All You Need for Semantic Segmentation

论文地址:https://arxiv.org/pdf/2107.06278 

1.概述

        传统的语义分割方法通常采用逐像素分类(per-pixel classification),而实例分割则使用不同的掩模分类(mask classification)方法。能否用掩膜分类的方法处理语义分割呢?当然是可以的。(掩膜分类:与逐像素分类不同,掩膜分类不是对每个像素单独分类,而是预测整个区域的掩膜(即区域的边界和形状),并将整个掩膜分类到一个类别。这种方法识别整个对象或区域,而不仅仅是单个像素。)

        MaskFormer方法通过预测与单一类预测关联的一组二进制掩模来解耦图像分割和分类的过程,提供了一种比逐像素分类更灵活的方法。掩模分类足够通用,可以同时解决语义和实例级别的分割任务。

 2.详细流程

        MaskFormer 是一种用于图像分割的模型,它整合了多个组件来处理语义和实例级分割任务。这个模型包括三个主要模块:像素级模块(Pixel-level module)、Transformer模块(Transformer module)和分割模块(Segmentation module)。具体流程为:

(1)像素级模块(Pixel-level Module)

  • 输入和特征提取:输入是一张大小为 H×W 的图像。通过一个骨架网络(backbone),例如ResNet或VGG,提取低分辨率的特征图 F。这个特征图的尺寸为C_{F}\times\frac{H}{S}\times\frac{W}{S},其中C_{F}是通道数,S 是步长(通常设为32)。
  • 特征上采样:像素解码器(pixel decoder)逐渐上采样这些特征,生成每像素嵌入 pixel×pixel​。这个过程旨在从低分辨率特征图中恢复更详细的空间信息,为后续的掩模预测提供支持。

(2)变换器模块(Transformer Module)

  • 生成掩模嵌入:变换器解码器(transformer decoder)接收上采样的像素嵌入,并使用 N 个位置嵌入(查询)生成 N 个掩模嵌入𝑄。这些嵌入捕捉图像中每个潜在分割区域的全局信息。
  • 并行处理:解码器并行输出所有预测,每个嵌入对应一个特定的掩模预测。

(3)分割模块(Segmentation Module)

  • 分类和掩模预测:应用线性分类器和 softmax 激活函数在掩模嵌入上,生成每个掩模的类别概率预测 p_{i}。此外,通过多层感知机(MLP)处理掩模嵌入𝑄,生成掩模m_{i}的二进制预测。
  • 二值掩模生成:使用点积操作将每个掩模嵌入与对应的像素嵌入结合,然后通过 sigmoid 激活函数生成最终的二进制掩模 m_{i}​。

(4)掩模分类推理(Mask-Classification Inference)

  • 通用推理:将图像分割为若干个掩模区域,通过匹配每个像素的最大类别概率和掩模概率来分配像素。
  • 语义推理:为语义分割任务专门设计,通过矩阵乘法合并所有二进制掩模和它们的类别预测,生成每个像素的类别标签。

3.实验

 mask2former

Masked-attention Mask Transformer for Universal Image Segmentation
论文地址: https://arxiv.org/pdf/2112.01527

1.概述

        Maskformer存在着计算量大、收敛困难的问题,针对于这个问题,这篇论文提出了Mask2former,这种架构的关键特点是:

  • 掩码注意力(Masked Attention):该机制通过在Transformer解码器中对预测的掩码区域内的特征进行聚焦,从而允许模型在保持高效性的同时提取出具有高度局部相关性的特征。

  • 多尺度高分辨率特征利用:为了改善对小物体的分割效果,作者提出在不同的Transformer解码器层中使用来自像素解码器的不同分辨率的特征图。

  • 优化的注意力顺序和查询特征学习:通过改变自注意力和交叉注意力的顺序,使查询特征可学习,并移除dropout,这些优化措施提高了性能并减少了所需的计算量。

  • 训练效率的提高:通过在计算掩码损失时只采样随机点而非全图,显著减少了训练过程中的内存需求,使得模型更易于训练和部署。

2.具体流程

        Mask2former主要建立在Maskformer的基础之上。

(1)Transformer解码器与掩码注意力

        Mask2Former引入了掩码注意力机制。这种注意力机制的核心是在预测掩码的前景区域内约束交叉注意力,从而提取局部化的特征。这一策略旨在提高模型处理小对象的能力,并通过以下几种方法优化模型性能:

掩码注意力
  • 基本概念:掩码注意力是一种交叉注意力的变体,它只在预测掩码的前景区域内聚焦,而不是整个特征图。
  • 实现方式:通过修改标准交叉注意力的注意力矩阵,使其在预测掩码的有效区域内应用softmax操作,通过将背景区域值置为负无穷从而排除背景区域,实现局部聚焦。

高分辨率特征
  • 策略描述:为了在不显著增加计算负担的情况下处理小对象,Mask2Former引入了一种多尺度策略,利用像素解码器输出的多尺度特征图。这些特征图按从低到高的分辨率供给给Transformer解码器的不同层,从而使每一层都能接收到适合其处理需求的特征级别。
  • 细节实现:例如,特征图的分辨率可以是1/32、1/16、1/8原图大小,通过这种方法,可以在不同层上应用不同分辨率的特征图,以此优化性能并减少计算资源的消耗。

优化改进
  • 解码器改进:在标准的Transformer解码器层中,包含自注意力模块、交叉注意力和前向馈网络(FFN)。为了提高效率和性能,Mask2Former在这一结构上做出了调整,包括改变自注意力和交叉注意力的顺序,使查询特征可学习,并去除dropout。
  • 训练效率提升:通过在匹配和最终损失计算中使用采样点而非完整掩码,显著降低了训练过程中的内存需求,从18GB减少到6GB,这使得模型在有限的计算资源下更加易于训练和使用。

3.实验

在多个数据集上实现了新的sota

  

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux安装Redis 7.2.4笔记

一.保姆级安装 1.下载Redis 7.2.4安装包 sudo wget https://download.redis.io/releases/redis-7.2.4.tar.gz2.解压,可以指定 sudo tar -zvxf redis-7.2.4.tar.gz 3.检测并安装 GCC 编译器: yum 是基于 Red Hat 的 Linux 发行版(如 CentOS、…

CSRF漏洞简介

csrf简介 CSRF 全称为跨站请求伪造( Cross-site request forgery ),是一种网络攻击方式,在 CSRF 的攻击场景中攻击者会伪造一个请求(这个请求一般是一个链接),然后欺骗目标用户进行点击&#xf…

Lora基础炼丹学习笔记

1、收集数据集 20-30张人物各个角度、各个姿势的图片 2、图片预处理 裁剪 打标签 裁剪必须也要512 * 512 ,因为sd1.5就是用这个尺寸训练的,可以使用后期处理 打标可以勾选这个,Deepbooru对二次元画风更友好 打标也可以使用wb14-tagger的…

Flink checkpoint 源码分析- Checkpoint snapshot 处理流程

背景 在上一篇博客中我们分析了代码中barrier的是如何流动改的。Flink checkpoint 源码分析- Checkpoint barrier 传递源码分析-CSDN博客 最后跟踪到了代码org.apache.flink.streaming.runtime.io.checkpointing.CheckpointedInputGate#handleEvent 现在我们接着跟踪相应代…

FTTR(光猫)ITMS注册NCE纳管

ITMS注册 TR069交互过程: 1.1. TR069交互—主动连接机制 主动连接机制是指CPE主动发出请求连接事件(事件可以为: 0 BOOTSTRAP; 1 BOOT; PERIODIC等等)给ACS。在连接建立之后才能进行业务处理(通过调用RPC方法实现)。 备注:政企…

2024.5.8

聊天框完善 #include "mywidget.h" #include "ui_mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent), ui(new Ui::MyWidget) {ui->setupUi(this);//设置窗口大小this->resize(400,560);//设置窗口图标和标题this->setWindowTit…

Android C++ 开发调试 LLDB 工具的使用

文章目录 调试环境准备基础命令Breakpoint CommandsWatchpoint CommandsExamining VariablesEvaluating ExpressionsExamining Thread StateExecutable and Shared Library Query Commands 参考: Android 中在进行 NDK 开发的时候,我们经常需要进行 C 代…

隐式3D形状表示:Occupancy Networks

OccNet 的关键思想是隐式地表示3D形状,而不是显式地表示。与直接编码形状几何信息不同,OccNet 将形状的表面建模为非线性分类器的决策边界。 隐式表示:Occupancy Networks 将 3D 形状表示为非线性分类器函数的决策边界 f θ : R 3 X → [ 0…

crmeb知识付费系统正式上线,分屏录制网课用什么软件?教程有啥?

现在很多人为了提升自己知识储备,都会选择线上课程来提升自己,因为线上课程不受时间、地点的限制,大家可以在家就学习,也有很多人想做自己的网络课程,那分屏录制网课用什么软件好? 目前市面上有很多可以录屏…

高斯赛德尔迭代程序

高斯赛德尔迭代非常常用&#xff0c;看到网上很多例子写的不够简洁&#xff0c;这里我写了一个&#xff0c;供参考 import numpy as npdef gauss_seidel(A,b,x1,eps1.e-6):n len(A)max_iter 200iters 0while abs(np.dot(A[0,:],x1) - b)[0] > eps and iters < max_…

2024年颠覆商业模式《本草生活》项目,巧妙三招营销引流裂变套路

2024年颠覆商业模式《本草生活》项目&#xff0c;巧妙三招营销引流裂变套路 文丨微三云营销总监胡佳东&#xff0c;点击上方“关注”&#xff0c;为你分享市场商业模式电商干货。 - 引言&#xff1a;现如今流量枯竭、降本增效、红利不再已是线上营销的常态&#xff0c;互联网…

静态照片怎么合成gif?详细介绍一个方法

我们在各大平台中都能看到各种样式的gif动图。Gif动图其实就是由一帧一帧的静态图片合成的动态效果的gif&#xff0c;想要制作gif动画可以通过使用在线图片合成&#xff08;https://www.gif5.net/&#xff09;工具-GIF5工具网&#xff0c;手机、pc均可操作&#xff0c;只需要上…

网络代理与网络安全:解析 SOCKS5、代理IP、HTTP 的关系与应用

在当今数字化时代&#xff0c;网络代理技术成为了保护隐私、绕过地理限制、加强网络安全的重要工具。本文将探讨 SOCKS5 代理、代理IP、HTTP 代理等关键概念&#xff0c;并着重讨论它们在网络安全方面的应用与挑战。 SOCKS5 代理 定义与特点&#xff1a;SOCKS5 是一种网络代理…

nestjs 全栈进阶--自定义装饰器

视频教程 20_nest中自定义装饰器_哔哩哔哩_bilibili nest new custom-decorator -p pnpm pnpm start:dev 在Nestjs 中我们使用了大量装饰器 decorator &#xff0c;所以Nestjs 也允许我们去自定义装饰器。 1. 自定义方法装饰器 nest g decorator aaa --flat 它生产的代码…

C++进阶——浅谈隐式转化

在代码里我们或多或少都会依赖c的隐式类型转换。 然而不幸的是隐式类型转换也是c的一大坑点&#xff0c;稍不注意很容易写出各种奇妙的bug。 因此我梳理一遍c的隐式类型转换 一、什么是隐式类型转换 概念&#xff1a;就是当你只有一个类型T1&#xff0c;但是当前表达式需要类…

详细分析McCabe环路复杂度(附例题)

目录 前言1. 基本知识2. 例题 前言 该知识点常出在408或者软考中&#xff0c;对此此文重点讲讲理论知识以及例题 对于例题平时看到也会更新 1. 基本知识 McCabe环路复杂度是一种用于衡量软件代码复杂性的指标&#xff0c;主要是通过计算代码中的控制流图中的环路数量来衡量…

机房——蓝桥杯十三届2022国赛大学B组真题

问题分析 这题用深搜广搜都能做&#xff0c;不过我更倾向于用广搜&#xff0c;因为广搜能更容易找到目标点。那么是采用结构体存储边还是采用二维数组存储临接矩阵呢&#xff1f;我们注意到n的取值范围为1e5,用二维数组哪怕是bool类型就需要至少1e10Byte的连续空间,这个空间太大…

【C++PCL】点云处理3D-Harris关键点提取

作者:迅卓科技 简介:本人从事过多项点云项目,并且负责的项目均已得到好评! 公众号:迅卓科技,一个可以让您可以学习点云的好地方 重点:每个模块都有参数如何调试的讲解,即调试某个参数对结果的影响是什么,大家有问题可以评论哈,如果文章有错误的地方,欢迎来指出错误的…

2022 年全国职业院校技能大赛高职组云计算赛项试卷(公有云)

#需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包及镜像&#xff09;或有问题的&#xff0c;可私聊博主&#xff01;&#xff01;&#xff01; #需要资源&#xff08;软件包…

5V升8.4V2A升压恒压WT3231

5V升8.4V2A升压恒压WT3231 WT3231 是一种高性能直流-直流&#xff08;DC-DC&#xff09;转换器&#xff0c;集成了能够承受10A电流和26mΩ低导通电阻的功率MOSFET。该转换器能提供高达12V的稳定输出电压&#xff0c;并具有固定600KHz开关频率&#xff0c;使得小型外部电感和电…