跳转至

Axolotl3D: a Unified Framework for Faithful 3D Shape Completion

会议: ECCV2026
论文: ECCV 原文
领域: 3D 视觉
关键词: 形状补全、部分点云、多视图重建、遮挡感知、几何编辑

一句话总结

Axolotl3D 把图像、可见性掩码、相机和部分点云统一为 3D 生成条件,以几何锚点约束补全,在 Toys4K 单视图遮挡设置中达到 0.9046 F-score,同时支持保留未编辑区域的局部形状修改。

研究背景与动机

单图到 3D 模型已能生成外观合理的物体,但“像一个物体”和“忠实于这个物体的已知几何”不是同一要求。 在真实采集里,照片可能只有少量视角,物体可能被遮挡,深度重建也通常只覆盖部分表面。 如果生成器只接收一张完整物体图像,它便无法直接利用额外视角,也没有明确接口告诉模型哪些三维位置已经确定。 Hunyuan3D 2.1 的形状先验适合填补未知区域,却不能仅靠这个先验保证已知结构不被重新想象。

已有方案分别处理了这些困难的不同部分:Amodal3R 利用可见性信息恢复遮挡物体,ReconViaGen 关注多视图一致性,Instant3dit 等方法借助图像修补做局部编辑。 但编辑和遮挡补全其实共享一种信息结构:一部分几何必须保留,另一部分需要根据图像线索推断。 编辑时,被用户指定修改的区域不能继续作为固定几何输入,否则旧点云会和新图像指令互相冲突。 多视图时,相机则连接二维证据与三维锚点,让不同照片中的局部结构能在同一坐标系中被解释。

本文因此不再为每种任务设置独立生成流程,而是统一定义哪些图像区域有效、哪些表面点可信,以及它们如何对应。 这个统一接口仍需要训练分布支撑:只在完整点云上学习,模型可能在大面积缺失时失效;只在完整图像上学习,也可能被遮挡内容误导。 核心 idea:用部分点云固定已有几何,用相机对齐多视图证据,用可见性掩码排除无效图像条件,再通过混合条件合成训练同一个形状生成器完成补全与编辑。

方法详解

整体框架

输入包含最多 6 张图像、每张图像的有效区域掩码与相机参数,以及一个部分点云;输出为完整的物体网格。 骨干采用 Hunyuan3D 2.1:DiT 在形状潜空间中生成 token,Hunyuan3D-ShapeVAE 再将其解码为网格。 作者改造的是条件接口及其训练方式,而不是另外从零训练一个三维表示。 训练侧通过“混合条件合成”产生不同任务输入;生成侧依次进行“相机对齐视觉编码”“几何锚点融合”和“掩码偏置生成”。 点云不先转换成另一张指导图,而是保留独立几何 token,与图像 token 一起供形状潜变量查询。 推理时无需再执行合成增强;有效图像、相机与部分点云可以来自真实采集或编辑流程。

%%{init: {'flowchart': {'rankSpacing': 24, 'nodeSpacing': 28, 'padding': 6, 'wrappingWidth': 400}}}%%
flowchart TD
        Augment["混合条件合成<br/>训练网格生成条件"] -.->|仅训练时| Input["图像、掩码、相机<br/>部分点云"]
        Input --> Visual["相机对齐视觉编码"]
        Visual --> Fusion["几何锚点融合"]
        Input -->|部分点云| Fusion
        Fusion --> Generate["掩码偏置生成"]
        Input -->|有效区域掩码| Generate
        Generate --> Output["ShapeVAE 解码<br/>完整网格"]

关键设计

1. 混合条件合成:让同一模型见到不同形式的缺失

训练物体先归一化到 \([-1,1]^3\),采样密集表面点,并为每个物体采样 150 个球面相机进行渲染。 每次训练等概率选取三类条件合成任务:稀疏视图与遮挡、大区域点丢弃、局部编辑。 第一类先选定一个不作为输入的视图,再根据相机朝向的 90 度阈值选择非邻近条件视图,以保留真正未观测的区域。 对条件视图施加笔刷或矩形遮挡,并移除不可见或投影到遮挡区域的表面点,形成不规则的部分点云。 这里点云丢失与图像遮挡并非始终绑定:只有概率 \(p_{\mathrm{mask}}=0.5\) 会把相同遮挡同步施加到图像及其有效掩码上。 这样可以产生图像还看得到、点云却已经缺失的样本,避免网络只会照着输入点重建。 该任务内部单视图和多视图等概率采样;遮挡概率分别为 \(p_{\mathrm{occl}}=0.25\) 和 \(p_{\mathrm{occl}}=1.0\)。

