1. 写在前面 & 笔者的个人理解
原文链接:https://arxiv.org/abs/2408.11811
图 1:与传统的3D SAM方法相比,ESAM采用2D掩码生成3D查询,并通过迭代细化来预测精确且几何上一致的3D掩码。利用3D查询,ESAM能够通过简单的矩阵操作快速合并不同帧中的3D掩码。以SAM3D为例,作者的ESAM在平均精度上超越了其15.7%,并且速度提升了20倍以上。2.相关工作总结
2.1 VFM辅助的3D场景分割
在二维视觉领域,视觉基础模型(Vision Foundation Models, VFM)经历了快速的发展。这些模型得益于大量标注的视觉数据,展现出了卓越的准确性和强大的泛化能力,特别是在零样本情境下的应用。鉴于在三维视觉领域中高质量标注数据相对缺乏,利用二维VFM辅助三维场景感知成为了一个充满希望的研究方向。例如,UnScene3D利用DINO的二维自监督特征来生成初始的伪掩码,并通过自训练的方式进行迭代细化。SAM3D采用SAM在二维图像上生成实例掩码,并通过深度信息和相机参数将这些掩码投影到三维空间,并根据几何信息进行融合。SAMPro3D将三维空间中的点映射到多视图二维图像上,形成三维提示,用以对齐SAM生成的二维掩码,并将这些点聚类成实例掩码。SAI3D则是在重建的三维网格上生成三维原语,并利用Semantic-SAM获取具有语义得分的二维掩码,再通过基于图的区域增长策略将它们与三维原语连接并融合。作者的方法同样采用了SAM以辅助三维实例分割,但与现有工作不同的是,作者使二维到三维的投影过程和三维掩码的融合过程变得可学习且在线化。这样的设计使得作者的EmbodiedSAM(ESAM)能够更准确地预测三维掩码,并能够应用于实际的实时在线任务。
2.2 在线3D场景感知
随着具身智能的发展,现实世界的应用场景,例如机器人导航和操纵,越来越受到重视。在线3D场景感知,即能够从流式的RGB-D视频中准确理解周围环境的三维场景,成为了这些机器人任务的视觉基础。早期的在线3D感知方法通常是分别处理二维图像,然后将预测结果投影到三维点云上,并通过融合步骤将不同帧的预测结果结合起来。但是,由于这些方法在二维图像上的预测缺乏几何和时间上的感知能力,导致融合步骤的准确性和效率受到影响。为了解决这一问题,Fusion-aware 3D-Conv和SVCNN构建了数据结构来维护先前帧的信息,并通过基于点的三维聚合来融合三维特征,以进行语义分割。INS-CONV扩展了稀疏卷积到增量CNN,以高效地提取全局三维特征,用于语义和实例分割。MemAda提出了一种在线3D场景感知的新范式,通过多模态基于记忆的适配器,为离线模型赋予了在线感知的能力。与之前的方法不同,作者的ESAM将SAM生成的二维掩码提升为精确的三维掩码及其对应的查询,从而实现了高准确率的快速帧间预测结果合并。
2.3 EmbodiedSAM方法详解
给定一系列RGB-D图像及其对应的已知姿态,作者的目标是在相应的3D场景中对任何实例进行分割。具体来说,对于每一帧,其中代表彩色图像,代表由深度图像通过姿态参数投影到3D空间得到的点云,作者的方法旨在预测对应于观察到的3D场景的实例掩码。此外,作者希望这一过程是在线进行的,即在任意时间点,作者无法预知未来的帧,但需要在每个时间点提供时间上一致的3D实例掩码。
概述:作者的方法概述如图2所示。作者以增量方式解决在线3D实例分割问题,以实现实时处理。在时间点,作者只预测当前帧的实例掩码。然后作者将与的先前实例掩码合并,得到的更新实例掩码。

