从“抠图”到“抠视频”,Meta上新AI工具SAM 2。

继2023年4月首次推出SAM,实现对图像的精准分割后,Meta于北京时间2024年7月30日推出了能够分割视频的新模型SAM 2(Segment Anything Model 2)。SAM 2将图像分割和视频分割功能整合到一个模型中。所谓“分割”,是指区别视频中的特定对象与背景,并可以追踪目标。​​​​​​​

SAM 2 可以分割任何视频或图像中的任何物体,即使从未见过,因而可以用于现实生活中的任意场景。相比于上一代模型,SAM 2 的图像分割更准确,且速度快了 6 倍。

要点

  • SAM 2 在 17 个零样本视频数据集的交互式视频分割方面表现明显优于以前的方法,并且所需的人机交互减少了大约三倍。

  • SAM 2 在 23 个数据集零样本基准测试套件上的表现优于 SAM,而且速度快了六倍。

  • 与之前的最先进模型相比,SAM 2 在现有的视频对象分割基准(DAVIS、MOSE、LVOS、YouTube-VOS)上表现出色。

  • 使用 SAM 2 进行推理感觉很实时,速度大约为每秒 44 帧。

  • 循环中使用 SAM 2 进行视频分割注释的速度比使用 SAM 进行手动每帧注释快 8.4 倍。

SAM 2对特定人口群体的模型性能进行了评估。结果显示,该模型在感知性别的视频分割方面性能差异很小,在评估的三个感知年龄组(18-25 岁、26-50 岁和 50 岁以上)之间差异很小。

相关链接

论文地址:

  • SAM 2: https://ai.meta.com/blog/segment-anything-2/

  • SAM 1: https://arxiv.org/pdf/2304.02643

Meta官方介绍:https://ai.meta.com/blog/segment-anything-2/

SAM2网站:http://ai.meta.com/SAM2

数据集地址:https://ai.meta.com/datasets/segment-anything-video

模型地址:https://github.com/facebookresearch/segment-anything-2

方法介绍

Segment Anything Model 2 (SAM 2),这是Meta Segment Anything Model的下一代,现在支持视频和图像中的对象分割。SAM 2 是第一个用于实时、可提示的图像和视频对象分割的统一模型,它使视频分割体验发生了重大变化,并可在图像和视频应用程序中无缝使用。

SAM 2 在图像分割精度方面超越了之前的功能,并且实现了比现有工作更好的视频分割性能,同时所需的交互时间减少了三倍。SAM 2 还可以分割任何视频或图像中的任何对象(通常称为零样本泛化),这意味着它可以应用于以前从未见过的视觉内容,而无需进行自定义调整。

自推出 SAM 以来的一年里,该模型已在各个学科领域产生了巨大影响。它启发了 Meta 系列应用(例如Instagram 上的 Backdrop 和 Cutouts)中新的 AI 体验,并催化了科学、医学和众多其他行业的各种应用。许多最大的数据注释平台已将 SAM 集成为图像中对象分割注释的默认工具,节省了数百万小时的人工注释时间。SAM 还用于海洋科学中分割声纳图像和分析珊瑚礁、用于救灾的卫星图像分析以及医学领域中分割细胞图像和辅助检测皮肤癌。

SAM 2 是如何设计的

SAM 能够学习图像中物体的一般概念。然而,图像只是动态现实世界的静态快照,其中视觉片段可以表现出复杂的运动。许多重要的现实世界用例需要在视频数据中进行准确的对象分割,例如在混合现实、机器人、自动驾驶汽车和视频编辑中。我们相信通用分割模型应该适用于图像和视频。

图像可以看作是一段只有一帧的非常短的视频。基于这种观点来开发一个统一的模型,无缝支持图像和视频输入。处理视频的唯一区别是,模型需要依靠内存来回忆该视频之前处理过的信息,以便在当前时间步准确分割对象。

成功分割视频中的对象需要了解实体在空间和时间中的位置。与图像中的分割相比,视频带来了重大的新挑战。物体运动、变形、遮挡、光线变化和其他因素可能会在每一帧之间发生巨大变化。由于相机运动、模糊和分辨率较低,视频质量通常低于图像,这增加了难度。因此,现有的视频分割模型和数据集无法为视频提供类似的“分割任何内容”功能。在构建 SAM 2 和新 SA-V 数据集的工作中解决了许多这些挑战。

