【Segment Anything】视觉大模型Segment Anything介绍

news/2024/9/17 19:05:22/ 标签: 人工智能

Segment Anything

Segment Anything(SAM) 是一个可以根据等输入提示生成高质量的图像分割的机器视觉模型,可用于为图像中的所有对象生成对应蒙版。该模型在包含 1100 万张图像和 11 亿个掩模的数据集上进行训练,在各种分割任务上具有强大的零样本性能。
GitHub源码:https://github.com/facebookresearch/segment-anything
测试网站:https://segment-anything.com/demo
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
论文地址:https://arxiv.org/pdf/2304.02643

  • 论文主要讲解:主要讲的是可以非常高效的来获取我们想要的一些标注数据(个人认为这是最核心的)。数据可以自己训练自己,不需要人工进行标注,例如刚开始是人工标注500w数据,通过这些人工标注的500w数据,训练得到1000w数据,再拿训练后的1000w数据去训练得到1个亿的标注数据,相比原来不需要人工去标注1个亿的数据。相比原来我们的数据如果减少,那训练出来的模型效果会大幅度降低,但是事实上在这篇论文里面讲到,并不会效果不会大幅度降低,反而会趋于一种比较好的效果。今天的Ai和以前的Ai可能会有一个区别了。以前我们保证什么输出就是不变的,今天我们不能说这句话了,输出可能不是固定的,输出可能会变,而且不知道会变成什么。这可能会导致今天的Ai趋向了一个不可预估的发展路程,我们并不能控制它们的输出(个人理解)。
  • 论文说:我们的任务目标是干什么?我们的任务目标是根据这个提示返回一个有效的分割区域,要返回一些有效的区域。比如给我很多提示,不止一个的提示,你画这个框可以咱们画很多个,你点儿这个点可以有很多个,它说我们在这个模型当中,可能会遇到一些有歧义的东西,什么叫有歧义的东西呢?比如现在我点了一个点。这个点它是在一个衣服上啊,没准儿你想要把这个人的衣服给它分割出来。但是这个衣服又被人穿上,那你点这个点在衣服上,你到底是要这个衣服还是要这个人呢?这个模型它有给你两个输出,既给你输出人,也给你输出衣服,这就是它的一个基本模型能达到效果,即便你这个点儿。它是有歧义的,它也可以来把你这个歧义给它解决掉(这个也是我觉得大模型可能达到的一个特点吧)。
  • 论文说:有一个模型叫SAM,把整个SAM模型分成一个I magee coder图像编码器,啥意思?你输入的是一张图像,图像在我计算机眼中,它是个向量,它是个特征。图像编码器里第一个模型算法叫VIT视觉编码器,用Transformer去做的。因为一旦你的数据量大了起来。你卷积比较能达到一个上限吧,但是transformer目前科学家可能觉得transformer上限可能比较高。第二个,一个快速的啊,我们叫做一个提示的编码器。
  • 论文里面说到一个提示编码器,意思就是说能将坐标转成向量的都能去做,不管是文本还是其他基本上能转成向量的都能够提取特征。
  • 论文说到mask decoder表示的是我们现在要得到输出结果。跟DETR和mask former类似,DETR是做检测的,基于transformer做的,mask former也是也是做分割的,也是基于transformer做的。这篇论文当中mask decoder其实跟mask former八九不离十的很像。所以会发现它的模型,它的网络结构,没有看到创新。
  • 论文里说到数据引擎分为三个阶段,第一阶段(assisted-manual):手动辅助,帮我们分担一些经典的一些公开数据当中所呈现出来的一些数据,公开数据集较少的情况下,需要人为辅助去标数据集;第二阶段(semi-automatic):半自动化的,标注好的检测好的已经不需要再标了,没有检测到的人为进行标注;第三阶段(fully automatic):全自动的,模型自己训练,自己标,标完之后自己又训练,再自己又标注一部分,模型自己做。模型其实在学的什么呢?在学的不是固定的一种思维啊,在学的不是固定的一个任务。而是具备真正的一个学习能力,能理解你给我输入的一切的东西,这就是他要去做的,怎么样去做分割,去理解我们这个提示。
  • 论文说:无论你是输入什么东西,无论是图像数据,还是我们的提示,首先呢,都需要给你转换成一个向量。clip里边训练了一个文本以及图像,训练了文本编码器,也训练了图像编码器,在clip里边儿可以直接把文本转成向量啊。预训练就是将这些训练好的模型拿过来直接用,例如VIT这种模型。

