Tokenize Anything via Prompting

news2025/1/21 8:58:16

SAM的延续,把SAM输出的token序列用来进行分类,分割和一个自然语言的decoder处理,但其实现在多模态的图像的tokenizer也几乎都是用VIT来实现的。一开始认为这篇文章可能是关于tokenize的,tokenize还是很重要的,后来看完,整体思路大概就是一般来做带类别的sam,目前是grounding dino+sam的思路,先用一个开放词汇检测的目标检测算法通过text将区域框出来再使用sam,本文呢,保留了sam的整体架构,实现了分割分类和描述的三种输出,主要还是通过mask decoder来实现,训练中结合clip。

1.Introduction

      旨在构造一个可要求输入的模型,并在大规模数据集上进行预训练。首先介绍了一个可要求输入的标记化任务,该任务要求模型能够在可提取感兴趣区域提示的情况下,提取出通用表示。提取的区域表示可以直接解码成相应任务的输出,用于通用的视觉感知任务。

        SA-1B构建了11M张图像上1.1B个高质量的mask,用于训练sam,Laion-2B从网络上收集了2b个图像文本对,训练clip,引入了SemanticSA-1B数据集,在SA-1B的每个分割区域,使用一个具有5B参数的强大clip模型提取出一个词汇,该模型在LAION图像文本对上训练。

        利用SemanticSA-1B数据集,训练了一个统一和可推广的模型,能够同时对任何物体进行分割、识别和标题生成,在SAM的架构内合并CLIP的功能,即通过prompt对任何物体进行token的模型。

2.related work

2.1 Vision foundation models

        clip,sam

2.2 Open-Vocabulary segmentation

        开放词汇语义分割旨在对超出训练中用于训练的封闭词汇范围的区域进行分类,基于clip,并设计特定的对齐技术,以有效的将VLM的知识集成到现有的分割模型中。

2.3 Zero-shot region understanding

        将clip和sam结合。

3.Approach

3.1 promptable tokenization

        在promptable的分割模型sam中对视觉和语言进行对齐,传统视觉-文本对齐方法依赖于图像-文本对,这限制了对细粒度区域的理解。使用clip和来自SA-1B的分割数据来将掩码与语言对齐,由于SA-1B是一个无类别数据集,利用clip embedding对sam的预测和clip的投影之间的概念词汇分布进行对齐。

3.1.1 预处理

排除了文本提示,使用点提示,5B的EVA-CLIP,从mask裁剪中计算image embedding。

3.1.2 Promptable segmentation

SAM的掩码解码器采用了Mask2Former,根据输入提示对交互分割进行了deformable masked attention,默认为每个提示预测四个掩码,但是路由策略选择一个来解决歧义,因此,图像解码器产生9个ouotput tokens,4个segmentic tokens,4个mask tokens和1个IOU token。为了提高在大规模SA-1B数据集上的训练效率,实现了一个二阶段采样策略,最多包括9个prompt points,在第一阶段,从gt mask中等概率抽样一个box或者point,之后,在256个gpu上执行,预测mask和gt之间的错误区域中均匀采样1-8个点,。。。

3.1.3 Concept prediction

用语义token来预测region,我们利用语义token,通过一个3层mlp(256->1024->1024)获取1024维的视觉embedding,这个视觉embedding进一步投影到2560维的分布logits,通过kl散度损失函数来优化从clip中获取的目标分布和预测分布之间的差异。

3.2 Promptable Captioning

文本编码器,32ktoken,512维的8层transformer,2500w参数的轻量级文本解码器参考了T5-small。

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

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

相关文章

MUX VLAN

目录 原理概述 实验目的 实验内容 实验拓扑 1.基本配置 2.使用Hybrid端口实现网络需求 3.使用Mux VLAN实现网络需求 原理概述 在实际的企业网络环境中,往往需要所有的终端用户都能够访问某些特定的服务器,而用户之间的访问控制规则则比较复杂。在…

Mysql启动报错:本地计算机上的mysql服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止

Mysql启动报错:本地计算机上的mysql服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止 文章目录 Mysql启动报错:本地计算机上的mysql服务启动后停止,某些服务在未由其他服务或程序使用时将自动停止1. 备份mysql的data文件夹2. 重新构建 Wind…

helm与k8s

文章目录 一、helm二、K8S/K3S1.K8S基本组件1.1 资源对象1.2 核心组件1.3典型的创建 Pod 的流程1.4 Kubernetes 多组件之间的通信原理 2. YAML 文件2.1 Maps2.2 Lists2.3 使用 YAML 创建 Pod2.4 创建 Deployment 4.静态pod4.1 配置文件4.2 通过 HTTP 创建静态 Pods4.3 静态pods…

【Linux系列】如何确定当前运行的是 RHEL 9 还是 RHEL 8?

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

zheng项目:从零到一打造全方位J2EE企业级开发解决方案

zheng项目:从零到一打造全方位J2EE企业级开发解决方案 摘要: 在当今快速发展的企业级应用开发领域,一套高效、稳定且可扩展的解决方案对于企业的成功至关重要。zheng项目旨在提供一套全面的J2EE企业级开发解决方案,从前端模板到自…

学习人工智能:为何PyTorch深度学习框架不可或缺

