金磊 发自 凹非寺
量子位 | 公众号 QbitAI

Meta的视频版分割一切——Segment Anything Model 2(SAM 2),又火了一把。

因为这一次,一个全华人团队,仅仅是用了个经典方法,就把它的能力拔到了一个新高度——

任你移动再快,AI丢不了一点点!

例如在电影《1917》这段画面里,主角穿梭在众多士兵之中,原先的SAM 2表现是这样的:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

嗯,当一大群士兵涌入画面的时候,SAM 2把主角给跟丢了。

但改进版的SAM 2,它的表现截然不同:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

这个改进版的SAM 2,名叫SAMURAI(武士),由华盛顿大学全华人研究团队提出。

一言蔽之,这项工作就是把SAM 2之前存在的缺点(记忆管理方面的局限性)给填补上了。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

更有意思的是,这项改进工作所用到的核心关键方法,是非常经典的卡尔曼滤波器(Kalman Filter,KF)。

并且还是无需重新训练、可以实时运行的那种!

前谷歌产品经理、国外知名博主Bilawal Sidhu在看完论文后直呼“优雅”

有时候你不需要复杂的全新架构——只需要聪明地利用模型已知的信息,再加上一些经过验证的经典方法。
我们的“老朋友”卡尔曼滤波器,这么多年过去了,它的表现依然如此出色。有时候老派的方法就是管用。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

嗯,颇有一种“姜还是老的辣”的感觉了。

黑悟空、女团舞蹈,统统都能hold住

我们先继续看下SAMURAI能力实现的更多效果。

团队在项目主页中便从多个不同维度秀了一波实力。

首先就是打斗游戏场景,例如在《只狼:影逝二度》中,即便人物都“弹出”了画面,SAMURAI也能再次把目标捕捉回来:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

《黑神话:悟空》的打斗名场面,人物动作变化可以说是非常之快,而且和背景非常复杂的交织在一起。

即便如此,SAMURAI也能精准跟踪,细节到金箍棒的那种:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

但毕竟这两个游戏场景的例子,所涉及到的主体还不够多,那么我们接下来继续看下更复杂的case。

例如橄榄球比赛场景,不仅人物移动的快,后来队员们都扑到了一起,SAMURAI也能hold住:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

女团舞蹈的案例中,人物在变换队形的时候都已经被其他队员挡住了,也挡不住SAMURAI的“眼神锁定你”:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

很work的经典方法

在看完效果之后,我们接下来扒一扒SAMURAI的技术细节。

正如我们刚才提到的,这项工作弥补了SAM 2此前存在的缺点。

主要的问题就是处理视觉目标跟踪时,尤其是在拥挤场景中快速移动或遮挡的物体时,它会出现跟丢了的情况。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

SAM 2的组成部分包括图像编码器、掩码解码器、提示编码器、记忆注意力层和记忆编码器。

在视觉目标跟踪中,SAM 2使用提示编码器来处理输入的提示信息,如点、框或文本,这些提示信息用于指导模型分割图像中的特定对象。

掩码解码器则负责生成预测的掩码,而记忆注意力层和记忆编码器则用于处理跨帧的上下文信息,以维持长期跟踪。

然而,SAM 2在处理快速移动的对象或在拥挤场景中,往往忽视了运动线索,导致在预测后续帧的掩码时出现不准确。

特别是在遮挡发生时,SAM 2倾向于优先考虑外观相似性而非空间和时间的一致性,这可能导致跟踪错误。

而SAMURATI,作为SAM 2的增强版,可以说是很好地解决了此前的痛点。

整体来看,SAMURAI主要包含两个技术关键点:

  • 运动建模(Motion Modeling)
  • 运动感知记忆选择(Motion-Aware Memory Selection)

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

让目标“动”起来

运动建模部分的目的是有效地预测目标的运动,从而在复杂场景中,如拥挤场景或目标快速移动和自遮挡的情况下,提高跟踪的准确性和鲁棒性。

而这里用到的具体方法,就是那个经典的卡尔曼滤波器,以此来增强边界框位置和尺寸的预测,从而帮助从多个候选掩码中选择最有信心的一个。

在SAMURAI中,状态向量包括目标的位置、尺寸及其变化速度;通过预测-校正循环,卡尔曼滤波器能够提供关于目标未来状态的准确估计。

目标的状态向量被定义为:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

其中,x和y表示目标边界框的中心坐标;w和h表示边界框的宽度和高度;后四个变量则表示坐标与尺寸的速度。

滤波的过程则主要分为两个步骤。

第一个就是预测阶段,即根据目标的上一帧状态,预测下一帧位置:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

其中,F是状态转移矩阵。

第二个则是更新阶段,会结合实际测量值(目标的候选掩膜),校正预测值:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

在运动建模部分,除了基于卡尔曼滤波器的运动预测之外,还涉及运动分数(Motion Score)。

主要是通过计算 Kalman 滤波器预测的边界框与候选掩膜之间的交并比(IoU),生成运动分数sKf,用以辅助掩膜选择:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

最终的掩膜选择基于运动分数与掩膜亲和分数的加权和:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

挑出最关键的记忆

SAMURAI第二个关键技术,则是运动感知记忆选择(Motion-Aware Memory Selection)。

主要是为了解决SAM 2的固定窗口记忆机制容易引入错误的低质量特征,导致后续跟踪的误差传播的情况。

这部分首先涉及一个混合评分系统,包括掩膜分数、目标出现分数和运动分数三种评分,用于动态选择记忆库中最相关的帧。

  • 掩膜分数smask:衡量掩膜的准确性。
  • 目标出现分数 sobj:判断目标是否存在于该帧中。
  • 运动分数 skf:预测目标位置的准确性。

其次是一个记忆选择机制——

如果某帧满足以下条件,则其特征会被保留到记忆库中:

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

动态选择的记忆库可以跳过遮挡期间的低质量特征,从而提高后续帧的预测性能。

从实验结果来看,SAMURAI在多个视觉目标跟踪基准上表现出色,包括 LaSOT、LaSOText和GOT-10k数据集。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

值得一提的是,SAMURAI是在无需重新训练或微调的情况下,在所有基准上都超过了SAM 2,并与部分有监督方法(如 LoRAT 和 ODTrack)表现相当。

全华人团队出品

SAMURAI这项工作背后的研究团队,有一个亮点便是全华人阵容。

例如Cheng-Yen Yang,目前是华盛顿大学电气与计算机工程系的一名四年级博士生。

研究方向主要包括在复杂场景(水下,无人机,多相机系统)中的多目标跟踪(单视图,多视图,交叉视图)。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

Hsiang-Wei Huang和Zhongyu Jiang也是华盛顿大学电气与计算机工程系的博士生,而Wenhao Chai目前则是攻读研究生。

他们的导师是华盛顿大学教授Jenq-Neng Hwang

他是IEEE信号处理协会多媒体信号处理技术委员会的创始人之一,自2001年以来,黄教授一直是IEEE院士。

经典卡尔曼滤波器改进视频版「分割一切」,网友:好优雅的方法

关于SAMURAI更多内容,可戳下方链接。

项目地址:
https://yangchris11.github.io/samurai/

论文地址:
https://arxiv.org/abs/2411.11922

参考链接:
[1]https://x.com/EHuanglu/status/1860090091269685282
[2]https://x.com/bilawalsidhu/status/1860348056916369881