与用于 SAM 的方法类似,在实现视频分割功能方面的研究涉及设计新任务、模型和数据集。首先开发可提示的视觉分割任务,并设计一个能够执行此任务的模型 (SAM 2)。使用 SAM 2 来帮助创建视频对象分割数据集 (SA-V),该数据集比目前存在的任何数据集都要大一个数量级,并用它来训练 SAM 2 以实现最先进的性能。

可提示的视觉分割

设计了一个可提示的视觉分割任务,将图像分割任务推广到视频领域。SAM 经过训练,可以将图像中的点、框或蒙版作为输入,以定义目标对象并预测分割蒙版。借助 SAM 2,我们训练它接受视频任意帧中的输入提示,以定义要预测的时空蒙版(即“蒙版小片”)。SAM 2 根据输入提示立即预测当前帧上的蒙版,并将其在时间上传播以生成所有视频帧中的目标对象的蒙版小片。一旦预测了初始蒙版小片,就可以通过在任意帧中向 SAM 2 提供额外提示来迭代细化它。这可以根据需要重复多次,直到获得所需的蒙版小片。

统一架构中的图像和视频分割

从 SAM 到 SAM 2 的架构演变。

SAM 2 架构可视为 SAM 从图像到视频领域的推广。SAM 2 可通过点击(正或负)、边界框或掩码来提示,以定义给定帧中对象的范围。轻量级掩码解码器采用当前帧的图像嵌入和编码提示来输出该帧的分割掩码。在视频设置中,SAM 2 将此掩码预测传播到所有视频帧以生成掩码。然后可以在任何后续帧上迭代添加提示以优化掩码预测。

为了在所有视频帧中准确预测掩码,引入了一种记忆机制,由记忆编码器、记忆库和记忆注意模块组成。当应用于图像时,记忆组件为空,模型的行为类似于 SAM。对于视频,记忆组件可以存储有关该会话中对象和先前用户交互的信息,从而使 SAM 2 能够在整个视频中生成掩码预测。如果在其他帧上提供了其他提示,SAM 2 可以根据存储的对象记忆上下文有效地纠正其预测。

记忆编码器根据当前掩码预测创建帧记忆,并将其放置在记忆库中,用于分割后续帧。记忆库由来自前一帧和提示帧的记忆组成。记忆注意操作从图像编码器获取每帧嵌入,并在记忆库上对其进行条件处理以生成嵌入,然后将其传递给掩码解码器以生成该帧的掩码预测。对所有后续帧重复此操作。

我们采用流式架构,这是 SAM 在视频领域的自然推广,一次处理一个视频帧并将有关分割对象的信息存储在内存中。在每个新处理的帧上,SAM 2 使用记忆注意模块来关注目标对象的先前记忆。这种设计允许实时处理任意长的视频,这不仅对于收集 SA-V 数据集的注释效率很重要,而且对于现实世界的应用(例如机器人技术)也很重要。

SAM 引入了在图像中分割对象存在歧义时输出多个有效掩码的功能。例如,当一个人点击自行车轮胎时,模型可以将这次点击解释为仅指轮胎或整辆自行车,并输出多个预测。在视频中,这种歧义可以扩展到视频帧中。例如,如果在一帧中只有轮胎可见,则点击轮胎可能只与轮胎有关,或者随着自行车的更多部分在后续帧中变得可见,这次点击可能是针对整辆自行车的。为了处理这种歧义,SAM 2 在视频的每个步骤中创建多个掩码。如果进一步的提示不能解决歧义,模型将选择置信度最高的掩码在视频中进一步传播。

SA-V:构建最大的视频分割数据集

将“分割任何内容”功能扩展到视频的挑战之一是用于训练模型的注释数据有限。当前的视频分割数据集很小,缺乏对各种对象的充分覆盖。现有的数据集注释通常覆盖整个对象(例如人),但缺少对象部分(例如人的夹克、帽子、鞋子),并且数据集通常以特定对象类别为中心,例如人、车辆和动物。

为了收集大量多样化的视频分割数据集,构建了一个数据引擎,利用带有人工注释者的交互式模型在环设置。注释者使用 SAM 2 以交互方式注释视频中的 masklet,然后使用新注释的数据依次更新 SAM 2。多次重复此循环,以迭代方式改进模型和数据集。与 SAM 类似,不对注释的 masklet 施加语义约束,而是同时关注整个对象(例如,一个人)和对象部分(例如,一个人的帽子)。

