Meta「分割一切」进化2.0!一键跟踪运动物体,代码权重数据集全开源,网友:真正的OpenAI

教育   2024-07-31 09:01   福建  

关注“FightingCV”公众号

回复“AI”即可获得超100G人工智能的教程

点击进入→ FightingCV交流群

又是发布即开源!

Meta“分割一切AI”二代SAM2在SIGGRAPH上刚刚亮相。

相较于上一代,它的能力从图像分割拓展到视频分割

可实时处理任意长视频,视频中没见过的对象也能轻松分割追踪。

更关键的是,模型代码、权重以及数据集通通开源!

它和Llama系列一样遵循Apache 2.0许可协议,并根据BSD-3许可分享评估代码。

网友yygq:我就问OpenAI尴尬不尴尬。

Meta表示,此次开源的数据集包含51000个真实世界视频和600000个时空掩码(masklets,spatio-temporal masks),规模远超此前最大同类数据集。

可在线试玩的demo也同步上线,大家都能来体验。

在SAM之上加入记忆模块

相较于SAM一代,SAM2的能力升级主要有:

  • 支持任意长视频实时分割

  • 实现zero-shot泛化

  • 分割和追踪准确性提升

  • 解决遮挡问题

它进行交互式分割的过程主要分为两步:选择和细化。

在第一帧中,用户通过点击来选择目标对象,SAM2根据点击自动将分割传播到后续帧,形成时空掩码。

如果SAM2在某些帧中丢失了目标对象,用户可以通过在新一帧中提供额外的提示来进行校正。

如果在第三帧中需要需要恢复对象,只需在该帧中点击即可。

SAM2的核心思路是将图像视作单帧视频,因此可以从SAM直接扩展至视频领域,同时支持图像和视频输入。

处理视频唯一的区别在于,模型需要依赖内存来回忆处理过的信息,以便在当前时间步长上准确分割对象。

与图像分割相比,视频分割中,物体的运动、变形、遮挡和光线等都会发生强烈变化。同时分割视频中的对象需要了解实体跨越空间和时间的位置。

所以Meta主要做了三部分工作:

  • 设计一个可提示的视觉分割任务

  • 在SAM基础上设计新模型

  • 构建SA-V数据集

首先,团队设计了一个视觉分割任务,将图像分割任务推广到视频领域。

SAM被训练成以图像中的输入点、框或掩码来定义目标并预测分割掩码(segmentation mask)。

然后训练SAM在视频的任意帧中接受prompt来定义要预测的时空掩码(masklet)。

SAM2根据输入提示对当前帧上的掩码进行即时预测,并进行临时传播,在所有帧上都可生成目标对象的掩码。

一旦预测到初始掩码,就可以通过任何帧中向SAM2提供额外提示来进行迭代改进,它可以根据需要重复多次,直到获取到所有掩码。

通过引入流式记忆(streaming memory),模型可以实时处理视频,还能更加准确分割和跟踪目标对象。

它由记忆编码器、记忆库和记忆注意力模块组成。让模型一次只处理一帧图像,利用先前帧信息辅助当前帧的分割任务。

分割图像时,内存组件为空,模型和SAM类似。分割视频时,记忆组件能够存储对象信息以及先前的交互信息,从而使得SAM2可以在整个视频中进行掩码预测。

如果在其他帧上有了额外提示,SAM2可以根据目标对象的存储记忆进行纠错。

记忆编码器根据当前预测创建记忆,记忆库保留有关视频目标对象过去预测的信息。记忆注意力机制通过条件化当前帧特征,并根据过去帧的特征调整以产生嵌入,然后将其传递到掩码解码器以生成该帧的掩码预测,后续帧不断重复此操作。

这种设计也允许模型可以处理任意时长的视频,不仅对于SA-V数据集的注释收集很重要,也对于机器人等领域应有有影响。

如果被分割对象比较模糊,SAM2还会输出多个有效掩码。比如用户点击了自行车的轮胎,模型可以将此理解为多种掩码,可能是指轮胎、可能是指自行车全部,并输出多个预测。

在视频中,如果在一帧图像中仅有轮胎可见,那么可能需要分割的是轮胎;如果视频后续帧中很多都出现了自行车,那么可能需要分割的是自行车。

