DMTET

基本信息

项目 内容
论文标题 Deep Marching Tetrahedra: a Hybrid Representation for High-Resolution 3D Shape Synthesis
作者 Tianchang Shen, Jun Gao, Kangxue Yin, Ming-Yu Liu, Sanja Fidler
作者单位 NVIDIA
时间 2021
发表会议/期刊 NeurIPS 2021

方法概览

特点 文章性质
输入 多模态输入,包括粗体素(16³ 分辨率)、带噪声的点云(5000 个点,高斯噪声 σ=0.005)
输出 核心输出为高分辨率 Triangle Mesh(支持任意拓扑),无 SDF 直接输出,SDF 仅作为中间表示
所属领域 兼具3D 生成与重建(核心为从粗体素生成高分辨率形状,支持带噪声点云重建)

一、摘要精简

DMTet 是一种深度三维条件生成模型,能够从简单的用户指导(如粗糙体素)合成高分辨率三维形状。它通过一种新颖的混合三维表示,结合了隐式与显式表示的优点。其核心是可变形四面体网格编码的离散 SDF 与可微 Marching Tetrahedra(MT)层的结合,融合隐式表示的拓扑灵活性与显式表面的监督优势。**与现有隐式方法通过回归符号距离值训练不同,DMTet 直接优化重建表面,能够合成更精细的几何细节并减少伪影。DMTet 的核心包括一个编码离散化符号距离函数的可变形四面体网格,以及一个将隐式符号距离表示转换为显式表面网格表示的可微分 Marching Tetrahedra 层。**该方法在从粗糙体素输入合成复杂动物形状的任务上显著优于现有工作。


二、引言与动机

  • 问题:现有 3D 表示方法存在明显短板:隐式场方法(如 SDF)依赖采样点的函数值回归,缺乏显式表面监督,生成细节易有伪影,且提取 Mesh 耗时;显式网格方法(如固定拓扑模板)受限于预设拓扑,无法建模复杂拓扑变化;体素方法计算和内存成本随分辨率立方增长,难以实现高分辨率生成。同时,普通用户易通过粗体素(如 Minecraft)创建简单 3D 形状,但缺乏将其升级为高分辨率资产的工具。因此,DMTET 的出发点是构建一种兼顾拓扑灵活性、细节保真度和计算效率的混合表示,通过可微 MT 层实现隐式到显式的端到端优化,让普通用户能从简单粗体素快速生成高质量 3D 形状,填补现有方法在高分辨率与实用性之间的缺口。
  • 出发点:提出一种混合三维表示,结合隐式表示的灵活拓扑与显式表示的表面直接监督优势,实现从粗糙输入生成高质量、高分辨率三维形状, democratizing 三维内容创作。

三、创新点(单独章节)

  1. 混合三维表示:结合隐式符号距离函数(SDF)和显式三角网格,通过可微分 Marching Tetrahedra(MT)层实现两者间的转换。
  2. 可微分 Marching Tetrahedra:首次证明 MT 可作为可微等值面提取层,支持隐式场表示的拓扑变化,解决了 Prior 工作认为 MT 存在奇点无法反向传播的问题,且 MT 比 Marching Cubes 更高效捕捉薄结构,量化误差更小。
  3. 隐式 - 显式混合表示:通过可变形四面体网格编码 SDF(隐式),经 MT 层转换为显式 Mesh,既保留隐式表示的任意拓扑支持,又能利用显式表面的监督信号(如 Chamfer 距离、对抗损失),提升细节质量。
  4. 粗到精优化策略:采用体积细分与表面细分的层级优化,体积细分仅对表面附近的四面体细分(按 SDF 符号变化判断),计算成本随表面积二次增长而非体积立方增长;表面细分采用可学习参数的 Loop 细分,修正经典细分的量化误差。
  5. 端到端条件生成框架:基于 PVCNN 编码器和 GCN 细化模块,从粗体素或点云直接预测高分辨率 Mesh,无需中间监督,结合对抗损失提升形状真实感,支持任意拓扑的形状生成与重建。