http://www.ppmy.cn/news/1507080.html

相关文章

Maven 核心配置有哪些

Maven 核心配置 项目依赖管理 依赖传播&#xff1a;自动将所有依赖节点加入到项目classpath。依赖优先原则&#xff1a;解决依赖冲突&#xff0c;优先选择最短路径的版本。 依赖特性 可选依赖&#xff1a;通过<optional>true</optional>标记&#xff0c;表示依赖不…

Linux部署MySQL8.0

目录 一、部署前准备1.1、查看系统版本和位数&#xff08;32位或64位&#xff09;1.2、下载对应安装包 二、开始部署1、将安装包解压并且移动到目标安装目录2、准备MySQL数据和日志等存储文件夹3、准备MySQL配置文件 my.cnf4、创建mysql单独用户组和用户&#xff0c;将安装目录…

算法打卡 Day19(二叉树)-平衡二叉树 + 二叉树的所有路径 + 左叶子之和 + 完全二叉树的节点个数

Leetcode 101-平衡二叉树 文章目录 Leetcode 101-平衡二叉树题目描述解题思路 Leetcode 257-二叉树的所有路径题目描述解题思路 Leetcode 404-左叶子之和题目描述解题思路 Leetcode 222-完全二叉树的节点个数题目描述解题思路 题目描述 https://leetcode.cn/problems/balanced…

ESP8266-12E/F 内存分配

参考&#xff0c;,参考1&#xff0c;参考2&#xff0c;参考3 两款模组的不同 可以看出在使用功能和内存功能都一样。参考4 硬件介绍 模组中主要部分的芯片是乐鑫的esp8266&#xff0c;flash使用w25q32&#xff08;4MB&#xff09;参考&#xff0c;参考3 内存介绍 乐鑫…

黑马Java零基础视频教程精华部分_14_正则表达式

系列文章目录 文章目录 系列文章目录一、先爽一下正则表达式不使用正则的情况下使用正则的情况下 二、正则表达式的作用三、正则表达式具体表达1、规则2、字符类示例3、预定义字符示例首先学习转义字符 示例练习 四、基本练习1、快捷方法&#xff1a;2、验证手机号3、验证座机电…

02.CH59x入门指南——点亮LED

CH59x入门指南——点亮LED 文章目录 CH59x入门指南——点亮LED一、简介二、准备工作2.1 硬件条件2.2 项目条件 三、项目实现3.1 硬件部分3.2 软件部分3.3 运行结果 四、写在最后 ​ 一、简介 从本文开始&#xff0c;即将一一介绍 CH59x 的相关外设以及使用方法。 从任何一块芯…

Linux Shell编程--变量

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 变量&#xff1a; bash作为程序设计语言和其它高级语言一样也提供使用和定义变量的功能 预定义变量、环境变量、自定义变量、位置变量 一、自定义变…

self的使用

目录 一、看一段代码&#xff0c;并分析问题 二、二说self 1、成员方法定义的基本语法 2、使用细节 一、看一段代码&#xff0c;并分析问题 class Dog:name"波斯猫"age2def info(self,name):print(f"name信息&#xff1a;{name}") # 加菲猫dogDog() …

Dirsearch 工具的安装、使用详细教程

Dirsearch 工具的安装、使用详细教程 Dirsearch简介 安装步骤 语法及参数 常见Payload 渗透实例 总结 Dirsearch简介 Dirsearch 是一个用于探测Web服务器上的隐藏目录和文件的工具。它通过发送HTTP请求来尝试访问可能存在的路径&#xff0c;从而找到不列在网站目录页面上的…

河工院首届工业设计大赛程序组(挑战赛)题解

更好的阅读体验 \huge{\color{red}{更好的阅读体验}} 更好的阅读体验 寻找ACMer 思想&#xff1a; 签到题按照题意遍历字符串&#xff0c;不断向后寻找包含 ACMer 完整字符串的数量即可 std标程&#xff1a; #include <iostream> #include <cstring> #include …