使用 SAM 2,收集新的视频对象分割掩码的速度比以往更快。使用我们的工具和 SAM 2 在循环中进行注释的速度比使用 SAM 每帧的速度快约 8.4 倍,也比将 SAM 与现成的跟踪器相结合的速度快得多。

发布的 SA-V 数据集比现有的视频对象分割数据集包含多一个数量级的注释和大约 4.5 倍的视频。

SA-V 数据集的亮点包括:

  • 约 51,000 个视频上有超过 600,000 个 masklet 注释。

  • 视频展现了来自 47 个国家/地区的不同地理区域的真实场景。

  • 注释涵盖整个对象、对象部分以及对象被遮挡、消失和重新出现的困难实例。

限制

虽然 SAM 2 在图像和短视频中分割对象方面表现出强大的性能,但模型性能还可以进一步提高——尤其是在具有挑战性的场景中。

SAM 2 可能会在摄像机视点发生剧烈变化、长时间遮挡、场景拥挤或视频过长时丢失对物体的跟踪。我们在实践中缓解了这个问题,方法是将模型设计为交互式的,并允许在任何帧中通过单击校正进行手动干预,以便恢复目标物体。

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

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

相关文章

API 签名认证:AK(Access Key 访问密钥)和 SK(Secret Key 私密密钥)

API签名认证 在当今的互联网时代,API作为服务与服务、应用程序与应用程序之间通信的重要手段,其安全性不容忽视。你是否遇到过需要在HTTP请求中加入访问密钥(ak)和私密密钥(sk)的情况?是不是担心这些敏感信息会被拦截或者泄露?本…

【多线程】乐观/悲观锁、重量级/轻量级锁、挂起等待/自旋锁、公平/非公锁、可重入/不可重入锁、读写锁

文章目录 乐观锁和悲观锁重量级锁和轻量级锁挂起等待锁和自旋锁公平锁和非公平锁可重入锁和不可重入锁读写锁相关面试题 锁:非常广义的概念,不是指某个具体的锁,所有的锁都可以往这些策略中套 synchronized:只是市面上五花八门的锁…

[独家原创]基于分位数回归的Bayes-GRU多变量时序预测【区间预测】 (多输入单输出)Matlab代码

[独家原创]基于分位数回归的Bayes-GRU多变量时序预测【区间预测】 (多输入单输出)Matlab代码 目录 [独家原创]基于分位数回归的Bayes-GRU多变量时序预测【区间预测】 (多输入单输出)Matlab代码效果一览基本介绍程序设计参考资料 效…

RM麦轮控制以及底盘解算

一个典型的RM机器人四轮底盘由电机,底板,悬挂等构成,底盘安装在底盘的四角,呈矩形分布,麦克纳姆轮的辊子方向会影响其运动性能,一般采用如下图所示,四个麦轮的辊子延长线都过底盘中心的安装方法…

c语言学习,atoi()函数分析

1:atoi() 函数说明: 检查参数*ptr,子串中数字或正负号,遇到非数字或结束符停止 2:函数原型: int atoi(const char *ptr) 3:函数参数: 参数c,为检测子串 4:…

MyBatis 配置与测试方式

目录 一,什么是MyBatis 二,准备工作 创建项目 配置数据库连接 持久层代码 单元测试 一,什么是MyBatis 简单来说,MyBatis 是一款优秀的持久层框架,用于简化JDBC的开发,能更简单完成程序与数据库之间…

从0到1,AI我来了- (5)大模型-本地知识库-I

一、下载&安装Ollama Ollama下载地址: Download Ollama on macOS Github地址:GitHub - ollama/ollama: Get up and running with Llama 3.1, Mistral, Gemma 2, and other large language models. Ollama 是啥? 是一个人工智能和机器学习…

一文搞懂后端面试之不停机数据迁移【中间件 | 数据库 | MySQL | 数据一致性】

数据迁移方面的工作: 重构老系统:使用新的表结构来存储数据单库拆分分库分表、分库分表扩容大表修改表结构定义 数据备份工具 MySQL上常用的两款数据备份工具:mysqldump和XtraBackup mysqldump:一个用于备份和恢复数据库的命令…

Redis中的set类型

set的含义 集合设置(和get相对应) 集合就是把一些有关联的数据放到一起 集合中的元素是无序的(和list的有序是对应的-顺序很重要,这里的无序就是顺序不重要);在list中[]1,2,3],[1,3,2],是两个…