第二类沿随机坐标轴和方向选一个阈值,按随距离变化的概率丢弃一大片点,再利用法线方向过滤点。 同时排除直接朝向缺失区域的相机,并去掉剩余视图都看不到的点,使缺口不能靠另一张完整照片轻易补齐。 第三类把随机选中的一个完整渲染视图当作“修改后视图”,在它可见的一个表面点周围放置三维包围盒。 盒内点被删除,其他条件图像中盒子的投影区域被屏蔽,只有指定的修改后视图展示完整目标。 这不是在训练时让图像编辑器真的修改物体,而是用同一个完整网格构造“局部缺失、单视图提供目标”的监督任务。 因此三类任务分别训练跨模态互补、大范围推断和局部内容替换,而完整物体仍提供形状学习的目标。

2. 相机对齐视觉编码:让图像特征知道自己来自哪条射线

每张图像先通过 DINOv2 得到空间对应的 patch 特征;不足 6 个视角时,缺失位置补零并屏蔽。 相机不是一个仅用于区分视图编号的标签,而是为像素提供具有三维含义的 Plücker 射线嵌入。 这些嵌入包含相机中心与射线方向的信息,经平均池化匹配图像特征的空间分辨率,再线性映射到相同通道数。 最终将相机特征加到图像特征中,使相同局部纹理在不同视角下能关联到不同的三维观察方向。 这对单视图尤其重要:只有一张图时,模型无法仅通过多张图像的对应关系推断点云与图像的朝向关系。

有效区域掩码按 DINOv2 的 \(14\times14\) patch 划分,只有整个 patch 都未被遮挡时才标为有效。 背景也被视为未遮挡,因为空白背景能提供“不应在这里长出物体”的自由空间证据。 编辑场景则将应保留的区域设为有效,并给修改后的指导视图提供完整有效掩码。 需要区分这两种语义:遮挡掩码排除看不见的内容,编辑掩码排除不再希望保留的旧内容,但都进入同一有效性接口。 缓存中的原文式 (1) 排版损坏,因此这里说明相机编码流程,不猜补作者的精确公式。

3. 几何锚点融合:用独立点 token 约束已知表面

部分点云经 VecSetX 编码成固定长度的潜码集合;该编码器在 ShapeNet-v2 上预训练,提供局部几何表示。 视觉 token 和几何 token 的原始通道数不同,作者分别使用带门控的前馈网络将它们映射到共同的 1024 维空间。 随后为两个模态分别添加可学习的模态嵌入,再沿 token 维度拼接。 这一步让网络能区分“这是二维观测特征”与“这是三维表面证据”,而不要求两类输入先有相同语义。 拼接后的条件集合同时包含所有输入视图和点云,供同一个 DiT 的交叉注意力读取,而不是在去噪时轮流替换图像条件。

几何锚点的作用是把已观测结构作为生成约束,使模型把形状先验主要用于未观测区域。 不过“锚点”在实现上是学习到的条件,不是将原始顶点硬拷贝到输出网格的数学保证。 点云若错误,忠实跟随它也可能生成错误形状;这正是后续预测深度实验需要验证的取舍。 点条件消融还同时移除了多模态融合层,因此测量的是这整条几何条件路径的贡献,不能归因于某一个小层。

4. 掩码偏置生成:在读取条件时排除无效视觉 token

在 DiT 的交叉注意力中,带噪形状潜变量提供查询,融合条件提供键和值。 有效掩码被转换为注意力偏置:无效视觉 token 的偏置为负无穷,有效视觉 token 和点 token 的偏置为零。 据第 6 页的文字定义,可以明确写出偏置规则,而不必重建提取损坏的整条注意力公式:

\[ B_{\ell,t}=\begin{cases} -\infty, & t\text{ is an invalid visual token},\\ 0, & t\text{ is a valid visual or point token}. \end{cases} \]

其中 \(\ell\) 是形状查询位置,\(t\) 是条件 token 位置;这个规则对各个查询屏蔽相同的无效条件。 点 token 不再按图像掩码逐个屏蔽,因为 VecSetX 输出的是固定长度潜码,不是逐像素或逐点保留的对应表。 点云中的无效区域已在构造输入时删除,图像中的无效区域则在条件注意力中排除。 因此这不是最终网格上的裁剪操作,也不是对遮挡图像进行二维修补,而是控制生成器在每次读取条件时可以使用的证据。 消融显示该掩码的增益比几何路径小,更符合“减少无效内容干扰”的保护作用,而非主要几何信息来源。

