【论文阅读】Gaussian Grouping: Segment and Edit Anything in 3D Scenes

【论文阅读】Gaussian Grouping: Segment and Edit Anything in 3D Scenes

摘要

高斯投影(Gaussian Splatting)实现了高质量、实时的三维场景新视点合成。不过,它仅专注于外观和几何建模,缺乏对细粒度的物体级场景理解。为了解决这一问题,我们提出了 Gaussian Grouping,将高斯点扩展为联合重建和分割开放世界三维场景中的任意内容。我们为每个高斯添加了一个紧凑的身份编码(Identity Encoding),使得这些高斯点能够根据其在三维场景中的物体实例或“物体/背景”的成员关系进行分组。并不依赖昂贵的三维标签,我们在可微渲染过程中通过利用 Segment Anything Model (SAM) 的二维掩码预测,以及引入的三维空间一致性正则化,对身份编码进行监督。与隐式的 NeRF 表示相比,我们表明离散且分组的三维高斯点能够在三维中以高视觉质量、细粒度和高效性来重建、分割和编辑任意内容。

引言

本文旨在构建一个 expressive 的三维场景表示,不仅对外观和几何进行建模,还捕捉场景中每个实例和物体的身份信息。我们的方法以最近的三维高斯投影(Gaussian Splatting)为基础,将其从纯粹的三维重建扩展到细粒度的场景理解。提出的“Gaussian Grouping”方法能够做到:

  • 同时对场景的每个三维部分进行外观、几何和它们的掩码身份的建模;
  • 将三维场景完全分解为离散分组,例如表示不同对象实例以便进行编辑;
  • 在不降低原始三维重建质量的前提下,实现快速训练和渲染。

Gaussian Grouping 有效地利用了 SAM 的密集二维掩码提案,并通过辐射场渲染将其提升到三维场景中的任意物体的分割。

方法

3D Gaussian Grouping

在本节中,我们将介绍 Gaussian Grouping 的设计。为了使三维高斯点具备细粒度场景理解能力,我们的核心思路是:在保持高斯点原有属性(如位置、颜色、不透明度和大小)不变的前提下,新增身份编码参数(Identity Encoding),其格式类似于颜色建模。这使得每个高斯点都能够被分配到在三维场景中所表示的实例或“物体/背景”之中。

在这里插入图片描述

(a) 2D 图像与掩码输入
为了准备 Gaussian Grouping 的输入,在图2(a)中,我们首先使用 SAM 自动为多视图集合中的每张图像生成掩码。2D 掩码是按图像单独生成的。随后,为了在三维场景中给每个 2D 掩码分配一个唯一的 ID,我们需要在不同视图之间关联具有相同身份的掩码,并获得三维场景中实例/物体的总数 K。

(b) 跨视图的身份一致性
我们在训练中不再依赖基于代价的线性分配的做法 [44] ,而是将三维场景的多视图图像视为视角逐步变化的视频序列。为了实现跨视图的 2D 掩码一致性,我们使用一个训练良好的零-shot 跟踪器 [7] 来传播并关联掩码。这也提供了三维场景中掩码身份的总数。我们在图 2(b) 中对关联的 2D 掩码标签进行了可视化。与文献 [44] 提出的基于代价的线性分配相比,我们发现该方法简化了训练难度,同时避免在每次渲染迭代中重复计算匹配关系,从而实现了超过 60 倍的加速。在密集且相互重叠的 SAM 掩码情形下,该方法还展现出比基于代价的线性分配更好的性能。此外,我们在图 5 中展示了我们对三维掩码关联的鲁棒性,其中来自视频的 2D 关联掩码 [7] 也存在明显错误。

(c)3D 高斯渲染与分组
为了在场景的不同视图之间生成一致的三维掩码身份,我们提出将属于同一实例/物体的三维高斯进行分组。除了现有的高斯属性外,我们还为每个高斯引入一个新的参数,即身份编码(Identity Encoding)。身份编码是一个长度为 16 的可学习且紧凑的向量,我们发现它在保持计算效率的同时足以区分场景中的不同对象/部件。在训练过程中,与表示每个高斯颜色的球面调和系数(SH)类似,我们优化引入的身份编码向量,以表示场景的实例 ID。需要注意的是,与场景的视角相关外观建模不同,实例 ID 在不同渲染视图之间是一致的。因此,我们将身份编码的 SH 阶数设为 0,只对其直流分量进行建模。与基于 NeRF 的方法 [16,19,44] 设计额外的语义 MLP 层不同,身份编码作为每个高斯的可学习属性,用于对三维场景进行分组。
最终渲染出的视频2D掩码身份特征 EidE_{id}Eid​ 在每个像素处是对每个高斯的长度为 16 的 Identity Encoding eie_iei​ 的加权求和,权重为该高斯在该像素处的影响因子 αi′\alpha^′_iαi′​。参见 [61],我们通过测量一个带协方差矩阵 Σ2DΣ^{2D}Σ2D 的二维高斯并乘以一个学习得到的每点不透明度 αiα_iαi​ 来计算 αi′α^′_iαi′​,并且
Σ2D=JW Σ3D JWT \Sigma_{2D} = J_W \, \Sigma_{3D} \, J_W^T Σ2D​=JW​Σ3D​JWT​
其中 Σ3D\Sigma_{3D}Σ3D​ 是三维协方差矩阵,Σ2D\Sigma_{2D}Σ2D​ 是投影后展开的二维版本 [68]。JJJ 是三维到二维投影的仿射近似的雅可比矩阵,WWW 是从世界坐标到相机坐标的变换矩阵。

