跳转至

MeshFeat: Multi-Resolution Features for Neural Fields on Meshes

会议: ECCV 2024
arXiv: 2407.13592
代码: https://maharajamihir.github.io/MeshFeat/ (有)
领域: 3D视觉
关键词: 参数化特征编码, 多分辨率网格, 神经场, 网格简化, 纹理重建

一句话总结

提出MeshFeat,一种适用于mesh上神经场的参数化多分辨率特征编码方法,利用网格简化算法构建多分辨率特征表示,在保持重建质量的同时实现13倍推理加速。

研究背景与动机

领域现状: 神经场(Neural Fields)在3D场景表示中广泛应用;欧氏空间中的参数化特征网格(如Instant NGP的哈希网格)通过解耦空间信息和MLP解码大幅提升推理速度

现有痛点: - mesh上的神经场编码方法(如Texture Fields、Intrinsic Neural Fields)都使用频率编码(positional encoding/Fourier features/LBO特征函数) - 频率编码将所有信息存储在MLP权重中,需要大MLP(6层×128宽度),推理慢 - Intrinsic Neural Fields(INF)需要计算Laplace-Beltrami算子特征函数,预处理可能需要数小时;存储每个顶点的大量特征函数,模型size大 - 欧氏空间中直接使用Euclidean embedding做编码会导致bleeding artifacts(当欧氏距离和测地线距离差异大时)

核心矛盾: 欧氏空间中参数化特征网格已实现实时推理,但mesh上仍停留在频率编码+大MLP的范式,推理效率低下

本文目标: 将参数化多分辨率特征网格的思想从欧氏空间迁移到mesh上,实现小MLP、快推理

切入角度: 利用mesh自身的顶点拓扑作为特征存储位置(代替规则体素网格),用mesh简化算法(而非八叉树/哈希表)构建多分辨率

核心 idea: 网格简化 = mesh上的多分辨率特征网格,实现小MLP快推理

方法详解

整体框架

MeshFeat pipeline:输入mesh → 用网格简化算法生成多分辨率mesh序列 → 每个分辨率存储可学习特征矩阵 → 通过顶点映射将所有分辨率的特征"拉回"到原始分辨率 → 重心坐标插值得到任意点的特征 → 小MLP(2层×32宽度)解码为目标值。

关键设计

  1. 网格简化构建多分辨率:

    • 使用Garland-Heckbert的二次误差度量(QEM)简化算法
    • 简化比例序列 \(r^{(i)} \in \{1, 0.1, 0.05, 0.01\}\),即保留100%/10%/5%/1%的顶点
    • 产生mesh序列 \(((V^{(i)}, F^{(i)}))_i\)
    • 记录每个原始顶点在简化过程中被折叠到了哪个新顶点的映射 \(m^{(i)}: V \to V^{(i)}\)
    • \(r^{(1)}=1\)\(m^{(1)}\) 为恒等映射(原始mesh作为最细分辨率)
    • 关键优势: 不需要计算分辨率间的几何映射,减少计算开销
  2. 多分辨率特征聚合:

    • 每个分辨率 \(i\) 维护可学习特征矩阵 \(Z^{(i)} \in \mathbb{R}^{|V^{(i)}| \times d}\)\(d\) 为特征维度
    • 与欧氏空间特征网格的关键区别: 不是在每个分辨率独立插值再concatenate,而是先将所有分辨率的特征通过映射 \(m^{(i)}\) "拉回"到最细分辨率再求和
    • 原因:mesh上某分辨率的点在其他分辨率mesh上可能不存在(甚至欧氏嵌入不在mesh上)
    • 原始mesh上顶点 \(v\) 的聚合特征:

    \(\phi_v = \sum_i Z^{(i)}(m^{(i)}(v))\)

  3. 重心坐标特征插值:

    • 对mesh上任意点 \(x\),计算其在所在三角形中的重心坐标 \(p(x) = [\lambda_1, \lambda_2, \lambda_3]^\top\)
    • 最终特征编码:

    \(\phi(x) = \sum_i \lambda_i \phi_{v_i} = [\phi_{v_1}, \phi_{v_2}, \phi_{v_3}] \, p(x)\)

    • 仅需一次重心坐标插值(而非每个分辨率都插值),计算高效
  4. Mesh Laplacian特征正则化:

    • 问题:稀疏训练数据下,某些顶点可能从未被光线-mesh交点命中,特征无监督信号
    • 解决:基于mesh Laplacian的平滑正则化

    \(\mathcal{L}_{reg} = \sum_{i,j} |(\hat{L}\Phi)_{i,j}|\)

    其中 \(\hat{L} = L / \|L\|_2\) 是谱范数归一化的Laplacian,\(\Phi\) 是所有顶点的聚合特征矩阵 - 使用L1范数(而非L2),允许稀疏的大变化(保留纹理边缘),同时惩罚相邻特征的大幅波动 - 正则化虽然只在最高分辨率计算,但因为作用在聚合特征上,实际上影响所有分辨率 - 使用Sharp & Crane的robust Laplacian实现