一个完整示例

以局部编辑为例,用户先在某个视图中标出要改动的区域,再用图像修补模型产生修改后视图。 原始网格表面会被采样成点云,但投影落在修改区域内的点必须删除,否则旧结构仍会约束生成结果。 修改后的图像及对应相机告诉模型新增结构在什么位置,剩余点云则限定未编辑部分的轮廓与细节。 若提供额外视图,其中旧编辑区域被屏蔽,只让它们提供周围未修改区域的证据。 生成器读取这些条件,完成形状潜变量,再由 ShapeVAE 解码为新网格。 这段流程解释了论文第 14 页的编辑接口,不代表作者对所有编辑案例提供了定量保真保证。

损失函数 / 训练策略

训练使用 TRELLIS-500K 中筛选出的 407k 个形状,并去除 ObjaverseXL 子集中的建筑与场景类内容。 作者从 Hunyuan3D 2.1 预训练权重微调,新增线性层使用 Kaiming uniform 初始化,新增嵌入使用正态初始化。 主文描述了流式形状生成骨干及去噪训练,但没有给出可完整复录的独立总损失表达式;本笔记不额外虚构几何约束损失。 优化器是 AdamW,学习率 \(10^{-5}\),batch size 为 16,在 8 张 A100 上训练 500k 步。 无分类器引导(CFG)的条件丢弃率为 0.1;推理时引导强度为 5,采样步数为 50。 真实单图应用先使用 SAM 2 分割,再由 MapAnything 估计点与相机,完成对齐和归一化后输入本模型。

实验关键数据

主实验

来源:原文第 10 页表 1,下面摘录 Toys4K 遮挡设置的均值;多视图为 6 视图。 F-score 阈值为 0.05,vIoU 在 \(64^3\) 分辨率计算,CD 列保留原表的 \(\times10\) 标度。 网格归一化后先做 ICP 对齐,再分别采样 1M 个点计算指标,因此不能把结果理解为未经对齐的绝对姿态准确率。

方法 视图条件 F-score ↑ vIoU ↑ CD ×10 ↓
Amodal3R 单视图 0.6877 0.1886 0.6144
SAM 3D 单视图 0.6764 0.1836 0.6375
Hy3D-Omni 单视图 0.6593 0.1802 0.8123
ShapeR 单视图 0.7453 0.2285 0.4622
Axolotl3D 单视图 0.9046 0.3265 0.2402
ShapeR 多视图 0.9190 0.4002 0.2040
Axolotl3D 多视图 0.9689 0.4187 0.1448

单视图遮挡 F-score 相比 ShapeR 高 0.1593,差值由表 1 的两个均值相减得到。 但优势不是所有数据集和指标上的全面领先:OmniObject3D 多视图遮挡下,ShapeR 的 vIoU 为 0.4123,高于本文的 0.3967,CD 也以 0.1443 略优于 0.1467。 主表中本文和 ShapeR 接收 8,192 个点,Hy3D-Omni 最多接收 2,048 个点,SAM 3D 则使用点图,条件预算并不完全一致。 作者另在表 3 做了统一 2,048 点比较;Toys4K 单视图遮挡 F-score 仍为本文 0.8738、ShapeR 0.6956。 Hy3D-Omni 的多视图设置实际只接收覆盖率最高的一张图像,但可使用多视图点云;不应称它为原生多图模型。

消融实验

来源:原文第 14 页表 4,Toys4K 遮挡设置;表中保留均值,指标定义与主实验相同。

配置 单视图 F-score ↑ 单视图 vIoU ↑ 单视图 CD ×10 ↓ 多视图 F-score ↑ 多视图 vIoU ↑ 多视图 CD ×10 ↓
去点条件及融合层 0.8074 0.2253 0.3589 0.9097 0.2881 0.2231
去掩码偏置 0.8968 0.3225 0.2517 0.9655 0.4151 0.1463
相机改为视图嵌入 0.9002 0.3228 0.2509 0.9689 0.4153 0.1462
完整模型 0.9036 0.3262 0.2423 0.9688 0.4185 0.1450