(d) 组分损失
在对每个训练视图的 2D 实例标签进行关联之后,假设三维场景中共有 K 个掩码。为了按实例/物体掩码身份对每个 3D 高斯点进行分组,我们设计了分组损失 Lid\mathcal{L}_{id}Lid​,用于更新高斯点的 Identity Encoding,包含两个部分:

  1. 2D 身份损失(2D Identity Loss):由于掩码身份标签在 2D 中,我们并不直接对三维高斯的 Identity Encoding eie_iei​ 进行监督。给定 Eq. 1 中渲染得到的 2D 特征 EidE_{id}Eid​ 作为输入,先通过一个线性层 f 将其特征维度恢复到 K,然后对 f(EidE_{id}Eid​) 进行 softmax,以进行身份分类,其中 K 是三维场景中掩码的总数。我们采用一个标准的交叉熵损失 L2d\mathcal{L}_{2d}L2d​,用于 K 类分类。
  2. 3D 正则化损失(3D Regularization Loss):为了进一步提升高斯点的分组准确性,除了对间接的 2D 监督使用的标准交叉熵损失外,我们还引入一个无监督的 3D 正则化损失,以直接对 Identity Encoding eie_iei​ 的学习进行正则化。3D 正则化损失利用三维空间的一致性,强制前 k 个最近邻三维高斯的 Identity Encoding 在特征距离上保持接近。这使得位于 3D 物体内部、或在点渲染(式(1))中几乎在所有训练视图中都不可见的高斯点,能够得到更充分的监督。在 Eq. 3 中,我们将 F 表示在线性层 f 之后的 Softmax 操作(在计算 2D Identity Loss 时共用)。我们用带有采样点的 KL 散度损失来形式化,记为 m 采样点的 KL 损失。
在这里插入图片描述


其中 P 包含一个三维高斯点采样得到的 Identity Encoding e,而集合 Q = {e′1, e′2, …, e′k} 则由其在三维欧氏空间中的最近邻的 k 个向量组成。为简洁起见,我们省略在线性层 f 之后的 Softmax 操作。

结合在图像渲染上使用的传统三维高斯重建损失,用于端到端完全训练的总损失记为 Lrender\mathcal{L}_{render}Lrender​:

在这里插入图片描述


在这里插入图片描述


在这里插入图片描述

用于场景编辑的高斯分组

在完成 3D 高斯场的训练与分组(第 3.2 节)后,如图 3 所示,我们用一组分组后的三维高斯来表示整个三维场景。为执行各种后续的局部场景编辑任务,我们提出高效的局部高斯编辑(Local Gaussian Editing)。得益于解耦的场景表示,我们无需对所有 3D 高斯进行微调,而是冻结大部分已经良好训练的高斯的属性,只调整与编辑目标相关的少量现有或新添加的 3D 高斯。

  • 对于 3D 目标移除,我们只需删除编辑目标的 3D 高斯。
  • 对于 3D 场景的重新组合,我们在两个高斯组之间交换其 3D 位置。这两种编辑应用都是直接可用的,无需额外的参数调优。
  • 对于 3D 目标修复(inpainting),我们首先删除相关的 3D 高斯,然后在渲染过程中通过 LaMa [46] 的 2D 修复结果来监督添加少量新高斯。
  • 对于 3D 目标着色,我们仅调整相应高斯组的颜色(SH)参数,以保持学到的三维场景几何结构不变。
  • 对于 3D 目标风格迁移,我们进一步解冻 3D 位置和尺寸,以实现更真实的效果。

实验

见原文。

结论

本文提出了高斯分组(Gaussian Grouping),这是首个基于三维高斯点的能够在开放世界三维场景中实现“共同重建与分割”的能力的方法。方法引入了一种用于三维高斯的 Identity Encoding,它通过 SAM 的二维掩码预测以及三维空间一致性来进行监督。基于这一分组且离散化的三维场景表示,方法进一步展示了其能够支持多种场景编辑应用,例如三维对象移除、三维对象修复、三维对象风格迁移和场景重新组合,同时兼具高质量的视觉效果和较高的时间效率。


Author:ChiAuthor: ChiAuthor:Chi

Read more

无人机“黑飞”正式入法:2026年1月1日起违规飞行将面临拘留