人工智能时代,程序员如何保持核心竞争力?

人工智能时代&#xff0c;程序员如何保持核心竞争力&#xff1f; 在人工智能的浪潮中&#xff0c;程序员的角色和工作方式正在经历前所未有的变革。AIGC技术的兴起&#xff0c;如ChatGPT、Midjourney、Claude等&#xff0c;预示着AI辅助编程工具的日益普及。面对这一趋势&…

海量日志数据收集监控平台应该怎么设计和实现

设计和实现一个海量日志数据收集和监控平台&#xff0c;需要考虑以下几个关键方面&#xff1a;数据采集、数据存储、实时处理、监控与告警、可视化分析、扩展性和高可用性。以下是一个详细的设计和实现方案&#xff1a; 1. 需求分析 日志来源&#xff1a;明确日志的来源&…

图谱驱动的智能:如何用Django实现GraphRAG的高效检索

前言 前面一章讲述了构建知识图谱来提高基于 RAG 的应用程序的准确性,并且使用 Neo4j 和 LangChain 在 RAG 应用程序中构建和检索知识图谱信息。 图形检索增强生成 (Graph RAG) 这种方法利用图形数据库的结构化特性,将数据组织为节点和关系,以增强检索信息的深度和上下文性…

HDFS写入数据的流程图

1.客户端向namenode发送请求&#xff0c;请示写入数据 2.namenode接受请求后&#xff0c;判断这个用户是否有写入权限&#xff0c;如果不具备直接报错&#xff1b;如果有写入权限&#xff0c;接着判断在要写入的目录下是否已经存在这个文件&#xff0c;如果存在&#xff0c;直…

Ubuntu gnome WhiteSur-gtk-theme类mac主题正确安装和卸载方式

目录 摘要目的安装和卸载特别说明 Ubuntu gnome WhiteSur-gtk-theme类mac主题正确安装和卸载方式 摘要 Ubuntu版本&#xff1a;ubuntu24.04 主题下载地址&#xff1a;https://github.com/vinceliuice/WhiteSur-gtk-theme 参考的安装教程&#xff1a;https://blog.51cto.com/u_…

Mybatis的详细讲解

1.前情提要 1.1三层架构 &#xff08;1&#xff09;表现层 Controller 表现层是表示的事数据的接受&#xff0c;参数的校验&#xff0c;参数的转换&#xff0c;结果的转换&#xff0c;结果的返回 &#xff08;2&#xff09;业务逻辑层 Service 介于表现层和业务逻辑层之…

使用Cisco软件进行模拟万维网配置访问服务器过程

万维网(www)实验 文章目录 万维网(www)实验1.实验目的2.实验流程3.实验步骤 1.实验目的 1&#xff09;理解www站点 2&#xff09;理解上层应用和下层通信网络的关系 2.实验流程 开始 → 布置拓扑 → 配置路由及IP地址 → 配置web服务器→ 访问服务器 →结束 3.实验步骤 1&…

Vercel Error: (Azure) OpenAI API key not found

题意&#xff1a;Vercel 错误&#xff1a;(Azure) OpenAI API 密钥未找到 问题背景&#xff1a; I implemented openAI API in my Next.js app with the help of langchain library and it works superb on localhost, but in Vercel (ProVersion) it throws an error: 我使用…

js函数的arguments 对象

arguments对象是函数中传递的参数值的集合。 它是⼀个类似数组的对象&#xff0c;因为它有⼀个length属性&#xff0c; 我们可以使⽤数组索引表示法arguments[1]来访问单个值&#xff0c;但它没有数组中的内置⽅法&#xff0c; 如&#xff1a;forEach、reduce、filter和map。 …

AI的IDE:Cursor配置虚拟python环境(conda)

AI的IDE&#xff1a;Cursor配置虚拟python环境&#xff08;conda&#xff09; Cursor是一个AI的IDE&#xff0c;是从VSCode源代码中fork出来的&#xff0c;专注于和AI一起Coding而生。https://www.cursor.com/是官方地址。最近开始逐渐的试用Cursor&#xff0c;之前一直是VSCod…