去掉几何条件路径后,单视图 F-score 从 0.9036 降到 0.8074,下降 0.0962,是表中最大的单视图退化。 相机消融不是删除全部视图区分信息,而是用可学习的视图嵌入替代 Plücker 嵌入。 多视图相机消融的 F-score 为 0.9689,略高于完整模型的 0.9688,因此不能声称每个组件都提高每一项指标。 表 4 完整模型与表 1 数值不完全一致,例如单视图 F-score 分别为 0.9036 和 0.9046;原文未在此解释差异,笔记保持两表原值。

关键发现

来源:原文第 10 页表 2,Toys4K 单视图、无遮挡、Depth Anything v3 预测深度;这里列出无相机扰动结果。 预测深度先按每个场景对齐真值深度的尺度与偏移,再利用真值相机反投影,因此并非完全无需标定的端到端测试。

方法 F-score ↑ vIoU ↑ CD ×10 ↓
SAM 3D 0.7062 0.1993 0.5898
Hy3D-Omni 0.6837 0.1729 0.5926
ShapeR 0.5626 0.1407 0.7767
Axolotl3D 0.7616 0.1903 0.4235

本文在预测深度下的 F-score 与 CD 最好,但 vIoU 不及 SAM 3D 的 0.1993;主文“所有指标最好”的文字与该表不符,应以逐列结果为准。 相机扰动采用 10 度旋转噪声、10% 平移尺度噪声和 ±5% 焦距抖动,本文 F-score 为 0.7620,接近无扰动的 0.7616。 这说明该测试中的中等相机误差影响较小,不能据此推出严重深度误差也同样无害。 定性结果明确展示了强深度误差下的退化,以及细结构未能连接的失败案例。

亮点与洞察

  • 将编辑区域看作“不再有效的旧观测”,使编辑和遮挡补全共用相同条件接口。统一发生在信息有效性的定义上,而不只是把多个任务名称放进一个模型。
  • 部分点云和可见背景提供互补约束:前者说明表面在哪里,后者帮助排除不应被物体占据的空间。生成先验则用于解释其余未知区域。
  • 图像与点云增强不完全同步是有针对性的设计。它迫使模型学会在某一种模态信息不足时利用另一种模态,而非始终依赖点云。

局限与展望

  • 作者承认忠实跟随点云会放大严重深度预测错误,未来需要更好地兼顾几何忠实性与噪声鲁棒性。可信度感知的点条件是读者提出的可探索方向,不是本文已验证模块。
  • 球面相机、固定距离和内参的训练设定限制了采集分布的多样性。作者也将更多样相机位置与纹理支持列为后续工作。
  • 表 1、表 2 不能支持“所有条件下所有指标都最好”的结论。尤其多视图体积重合度和预测深度 vIoU 存在明确反例。
  • 编辑、真实图像重建和物理仿真主要通过应用示例说明可行性,主文没有对应的大规模编辑保持度或仿真稳定性指标。
  • 本次可读来源为主文;其引用的补充材料细节未单独核验,且两条主要公式存在文本提取损坏,不能据此补出未展示的实现细节。

相关工作与启发

  • 对比 Amodal3R:两者都使用遮挡有效性信息,但 Axolotl3D 增加显式部分点云及相机条件,使三维几何不必仅从图像中间接推断。
  • 对比 Hy3D-Omni:后者支持多种几何控制,但这里仍是单图条件,且用 Pix2Gestalt 预先补全遮挡图。本文将遮挡处理纳入生成器的条件接口和训练分布。
  • 对比 ShapeR:两者都结合图像、点云和相机,ShapeR 面向 SLAM 输出;本文更强调遮挡与编辑的统一。表 1 支持更强的单视图结果,但不支持否定 ShapeR 的多视图优势指标。
  • 对比 Instant3dit:图像修补可以继续充当上游编辑工具,而本文的部分几何条件负责约束未修改区域。后续研究可单独评估修改幅度与未编辑区域保持度,避免只看整体重建分数。

评分

  • 新颖性: 4/5。主要贡献是条件接口和训练任务的一致设计,而非全新生成骨干。
  • 实验充分度: 4/5。包含两套数据、遮挡、点数、预测深度与组件消融,但应用量化及部分比较公平性仍有限。
  • 写作质量: 4/5。方法脉络清楚,少数概括性效果主张需要结合表格逐项修正。
  • 价值: 4/5。为受几何约束的补全与编辑提供了可复用思路,真实部署仍取决于输入几何质量。