四、网络架构

  • 生成器
    1. 输入编码器:使用 PVCNN 从点云或粗糙体素表面采样点提取三维特征体,通过三线性插值为每个四面体网格顶点生成特征向量。
    2. 初始 SDF 预测:MLP 接收顶点特征与坐标,输出初始 SDF 值s(v)和顶点特征f(v)。
    3. 表面细化:构建表面四面体的图结构G=(Vsurf,Esurf),通过 GCN 预测顶点位置偏移Δvi和 SDF 残差Δs(vi),更新顶点坐标和 SDF 值,支持拓扑修正。
    4. 体积细分:对表面四面体及其相邻四面体细分(每条边添加中点,SDF 值取边端点平均),重复表面细化步骤,逐步提升分辨率。
    5. 表面细分:对 MT 提取的 Mesh 应用可学习 Loop 细分,GCN 预测顶点新位置和权重参数αi,优化表面光滑度与细节。
  • 鉴别器:基于 DECOR-GAN 的三维 CNN,作用于从预测网格计算的符号距离场局部块,判断其真实性。

五、特征提取

  • 输入编码:PVCNN 从输入点云提取三维特征体 FvolF_{vol},通过三线性插值获取网格顶点特征。
  • 顶点特征:顶点特征 fvf'_v 由顶点坐标 vv、SDF 值 s(v)s(v)、插值特征 Fvol(v,x)F_{vol}(v,x) 和 MLP 输出的特征 f(v)f(v) 拼接而成。
  • 图卷积细化:在表面顶点构成的图上应用 GCN,预测顶点偏移 Δvi\Delta v_i 和 SDF 残差 Δs(vi)\Delta s(v_i)

六、生成的三维模型细节

  • 输出类型:高分辨率三角网格
  • 是否带贴图材质:否,仅输出几何网格,不包含纹理材质
  • 表面细节:能够生成具有复杂拓扑和精细几何细节的形状,如动物的爪子、耳朵、眼睛等。

七、三维模型生成步骤

image-20251204224634226

  1. 输入预处理:
    • 粗体素输入:将原始 Mesh 体素化为 16³ 分辨率,采样 3000 个表面点作为输入;
    • 点云输入:从 ShapeNet Mesh 采样 5000 个点,添加 σ=0.005 的高斯噪声。
  2. 初始特征与 SDF 预测:PVCNN 提取输入特征体,MLP 为初始四面体网格的每个顶点预测 SDF 值和顶点特征。
  3. 粗到精表面细化:
    • 识别表面四面体(顶点 SDF 符号不同),构建图结构;
    • GCN 预测顶点位置偏移和 SDF 残差,更新顶点参数;
    • 对表面四面体及其相邻四面体进行体积细分,重复细化步骤。
  4. 显式 Mesh 提取:通过可微 MT 层,基于四面体顶点的 SDF 值,线性插值计算等值面顶点,生成三角 Mesh。
  5. 表面细分优化:对提取的 Mesh 应用可学习 Loop 细分,GCN 预测顶点新位置,提升表面光滑度与细节质量。
  6. 对抗优化:判别器对生成 Mesh 的局部 SDF 特征进行判断,生成器通过对抗损失优化,提升形状真实感。

八、相关工作与实验比较

参考的之前工作

  1. 隐式场方法:DeepSDF(连续 SDF 表示)、ConvOnet(卷积占用网络)、DMC(深度 Marching Cubes);
  2. 体素方法:DECOR-GAN(体素细节迁移)、Octree 生成网络(分层体素表示);
  3. 表面方法:Pix2Mesh(固定拓扑模板变形)、DefTet(可变形四面体网格)、MeshRCNN(Mesh 提取);
  4. 细分方法:Loop Subdivision(经典表面细分)、Neural Subdivision(可学习细分参数)。

对比的工作

  1. 核心对比对象:ConvOnet(隐式场 SOTA)、DECOR-GAN(体素细节迁移)、DefTet(可变形四面体)、Pix2Mesh(固定拓扑重建)、MeshRCNN(Mesh 提取)、3D-R2N2(体素重建)。
  • 评价指标
    • L2 倒角距离
    • L1 倒角距离
    • 法向一致性
    • 光场距离(LFD)
    • 分类分数(CIs,越低越好)
    • 用户研究(偏好比例)

九、损失函数

总损失为加权和:

L=λcdLcd+λnormalLnormal+λGLG+λSDFLSDF+λdefLdefL = \lambda_{cd} L_{cd} + \lambda_{normal} L_{normal} + \lambda_G L_G + \lambda_{SDF} L_{SDF} + \lambda_{def} L_{def}

其中:

  • 表面对齐损失

    Lcd=pPpredminqPgtpq2+qPgtminpPpredqp2L_{cd} = \sum_{p \in P_{pred}} \min_{q \in P_{gt}} ||p-q||_2 + \sum_{q \in P_{gt}} \min_{p \in P_{pred}} ||q-p||_2

    L_{normal} = \sum_{p \in P_{pred}} (1 - | ec{n}_p