无人机"黑飞"正式入法:2026年1月1日起违规飞行将面临拘留 一、新规核心内容 2025年6月27日,十四届全国人大常委会第十六次会议表决通过新修订的《中华人民共和国治安管理处罚法》,明确将无人机"黑飞"列为"妨害公共安全的行为",自2026年1月1日起正式实施。 法律依据:新《治安管理处罚法》第46条规定:"违反有关法律法规关于飞行空域管理规定,飞行民用无人驾驶航空器、航空运动器材,或者升放无人驾驶自由气球、系留气球等升空物体,情节较重的,处五日以上十日以下拘留。" 特别严重情形(如非法穿越边境线):最高可处十日以上十五日以下拘留。 二、"黑飞"的法律定义 **无人机"黑飞"**是指违反《无人驾驶航空器飞行管理暂行条例》等法律法规的无人机飞行活动,具体包括: 1.

By Ne0inhk
LazyLLM 测评 | 低代码颠覆 AI 开发!代码专家智能体进阶模块实战

LazyLLM 测评 | 低代码颠覆 AI 开发!代码专家智能体进阶模块实战

摘要: LazyLLM 是商汤大装置推出的开源低代码框架,作为构建和优化多 Agent 应用的一站式开发框架,覆盖应用搭建、数据准备、模型部署、微调、评测等全流程开发环节,提供丰富的工具支持。其以模块化设计打破传统开发壁垒,通过数据流驱动重构开发逻辑,能让开发者用极简代码实现工业级复杂 AI 应用,摆脱冗余编码束缚,聚焦核心业务场景,降低 AI 应用构建成本并支持持续迭代优化。堪称 AI 开发者的 “效率神器”,其技术普惠理念为 AI 开发领域带来新的实践范式,推动了更高效的开发模式。本文将以Python编程为切入点,带你深入了解LazyLLM框架。 LazyLLM 是构建和优化多 Agent 应用的一站式开发工具,为应用开发过程中的全部环节(包括应用搭建、数据准备、模型部署、模型微调、评测等)提供了大量的工具,协助开发者用极低的成本构建 AI 应用,并可以持续地迭代优化效果。 LazyLLM作为商汤大装置推出的开源低代码框架,简直是AI开发者的“效率神器”

By Ne0inhk
龙虾机器人(OpenClaw)本地部署完全技术指南

龙虾机器人(OpenClaw)本地部署完全技术指南

龙虾机器人(OpenClaw)本地部署完全技术指南 前言:什么是“龙虾机器人”? 在开始部署之前,我们需要明确部署的对象。通常所说的“龙虾机器人”指的是开源项目 OpenClaw(曾用名:Clawdbot、Moltbot)。它由程序员彼得·斯坦伯格开发,是一个开源的、可本地部署的通用型AI代理系统。与ChatGPT等对话式AI不同,OpenClaw被赋予了操作系统的权限:它可以执行终端命令、读写文件、操控浏览器、安装软件,甚至通过MCP协议调用外部工具。 由于其强大的系统操控能力,安全性是部署时需关注的首要问题。官方及社区普遍建议:不要在主力机或存有敏感数据的生产环境直接裸奔部署,最好使用虚拟机、Docker容器或专用硬件(如Mac Mini或AI开发盒子)进行隔离。 第一章:环境准备与核心依赖 在安装OpenClaw之前,必须准备好运行环境。OpenClaw的核心由TypeScript编写,因此Node.js是必不可少的运行环境。此外,根据安装方式的不同,可能还需要Git、Docker或Python环境。 1.1 硬件建议与系统选择 * Linux

By Ne0inhk
Flutter 三方库 arcane_helper_utils 的鸿蒙化适配指南 - 实现具备通用逻辑增强与多维开发脚手架的实用工具集、支持端侧业务开发的效率倍增实战

Flutter 三方库 arcane_helper_utils 的鸿蒙化适配指南 - 实现具备通用逻辑增强与多维开发脚手架的实用工具集、支持端侧业务开发的效率倍增实战

欢迎加入开源鸿蒙跨平台社区:https://openharmonycrossplatform.ZEEKLOG.net Flutter 三方库 arcane_helper_utils 的鸿蒙化适配指南 - 实现具备通用逻辑增强与多维开发脚手架的实用工具集、支持端侧业务开发的效率倍增实战 前言 在进行 Flutter for OpenHarmony 开发时,如何快速处理常见的字符串格式化、色值转换、日期计算或布尔值增强?虽然每一个功能都很小,但如果每个项目都重复造轮子,开发效率将大打折扣。arcane_helper_utils 是一款专注于极致实用的“瑞士军刀”型工具集。本文将探讨如何在鸿蒙端通过这类高内聚的 Utility 集实现极致、丝滑的业务交付。 一、原直观解析 / 概念介绍 1.1 基础原理 该库通过对 Dart 原生类型(Object, String, List, Map, Bool)

By Ne0inhk