Java开发工具IDEA

IDEA概述 Intellij IDEA IDEA全称Intellij IDEA,是用于Java语言开发的集成环境,它是业界公认的目前用于Java程序开发最好的工具。 集成环境 把代码编写,编译,执行,调试等多种功能综合到一起的开发工具。 IDEA下载和安…

PDF在线预览实现:如何使用vue-pdf-embed实现前端PDF在线阅读

目录 PDF在线预览实现:如何使用vue-pdf-embed实现前端PDF在线阅读 一、前言 二、vue-pdf-embed是什么 1、作用与场景 2、vue-pdf-embed的优点 三、项目初始化与依赖安装 1、初始化Vue项目 2、安装依赖 3、集成vue-pdf-embed插件 四、一个实际的应用demo …

Java面试题精选:消息队列(一)

1、为什么使用消息队列 问题用意: 其实就是想问一下消息队列有哪些使用场景,你项目中什么业务场景用到了消息队列,有什么技术挑战。使用MQ后给你带来了什么好处 规范回答: 消息队列的常见使用场景很多,但比较核心的…

【漏洞修复】Tomcat中间件漏洞

1.CVE-2017-12615 抓包上传一句话木马 密码passwd 2.后台弱口令部署war包 先用弱口令登录网站后台 制作war包 将172.jsp压缩成.zip文件,修改后缀为.war 上传 蚁剑链接 3.CVE-2020-1938 Python2 CVE-2020-1938.py IP -p 端口 -f 要读取的文件 漏洞修复&#xf…

超越自我——带你学haproxy算法一遍过!!!

文章目录 前言介绍 静态算法static-rrfirst 动态算法roundrobinleastconn 其他算法source算法map-base 取模法一致性hashuriurI_param 取模法hdr 总结本文相关连接如下: 前言 本文相关连接如下: 如果想更多了解haproxy的相关知识,请点击&am…

HTTP协议和运行原理

HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。不仅仅适用于[服务器<–>客户端]也是适用于[服务器<–>服务器] HTTP 状态码 1xx 1xx 类状态码属于提示信息&#xff0c;是协议处理中的一种中间状态&#xff0c;实际…

操作系统 IO 相关知识

操作系统 IO 相关知识 阻塞与非阻塞同步与异步IO 和系统调用传统的 IODMAmmap 内存映射sendfilesplice 常用的 IO 模型BIO&#xff1a;同步阻塞 IONIO&#xff1a;同步非阻塞 IOIO 多路复用信号驱动 IOAIO&#xff1a;异步 IO 模型 IO 就是计算机内部与外部进行数据传输的过程&…

加密案例分享:电子设备制造行业

企业核心诉求选择 1.某企业规模庞大&#xff0c;分支众多&#xff0c;数据安全管理方面极为复杂&#xff1b; 2.企业结构复杂&#xff0c;包括研发、销售、财务、总部、分部、办事处、销售等单位连结成为一个庞大的企业组织&#xff0c;数据产生、存储、流转、使用、销毁变化…

NIO线程模型

NIO线程模型主要涉及以下几个方面&#xff1a; 一、基本概念 NIO&#xff08;New Input/Output&#xff09;是Java的一种新的输入输出模型&#xff0c;也被称为非阻塞IO。其核心特点是数据读写操作均是非阻塞的&#xff0c;即在进行读写操作时&#xff0c;若数据未准备好&…

第129天:内网安全-横向移动WmiSmbCrackMapExecProxyChainsImpacket

这里这个环境继续上一篇文章搭建的环境 案例一&#xff1a; 域横向移动-WMI-自带&命令&套件&插件 首先上线win2008 首先提权到system权限 wmic是windows自带的命令&#xff0c;可以通过135端口进行连接利用&#xff0c;只支持明文方式&#xff0c;优点是不用上传别…

【区块链+医疗健康】医链 - 区块链医疗信息管理系统 | FISCO BCOS应用案例

根据《“十四五”规划和 2035 远景目标纲要》&#xff0c;我国在“十四五”时期将全面推进医疗信息化建设。工信部等部 门联合发布《关于加快推动区块链技术应用和产业发展的指导意见》&#xff0c;促进区块链在医疗健康等公共服务领域开 展应用&#xff0c;促进业务协同办理。…