图 2:展示了ESAM的工作原理。在每个新的时间点t,作者首先使用SAM生成2D实例掩码M_2d^t。作者设计了一个几何感知的查询提升模块,将2D掩码提升为3D查询,同时保留细节形状信息。然后通过双级解码器细化这些查询,以生成精细的点掩码M_cur^t。最后,将当前掩码合并到先前的掩码中,采用快速的查询合并策略。
2.4 查询提升与细化
在接收到第 个 RGB-D 帧 时,作者首先采用 SAM 来自动生成来自 的 2D 实例掩码 。在本节中,为了描述的简洁性,作者将省略下标 。
为了在每个超点内更好地保留点特征,作者考虑了每个超点的几何形状。对于超点 ,作者计算所有点 相对于超点中心 的归一化相对位置 。这样,集合 表示了这个超点的归一化形状,其直径为 1,中心位于原点。然后作者计算每个点的局部和全局特征:
其中,MLP 对每个单独的点执行操作,Agg 是通过通道最大池化实现的聚合函数。局部和全局特征表示点与形状的相关性,因此作者将这两个特征结合起来,并通过另一个 MLP 来预测点权重:
最后,作者使用加权平均池化将点特征 聚合到第 个超点:
通过 增强聚合后的超点特征,以完全结合形状级几何特征和场景级 3D U-Net 特征。每个超点的计算可以并行化,使用逐点 MLP 和 Scatter 函数,使得这种几何感知池化实际上是高效的。
每个查询解码器都采用蒙版交叉注意力机制,在查询和场景表示之间聚合每个查询的实例信息:
其中,点乘表示矩阵乘法, 是查询解码器层 的线性投影, 和 是场景表示 的线性投影。 可以是点特征 或超点特征 。 是根据预测的 3D 实例掩码 派生的注意力掩码。 表示第 个查询关注第 个点或超点。然后作者将 输入到自注意力层和前馈网络中,得到 ,接着通过掩码生成模块预测每个查询的实例掩码:
其中 是线性层。如果 , 是点掩码;否则,它是超点掩码。
查询解码器通常采用相同级别的场景表示来进行交叉注意力和掩码生成。但由于 SAM 已经输出了高级别语义感知掩码,作者观察到 。如果采用点特征 进行查询解码,交叉注意力操作将因点的数量大而消耗大量内存。而如果作者使用超点特征 ,预测的 3D 实例掩码将只是超点的组合,因此无法细化到更细粒度。为了两者兼得,作者的查询解码器设计为双级。在交叉注意力中,作者设置 以实现高效的交互;而在掩码预测时,作者设置 以实现细粒度掩码生成。为了支持蒙版注意力,作者在交叉注意力之前将点掩码池化到超点掩码:
其中 是几何感知池化。作者可以重用预先计算的权重来减少计算。通过 3 次查询解码器迭代后,作者获得了准确的点掩码 以及相应的查询 ,在后续小节中表示为 和 。作者在 上执行掩码 NMS 以过滤掉冗余掩码及其相应的查询。
2.4 高效在线查询合并
在完成了2D掩码到3D掩码的提升之后,接下来作者需要将这些掩码合并到先前的实例掩码中,以生成更新的实例掩码。对于的初始情况,作者有等于。然而,以往的实例掩码合并方法通常需要遍历中的所有掩码,并且与中的每个掩码进行逐一比较,这是一个非常耗时的过程。为了准确判断新掩码是否应该合并到先前的掩码中,这些方法需要计算两个掩码点云之间的几何相似性,例如交并比(IoU)或最近点距离,这些计算通常涉及每个掩码的所有点,导致计算复杂度高且难以并行化。
为了解决这个问题,作者提出了一种新的方法,通过固定大小的向量来表示每个掩码,并通过高效的矩阵运算来计算相似性。得益于作者的架构,和中的每个掩码都有对应的查询特征。查询特征本身是固定大小的向量表示,但直接计算它们之间的相似性可能信息量不足。因此,作者设计了几项辅助任务,基于查询特征学习不同度量的向量表示,用于计算几何、对比和语义相似性。
通过上述方式,作者可以高效地计算和之间的相似性矩阵:
作者假设第个新掩码合并到第个先前掩码中。这里是合并计数,表示已合并到的掩码数量。
图 3:详细介绍了作者高效的查询合并策略。作者设计了三种代表性的辅助任务,分别生成几何、对比和语义的向量表示。然后,相似性矩阵可以通过矩阵乘法高效地计算。作者进一步剪枝相似性矩阵,并采用二分图匹配来合并实例。2.5 损失函数
在作者的模型训练中,每个RGB-D帧都配备了语义和实例的标签。在一个RGB-D视频序列中,不同帧之间对应的实例标签是一致的。基于这些标签,作者针对每帧计算损失,这些损失是基于每个查询的预测结果来确定的。由于查询是直接从2D SAM掩码中一对一提升而来的,作者可以直接使用2D掩码的标签来监督对应查询的预测,省去了复杂的标签分配步骤。作者假设每个2D SAM掩码仅对应一个实例,因此可以为每个查询获取对应的真实语义标签和2D实例掩码。利用深度图像的像素对应关系,作者将2D实例掩码映射到3D点云上,并据此计算出真实的轴对齐边界框。利用这些标注信息,作者定义了以下损失函数:
- 分类损失:通过交叉熵计算,用以区分前景和背景实例的二元分类损失。
- 3D掩码损失:包括二元交叉熵损失和Dice损失,用于指导预测的3D掩码。
- 边界框损失:基于预测的边界框与真实边界框之间的IoU来计算损失。
- 语义预测损失:采用二元交叉熵损失来预测每个实例的语义类别。
除了每帧内的损失外,作者还引入了相邻帧之间的对比损失:
其中, 表示余弦相似度, 是帧中实例的总数。
最终,总损失函数被定义为:
这里, 和 被设置为0,以保证序列两端的边界条件。
3. 实验结果和分析
在这一节中,作者将首先描述作者的实验设置和实现细节。然后,作者将比较作者的方法与现有的基于视觉基础模型(VFM)辅助的3D实例分割方法和在线3D分割方法,以验证其有效性。作者还将展示EmbodiedSAM(ESAM)在开放词汇和数据高效设置中的应用潜力。最后,通过消融研究,作者将提供对作者设计的综合分析。
3.1 基准测试与实现细节
作者的方法在以下四个数据集上进行了评估:ScanNet、ScanNet200、SceneNN和3RScan。ScanNet数据集包含1513个室内场景的3D重建,作者选取了其中的1201个序列用于训练,余下的312个用于测试。ScanNet200提供了更为细致的注释,涵盖了200多个类别。SceneNN由50个高质量的3D扫描场景组成,每个场景都带有实例和语义标签。依照文献,作者挑选了12个清洁序列用于测试。3RScan数据集更具挑战性,其RGB-D序列是通过快速移动的相机捕获的,作者使用了该数据集的测试分割部分,共包含46个场景。这些数据集都提供了带有标注的姿态RGB-D序列和重建的点云。
表 1:展示了不同方法在ScanNet200数据集上进行类别不可知的3D实例分割的结果。作者与常规聚类方法和基于VFM的3D场景感知方法进行了比较。速度单位为每帧的毫秒数,其中VFM和其他部分的速度分别报告。由于某些方法如SAM3D无需训练即可使用,为了与可学习的方法进行公平的比较,作者还进一步在表2中评估了表1中的方法在SceneNN和3RScan数据集上的表现,且未进行微调。这一基准测试展示了不同方法的泛化能力。
表 2:展示了不同方法从ScanNet200迁移到SceneNN和3RScan数据集的结果。作者直接在这些数据集上评估了表1中的模型,以展示它们的泛化能力。作者也在表3中与在线3D实例分割方法进行了比较。按照先前的研究,作者在ScanNet训练集上训练了不同的方法,并在ScanNet的验证集和SceneNN上进行了评估。
表 3:展示了不同方法在ScanNet和SceneNN数据集上的3D实例分割结果。最后,作者在表4中评估了ESAM在ScanNet200数据集上198个类别的开放词汇3D实例分割能力。由于ESAM输出的是类别不可知的3D掩码,作者可以通过两种方式将其扩展到开放词汇的3D分割。第一种是将这些掩码输入到像OpenMask3D这样的开放词汇掩码分类模型中。第二种是使用开放词汇的2D分割模型来为每个2D掩码获取类别标签。由于ESAM中3D掩码和2D掩码之间存在一一对应关系,作者可以相应地为每个3D掩码获取类别标签。这里作者遵循SAI3D的方法,采用了第一种方式,并与之作了比较。

