SAI3D: Segment Any Instance in 3D Scenes

📄 arXiv: 2312.11557v2 📥 PDF

作者: Yingda Yin, Yuzheng Liu, Yang Xiao, Daniel Cohen-Or, Jingwei Huang, Baoquan Chen

分类: cs.CV

发布日期: 2023-12-17 (更新: 2024-03-24)

备注: CVPR 2024

🔗 代码/项目: PROJECT_PAGE


💡 一句话要点

SAI3D:利用几何先验和SAM语义信息进行零样本3D场景实例分割

🎯 匹配领域: 支柱三:空间感知与语义 (Perception & Semantics)

关键词: 3D实例分割 零样本学习 几何先验 语义分割 Segment Anything Model 场景理解 开放词汇分割

📋 核心要点

  1. 现有3D实例分割方法依赖大量标注数据,泛化性差;基于CLIP等视觉-语言模型的方法难以区分同类物体,且依赖特定prompt。
  2. SAI3D结合几何先验和SAM的语义信息,将3D场景分割成几何基元,并逐步合并成与多视角SAM掩码一致的实例分割。
  3. SAI3D在ScanNet++等数据集上超越了现有开放词汇基线,甚至在类别无关分割上超过了完全监督方法,展现了优越性能。

📝 摘要(中文)

3D实例分割的进步传统上受限于带标注数据集的可用性,限制了其在狭窄的对象类别中的应用。最近的研究试图利用像CLIP这样的视觉-语言模型进行开放集语义推理,但这些方法难以区分同一类别的对象,并且依赖于不通用的特定提示。本文介绍了一种新颖的零样本3D实例分割方法SAI3D,它协同利用了几何先验和来自Segment Anything Model (SAM)的语义线索。我们的方法将3D场景划分为几何基元,然后将它们逐步合并为与多视角SAM掩码一致的3D实例分割。此外,我们设计了一种具有动态阈值机制的分层区域生长算法,大大提高了细粒度3D场景解析的鲁棒性。在ScanNet、Matterport3D和更具挑战性的ScanNet++数据集上的实验评估表明了我们方法的优越性。值得注意的是,SAI3D在ScanNet++上的类别无关分割中优于现有的开放词汇基线,甚至超过了完全监督的方法。

🔬 方法详解

问题定义:现有的3D实例分割方法主要依赖于大规模标注数据集,这限制了它们在新场景和新类别上的泛化能力。虽然一些工作尝试利用视觉-语言模型进行开放词汇的分割,但它们在区分同一类别的不同实例时表现不佳,并且通常需要针对特定场景进行prompt工程,通用性较差。因此,如何实现无需标注数据,且能有效区分同类实例的3D场景实例分割是一个关键问题。

核心思路:SAI3D的核心思路是结合3D场景的几何先验知识和2D图像分割模型(SAM)提供的语义信息,实现零样本的3D实例分割。通过利用几何信息将场景分解为更小的、易于处理的几何基元,然后利用SAM在多视角图像上的分割结果作为指导,将这些基元逐步合并成完整的3D实例。这种方法避免了对3D数据的直接标注,并充分利用了2D图像分割模型的强大能力。

技术框架:SAI3D的整体框架主要包含以下几个阶段:1) 几何基元分割:首先,利用几何信息将3D场景分割成小的几何基元,例如超体素或平面片段。2) 多视角SAM分割:对于每个视角,使用SAM对图像进行分割,得到2D的分割掩码。3) 基元合并:根据几何基元之间的空间关系和它们对应的2D分割掩码的语义一致性,逐步合并这些基元,形成最终的3D实例分割结果。4) 分层区域生长:采用分层区域生长算法,通过动态阈值机制,提升细粒度3D场景解析的鲁棒性。

关键创新:SAI3D的关键创新在于它将几何先验和SAM的语义信息有机结合,实现了一种无需3D标注的零样本3D实例分割方法。与以往依赖大量标注数据或特定prompt的方法不同,SAI3D能够利用通用的2D分割模型和场景的几何结构,实现对各种场景的有效分割。此外,分层区域生长算法和动态阈值机制进一步提升了分割的鲁棒性。

关键设计:SAI3D的关键设计包括:1) 几何基元的选择:选择合适的几何基元(如超体素)对分割结果有重要影响。2) 多视角SAM掩码的一致性度量:如何有效地度量不同视角下SAM分割结果的一致性,以指导基元合并,是一个关键问题。3) 分层区域生长算法的动态阈值:动态阈值的设置需要根据场景的复杂度和分割的粒度进行调整,以达到最佳的分割效果。具体的参数设置和损失函数(如果使用)在论文中有详细描述,但摘要中未提及。

📊 实验亮点

SAI3D在ScanNet、Matterport3D和ScanNet++数据集上进行了评估,结果表明SAI3D优于现有的开放词汇基线方法。特别是在更具挑战性的ScanNet++数据集上,SAI3D在类别无关分割任务中甚至超过了完全监督的方法。这些实验结果充分证明了SAI3D的有效性和优越性。

🎯 应用场景

SAI3D在机器人导航、自动驾驶、增强现实等领域具有广泛的应用前景。它可以帮助机器人理解周围环境,进行物体识别和场景重建,从而实现更智能的交互和导航。在自动驾驶领域,SAI3D可以用于识别道路上的车辆、行人和其他障碍物,提高驾驶安全性。在增强现实领域,它可以用于将虚拟物体与真实场景进行精确的对齐和融合,提升用户体验。

📄 摘要(原文)

Advancements in 3D instance segmentation have traditionally been tethered to the availability of annotated datasets, limiting their application to a narrow spectrum of object categories. Recent efforts have sought to harness vision-language models like CLIP for open-set semantic reasoning, yet these methods struggle to distinguish between objects of the same categories and rely on specific prompts that are not universally applicable. In this paper, we introduce SAI3D, a novel zero-shot 3D instance segmentation approach that synergistically leverages geometric priors and semantic cues derived from Segment Anything Model (SAM). Our method partitions a 3D scene into geometric primitives, which are then progressively merged into 3D instance segmentations that are consistent with the multi-view SAM masks. Moreover, we design a hierarchical region-growing algorithm with a dynamic thresholding mechanism, which largely improves the robustness of finegrained 3D scene parsing.Empirical evaluations on ScanNet, Matterport3D and the more challenging ScanNet++ datasets demonstrate the superiority of our approach. Notably, SAI3D outperforms existing open-vocabulary baselines and even surpasses fully-supervised methods in class-agnostic segmentation on ScanNet++. Our project page is at https://yd-yin.github.io/SAI3D.