在人工智能(AI)的浩瀚领域中,深度学习作为其核心分支,正以其强大的数据处理能力、模式识别能力和预测能力引领着科技的飞速发展。而在深度学习的众多工具与框架中,PyTorch无疑是一颗璀璨的明星。本文将从PyTorch的特点…

单片机为什么还在用C语言编程?

单片机产品的成本是非常敏感的。因此对于单片机开发来说,最重要的是在极其有限的ROM和RAM中实现最多产品的功能。或者反过来说,实现相同的产品功能,所需要的ROM和RAM越小越好,在开始前我有一些资料,是我根据网友给的问…

JMeter+Ant+Jenkins构建接口报告(无人驾驶版)

展示结果: uc浏览器打开测试报告,绿色显示脚本结果 搭建操作步骤如下 1.jemter写好脚本 2.下载并配置ant环境变量:加上activation.jar、commons-lang3-3.8.1.jar、mail.jar 这3个包 mail.jar需要引用到jmeter 3.下载安装Jenkins 并进行构建…

算法 - 符号表-上

🏠个人主页:尘觉主页 文章目录 算法 - 符号表前言初级实现1. 链表实现无序符号表2. 二分查找实现有序符号表 二叉查找树1. get()2. put()3. 分析4. floor()5. rank()6. min()7. deleteMin()8. delete()9. keys()10. 分析 算法 - 符号表 前言 符号表&am…

MQTT的学习

近期构建物联网平台,学习到MQTT,这里使用的是uniapp作为连接MQTT broker的,这里使用的是国产的EMQX。 MQTT的认识 MQTT 协议入门:基础知识和快速教程 | EMQ(简单的认识) 创建 MQTT 连接时如何设置参数&am…

前端开发语言有那些?

前端开发语言有那些? 1、html 超文本标记语言:构建前端网页的基本结构,就象人的骨架一样。 2、css 层叠样式表:控制网页的样式和布局,就象人需要穿各种服式展现不同风采。 3、javascript 简称 JS 动态脚本语言&#x…

微信小程序云函数调用方法和技术架构介绍

云函数 云函数是涂鸦根据微信小程序使用场景,结合涂鸦 IoT 开放能力,提供的小程序访问涂鸦 IoT 开放能力接口方案。为此在基础能力中,我们提供了基础请求云函数的 API。 对于特殊的业务场景,需要使用云函数访问业务数据的&#…

智慧园区预约管理系统:提升效率与保障安全的关键

在当今这个信息技术高度发达的时代,智慧园区如雨后春笋般迅速发展,而预约管理作为智慧园区的关键组成部分,其重要性日益凸显。 访客预约系统的精细化设计,为园区的安全和秩序提供了坚实可靠的保障。访客可以通过便捷的在线平台&am…

django系统模板

【一】引子 来看一段代码 def current_datetime(request):now datetime.datetime.now()html "<html><body>It is now %s.</body></html>" % nowreturn HttpResponse(html)直接把HTML页面嵌套在视图函数里返回给浏览器并不是一个好主意&a…

2024年天津中德应用技术大学退役大学生专升本专业考试准考证下载

2024年天津中德应用技术大学退役大学生高职升本科专业课考试准考证下载及考生须知 一、准考证下载打印 4月7日14点开始&#xff0c;天津中德应用技术大学专业课报名审核通过的考生&#xff0c;登录天津中德应用技术大学专业课报名系统&#xff08;http://125.65.42.21:8091/j…

【实战解析】YOLOv9全流程训练至优化终极指南

【实战解析】YOLOv9全流程训练至优化终极指南 0.引言1.环境准备2.数据预处理&#xff08;1&#xff09;数据准备&#xff08;2&#xff09;按比例划分数据集&#xff08;3&#xff09;xml转txt脚本&#xff08;4&#xff09;配置文件 3.模型训练&#xff08;1&#xff09;单GPU…

4.7Qt

自由发挥应用场景实现一个登录窗口界面。 mywidget.cpp #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//窗口相关设置this->setWindowTitle("原神启动");this->setWindowIcon(QIcon("C:\\Users\\17212\\Pict…

【学习】移动端App性能测试流程有哪些

移动端App性能测试是保证App性能表现的重要环节之一。随着移动设备的普及和移动互联网的发展&#xff0c;移动端App的性能测试变得越来越重要&#xff0c;通过科学合理的性能测试可以发现并解决潜在的性能问题优化App运行效果提高用户体验。性能测试旨在评估App在各种场景下的性…

《从零开始学架构》读书笔记(一)

目录 软件架构设计产生的历史背景 软件架构设计的目的 系统复杂度来源 追求高性能 一、单机高性能 二、集群的高性能 追求高可用 一、计算高可用 二、存储高可用 追求可扩展性 一、预测变化 二、应对变化 追求安全、低成本、规模 一、安全 二、低成本 三、规模…

第7章 数据安全

思维导图 7.1 引言 数据安全包括安全策略和过程的规划、建立与执行&#xff0c;为数据和信息资产提供正确的身份验证、授权、访问和审计。虽然数据安全的详细情况(如哪些数据需要保护)因行业和国家有所不同&#xff0c;但是数据安全实践的目标是相同的&#xff0c;即根据隐私和…