表 4:展示了在ScanNet200数据集上进行开放词汇3D实例分割的结果。
3.2 与SOTA比较
根据表1的结果,在3D实例分割的“segment anything task”中,ESAM在与先前方法的比较中表现出色,甚至超越了一些离线处理方法。值得注意的是,在线方法相较于离线方法在感知3D场景时面临更大的挑战,因为它们需要处理的是部分和噪声更大的视频帧。尽管如此,ESAM不仅在准确性上取得了领先,而且在推理速度上也有显著优势,每帧的处理时间仅为80毫秒,远快于需要超过1秒的传统方法。当使用FastSAM替代SAM后,ESAM-E能够在保持较高准确性的同时,实现约10 FPS的实时在线3D实例分割。
在泛化能力方面,ESAM同样表现优异。如表2所示,ESAM在未进行微调的情况下直接应用于其他数据集,其准确性依然领先于其他零样本方法。此外,作者还注意到,SAI3D在3RScan数据集上的表现不如SAM3D,这可能是因为SAI3D高度依赖于清晰且精确对齐的3D网格和RGB图像,而3RScan数据集中由于相机移动速度快,图像和姿态信息较为模糊。
图4展示了不同3D实例分割方法在ScanNet200数据集上的可视化结果。ESAM能够生成准确且细节丰富的3D实例分割掩码,并且能够实时处理连续的RGB-D视频流。作者还提供了在线可视化结果(见图5),进一步证明ESAM在实际应用中的有效性。更多细节请参考作者提供的视频演示。
图 4:展示了不同3D实例分割方法在ScanNet200数据集上的可视化结果。在红色框中突出显示了SAM3D预测的噪声掩码,以及SAI3D倾向于将单一实例过度分割为多个部分的问题。
图 5:展示了ESAM在ScanNet200数据集上的在线可视化结果。更多细节可以参考作者项目页面上的视频演示。在表3和表4中,ESAM与现有的在线3D实例分割方法和开放词汇3D实例分割方法相比,也展现出了领先的性能。
3.3 ESAM分析
表 5:展示了ESAM在仅使用部分训练集时的性能。作者报告了在ScanNet200上,使用不同比例的训练集大小训练时的类别不可知平均精度。
表 6:展示了ESAM的推理时间分解(不包括VFM)。详细列出了3D U-Net适配器、解码器、相似性计算、匹配和更新各部分的时间消耗。
表 7:展示了ESAM架构设计的影响。在ScanNet200-25k上进行实验,并报告了每种设计选择的类别不可知平均精度和每帧的平均推理延迟。
表 8:展示了ESAM合并策略的影响。在ScanNet200上进行实验,并报告了不同设计选择对平均精度的影响。
图 6:展示了作者合并策略中辅助任务的可视化结果。(a) 展示了不同时间点上物体的3D边界框预测,用于几何相似性。(b) 展示了实例特定表示的t-SNE可视化,用于对比相似性,不同颜色代表不同的实例,不同点代表不同帧中的实例特征。4.结论
在本项工作中,作者成功地提出了ESAM,这是一个高效的框架,它借助视觉基础模型(VFM)来实现在线、实时、细粒度、高度泛化,以及开放词汇的3D实例分割。作者的方法通过几何感知池化将2D掩码提升为3D查询,并利用双路径查询解码器进一步细化这些查询,以生成精确的3D实例掩码。此外,利用查询与掩码之间的对应关系,作者设计了三种辅助任务,用以在三种不同的向量空间中表示每个3D掩码的特征,从而实现高效的掩码合并。通过在四个不同的数据集上进行广泛的实验,作者证明了ESAM在性能、在线实时推理能力以及泛化能力方面均达到了领先水平。ESAM还显示出了在开放词汇识别和数据高效学习场景中的应用潜力。作者认为,ESAM为有效利用2D VFM进行具身感知任务提供了新的视角和方法。
参考
[1] EmbodiedSAM: Online Segment Any 3D Thing in Real Time
本文转载自公众号:具身智能之心
原文链接:https://mp.weixin.qq.com/s/YXGFnZHqB60tZpjOY24jAw