如果还是不能判断用户到底想分割哪个部分,模型会按照置信度进行选择。

此外,视频中还容易出现分割对象被遮挡的情况。为了解决这个新情况,SAM2还增加了一个额外的模型输出“遮挡头”(occlusion head),用来预测对象是否出现在当前帧上。

此外,在数据集方面。

SA-V中包含的视频数量是现有最大同类数据集的4.5倍,注释量则是53倍。

为了收集到如此多的数据,研究团队构建了一个数据引擎。人工会利用SAM2在视频中注释时空掩码,然后将新的注释用来更新SAM2。多次重复这一循环,就能不断迭代数据集和模型。

和SAM相似,研究团队不对注释的时空掩码进行语义约束,而是更加关注完整的物体。

这一方法让收集视频对象分割掩码速度也大幅提升,比SAM快8.4倍。

解决过度分割、超越SOTA

对比来看,使用SAM2可以很好解决过度分割的问题。

实验数据显示,和半监督SOTA方法比较,SAM2各项性能都表现不错。

不过研究团队也表示,SAM2还有不足,

比如可能会跟丢对象。如果相机视角变化大、在比较拥挤的场景里,就容易出现这类情况。所以他们设计了实时交互的模式,支持手动修正。

以及目标对象移动过快,可能会细节上有缺失。

最后,模型不仅开源支持免费使用,并已在Amazon SageMaker 等平台上托管。

值得一提的是,有人发现论文中提到SAM2训练是在256块A100上耗时108小时完成,对比SAM1则花了68小时。

从图像分割扩展到视频领域,成本如此低?

参考链接:
[1]https://ai.meta.com/blog/segment-anything-2/
[2]https://x.com/swyx/status/1818074658299855262


往期回顾


基础知识

【CV知识点汇总与解析】|损失函数篇

【CV知识点汇总与解析】|激活函数篇

【CV知识点汇总与解析】| optimizer和学习率篇

【CV知识点汇总与解析】| 正则化篇

【CV知识点汇总与解析】| 参数初始化篇

【CV知识点汇总与解析】| 卷积和池化篇 (超多图警告)

【CV知识点汇总与解析】| 技术发展篇 (超详细!!!)


最新论文解析

NeurIPS2022 Spotlight | TANGO:一种基于光照分解实现逼真稳健的文本驱动3D风格化

ECCV2022 Oral | 微软提出UNICORN,统一文本生成与边框预测任务

NeurIPS 2022 | VideoMAE:南大&腾讯联合提出第一个视频版MAE框架,遮盖率达到90%

NeurIPS 2022 | 清华大学提出OrdinalCLIP,基于序数提示学习的语言引导有序回归

SlowFast Network:用于计算机视觉视频理解的双模CNN

WACV2022 | 一张图片只值五句话吗?UAB提出图像-文本匹配语义的新视角!

CVPR2022 | Attention机制是为了找最相关的item?中科大团队反其道而行之!

ECCV2022 Oral | SeqTR:一个简单而通用的 Visual Grounding网络

如何训练用于图像检索的Vision Transformer?Facebook研究员解决了这个问题!

ICLR22 Workshop | 用两个模型解决一个任务,意大利学者提出维基百科上的高效检索模型

See Finer, See More!腾讯&上交提出IVT,越看越精细,进行精细全面的跨模态对比!

MM2022|兼具低级和高级表征,百度提出利用显式高级语义增强视频文本检索

MM2022 | 用StyleGAN进行数据增强,真的太好用了

MM2022 | 在特征空间中的多模态数据增强方法

ECCV2022|港中文MM Lab证明Frozen的CLIP 模型是高效视频学习者

ECCV2022|只能11%的参数就能优于Swin,微软提出快速预训练蒸馏方法TinyViT

CVPR2022|比VinVL快一万倍!人大提出交互协同的双流视觉语言预训练模型COTS,又快又好!

CVPR2022 Oral|通过多尺度token聚合分流自注意力,代码已开源

CVPR Oral | 谷歌&斯坦福(李飞飞组)提出TIRG,用组合的文本和图像来进行图像检索


FightingCV
一个专注于解析计算机视觉、多模态方向前沿论文,解答科研问题,分享科研时事的公众号!
 最新文章