《基础模型时代的图像分割》研究综述

2024-09-02 22:52

本文主要是介绍《基础模型时代的图像分割》研究综述,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图像分割的目标:将像素划分为不同的组别

现代图像分割方法:①适配基础模型(例如CLIP、Stable Diffusion、DINO)用于图像分割②开发专门的分割基础模型(如SAM)

一、本综述的两大基本研究方向

通用图像分割(即语义分割、实例分割、全景分割)

可提示的图像分割(即交互式分割、参考分割、少样本分割):指定图像要分割的内容

本综述的贡献:

对基于著名基础模型的最近图像分割方法进行的全面探索,如CLIP [71]、Stable Diffusion [43]、DINO [56]/DINOv2 [57]、SAM [49]和LLMs/MLLMs [72]。

2.1语义分割

2.1.1基于CLIP

CLIP微调:

CATSeg [153]引入了基于成本聚合的框架,即使在完全微调后也能保持CLIP的零样本能力。OTSeg [154]通过利用多个文本提示的集成并引入多提示sinkhorn注意力来改善多模态对齐。ZegCLIP [155]、LDVC [156]和ZegOT [157]使用参数高效的提示调优技术来转移CLIP。

SemiVL 采用部分调优策略,仅调优自注意力层的参数。

知识蒸馏(KD):用于转移基础模型的能力

2.1.2基于DM

这里对DM有一个初步的了解

DM指的是Diffusion Model,扩散模型,是一种生成模型,通过逐步去除数据中的随机噪声,从而逐步构建出有意义的数据样本。

DM模型从生成任务到语义分割领域的应用也越来越受到关注。

2.1.3基于DINO

DINO模型是基于自监督学习的视觉模型,旨在从大规模数据集中学习丰富的视觉特征。

2.1.4基于SAM

SAM模型相对比较熟悉,前段时间做过的VOS竞赛,用的是SAM2模型,给出掩码在视频中分割

CLIP在语义理解方面表现出色,而SAM和DINO则擅长空间理解。有许多改进的模型,充分利用了二者的特点,进行了结合。

2.2实例分割

2.2.1 基于CLIP

CLIP在实现开放词汇实例分割中发挥了重要作用

2.2.2 基于DM

DMs在实例分割中通过促进生成具有准确标签的大规模训练数据集发挥了关键作用。

2.2.3 基于DINO

无监督实例分割。它们通常采用两阶段的发现和学习过程:通过递归应用归一化切割[100]等方法从DINO特征中发现多个对象掩码,然后利用这些掩码作为伪标签训练实例分割模型。

2.2.4 基于FMs

通过将实例的边界框作为提示输入,可以轻松地将SAM直接转换为实例分割模型,这些边界框可以通过对象检测器获取,如Faster R-CNN ,Grounding DINO。Grounding DINO模型在我们做Omnilabel竞赛的时候有接触过。

2.3全景分割

二、基于基础模型的交互式分割

对于这个交互式分割,我相对来说比较了解SAM模型,我们也对刚开源的SAM2模型进行过推理,也真正地有过交互,就是可以添加自己想要分割的目标物体,但是目前我只尝试过一个或者两个目标物体,,三个及以上还没有试过

这篇关于《基础模型时代的图像分割》研究综述的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1131303

相关文章

Java利用Spire.Doc for Java实现在模板的基础上创建Word文档

《Java利用Spire.DocforJava实现在模板的基础上创建Word文档》在日常开发中,我们经常需要根据特定数据动态生成Word文档,本文将深入探讨如何利用强大的Java库Spire.Do... 目录1. Spire.Doc for Java 库介绍与安装特点与优势Maven 依赖配置2. 通过替换

JavaScript装饰器从基础到实战教程

《JavaScript装饰器从基础到实战教程》装饰器是js中一种声明式语法特性,用于在不修改原始代码的情况下,动态扩展类、方法、属性或参数的行为,本文将从基础概念入手,逐步讲解装饰器的类型、用法、进阶... 目录一、装饰器基础概念1.1 什么是装饰器?1.2 装饰器的语法1.3 装饰器的执行时机二、装饰器的

Java JAR 启动内存参数配置指南(从基础设置到性能优化)

《JavaJAR启动内存参数配置指南(从基础设置到性能优化)》在启动Java可执行JAR文件时,合理配置JVM内存参数是保障应用稳定性和性能的关键,本文将系统讲解如何通过命令行参数、环境变量等方式... 目录一、核心内存参数详解1.1 堆内存配置1.2 元空间配置(MetASPace)1.3 线程栈配置1.

Java领域模型示例详解

《Java领域模型示例详解》本文介绍了Java领域模型(POJO/Entity/VO/DTO/BO)的定义、用途和区别,强调了它们在不同场景下的角色和使用场景,文章还通过一个流程示例展示了各模型如何协... 目录Java领域模型(POJO / Entity / VO/ DTO / BO)一、为什么需要领域模

深入理解Redis线程模型的原理及使用

《深入理解Redis线程模型的原理及使用》Redis的线程模型整体还是多线程的,只是后台执行指令的核心线程是单线程的,整个线程模型可以理解为还是以单线程为主,基于这种单线程为主的线程模型,不同客户端的... 目录1 Redis是单线程www.chinasem.cn还是多线程2 Redis如何保证指令原子性2.

从基础到高级详解Go语言中错误处理的实践指南

《从基础到高级详解Go语言中错误处理的实践指南》Go语言采用了一种独特而明确的错误处理哲学,与其他主流编程语言形成鲜明对比,本文将为大家详细介绍Go语言中错误处理详细方法,希望对大家有所帮助... 目录1 Go 错误处理哲学与核心机制1.1 错误接口设计1.2 错误与异常的区别2 错误创建与检查2.1 基础

Spring的基础事务注解@Transactional作用解读

《Spring的基础事务注解@Transactional作用解读》文章介绍了Spring框架中的事务管理,核心注解@Transactional用于声明事务,支持传播机制、隔离级别等配置,结合@Tran... 目录一、事务管理基础1.1 Spring事务的核心注解1.2 注解属性详解1.3 实现原理二、事务事

Linux五种IO模型的使用解读

《Linux五种IO模型的使用解读》文章系统解析了Linux的五种IO模型(阻塞、非阻塞、IO复用、信号驱动、异步),重点区分同步与异步IO的本质差异,强调同步由用户发起,异步由内核触发,通过对比各模... 目录1.IO模型简介2.五种IO模型2.1 IO模型分析方法2.2 阻塞IO2.3 非阻塞IO2.4

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

从基础到高级详解Python数值格式化输出的完全指南

《从基础到高级详解Python数值格式化输出的完全指南》在数据分析、金融计算和科学报告领域,数值格式化是提升可读性和专业性的关键技术,本文将深入解析Python中数值格式化输出的相关方法,感兴趣的小伙... 目录引言:数值格式化的核心价值一、基础格式化方法1.1 三种核心格式化方式对比1.2 基础格式化示例