损失函数 / 训练策略

  • 纹理重建:L1颜色损失 + Laplacian正则化(\(\lambda_{reg} = 1.5 \times 10^{-6}\)
  • BRDF估计:L1 + gamma矫正(处理HDR图像中亮暗区域不平衡)
  • 双学习率策略:MLP参数 \(lr_\theta = 2 \times 10^{-4}\),特征编码 \(lr_Z = 5 \times 10^{-3}\)(特征学习率更高)
  • 特征维度 \(d=4\),特征初始化 \(\sigma = 5 \times 10^{-4}\)
  • MLP: 2隐层 × 32宽度 + ReLU + sigmoid输出 + L2正则(\(10^{-5}\))
  • batch size = 8000,纹理训练1000 epochs,BRDF训练500 epochs

实验关键数据

纹理重建 — human mesh (\(|V|\)=129k)

方法 PSNR↑ DSSIM↓×100 LPIPS↓×100 参数量 加速倍数
NeuTex 27.32 0.549 0.954 793k 1.0×
TF+RFF 32.10 0.232 0.423 331k 1.96×
INF 32.46 0.215 0.390 133k (特征函数130k) 3.06×
Ours (d=4) 32.51 0.202 0.400 604k 13.49×
Non-neural 32.01 0.225 0.432 391k 28.32×

BRDF重建 — DiLiGenT-MV (5物体平均)

方法 PSNR↑ DSSIM↓×100 LPIPS↓×100 加速倍数
TF+RFF 42.13 0.672 1.50 1.00×
INF 42.21 0.666 1.53 1.08×
Ours 42.17 0.670 1.60 7.58×

关键发现

  • 速度: MeshFeat实现13.49×加速(相对NeuTex),原因是MLP从6层×128宽度缩减为2层×32宽度
  • 质量: PSNR/DSSIM/LPIPS与最佳频率编码方法(INF)相当甚至略优
  • 参数量权衡: 参数量略高于TF+RFF(需存储特征矩阵),但远小于INF(需存储大量LBO特征函数)
  • 多分辨率 vs 单分辨率: 多分辨率方案用更少参数实现更高质量,单分辨率即使增大特征维度也无法弥补
  • 正则化关键: 无Laplacian正则时PSNR下降1.26dB(human),出现明显视觉artifacts(耳朵、鞋子区域)
  • 变形mesh原生支持: 特征绑定在顶点上,mesh拓扑不变 → 变形后无需任何额外计算

亮点与洞察

  • 优雅的类比迁移: 欧氏空间中"规则网格→多分辨率"的思想,在mesh上对应为"顶点拓扑→网格简化",概念清晰
  • "拉回"而非"逐分辨率插值": mesh不同分辨率间没有自然的点对应关系,因此先将特征拉回到最细分辨率再插值,解决了mesh多分辨率特征插值的核心难题
  • L1 Laplacian正则: 比L2正则更好地平衡了平滑性和边缘保持,适合纹理场景
  • 变形mesh原生支持: 这是参数化编码绑定顶点的副产品,但对动画应用价值很大

局限与展望

  1. 多分辨率比例 \(r^{(i)}\) 是固定的,未根据mesh局部复杂度自适应调整
  2. 特征维度 \(d\) 较小(4),对特别精细的纹理可能不够(但增大 \(d\) 时精细mesh存在过拟合)
  3. 仅验证了纹理重建和BRDF估计两个任务,未探索SDF/占位函数等其他神经场应用
  4. 网格简化算法(QEM)可能在极端简化时丢失重要拓扑,对小物体或细长结构可能不佳
  5. 预处理(网格简化+映射计算)时间虽比LBO特征函数快得多(秒级vs小时级),但仍有开销

相关工作与启发

  • Instant NGP (欧氏空间): 哈希网格多分辨率特征 → MeshFeat将此思想迁移到mesh表面
  • Intrinsic Neural Fields: LBO特征函数 = mesh上的频率编码 → MeshFeat = mesh上的参数化编码,两者是互补的编码范式
  • Texture Fields: 最早的mesh神经场方法,但extrinsic → MeshFeat的特征绑定顶点是intrinsic
  • 启发: 当数据存在自然的分层结构(如mesh拓扑)时,利用域特定的简化/分层算法比通用的哈希/网格方法更高效

评分

  • 新颖性: ⭐⭐⭐⭐ (mesh简化→多分辨率特征的迁移思路简洁优雅)
  • 实验充分度: ⭐⭐⭐⭐ (纹理/BRDF/变形mesh/消融实验全面)
  • 写作质量: ⭐⭐⭐⭐⭐ (公式精炼,图表清晰,各模块设计动机交代充分)
  • 价值: ⭐⭐⭐⭐ (为mesh上的高效神经场表示提供了实用方案,动画领域潜力大)

相关论文