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宽度)解码为目标值。
关键设计¶
-
网格简化构建多分辨率:
- 使用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作为最细分辨率)
- 关键优势: 不需要计算分辨率间的几何映射,减少计算开销
-
多分辨率特征聚合:
- 每个分辨率 \(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))\)
-
重心坐标特征插值:
- 对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)\)
- 仅需一次重心坐标插值(而非每个分辨率都插值),计算高效
-
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原生支持: 这是参数化编码绑定顶点的副产品,但对动画应用价值很大
局限与展望¶
- 多分辨率比例 \(r^{(i)}\) 是固定的,未根据mesh局部复杂度自适应调整
- 特征维度 \(d\) 较小(4),对特别精细的纹理可能不够(但增大 \(d\) 时精细mesh存在过拟合)
- 仅验证了纹理重建和BRDF估计两个任务,未探索SDF/占位函数等其他神经场应用
- 网格简化算法(QEM)可能在极端简化时丢失重要拓扑,对小物体或细长结构可能不佳
- 预处理(网格简化+映射计算)时间虽比LBO特征函数快得多(秒级vs小时级),但仍有开销
相关工作与启发¶
- Instant NGP (欧氏空间): 哈希网格多分辨率特征 → MeshFeat将此思想迁移到mesh表面
- Intrinsic Neural Fields: LBO特征函数 = mesh上的频率编码 → MeshFeat = mesh上的参数化编码,两者是互补的编码范式
- Texture Fields: 最早的mesh神经场方法,但extrinsic → MeshFeat的特征绑定顶点是intrinsic
- 启发: 当数据存在自然的分层结构(如mesh拓扑)时,利用域特定的简化/分层算法比通用的哈希/网格方法更高效
评分¶
- 新颖性: ⭐⭐⭐⭐ (mesh简化→多分辨率特征的迁移思路简洁优雅)
- 实验充分度: ⭐⭐⭐⭐ (纹理/BRDF/变形mesh/消融实验全面)
- 写作质量: ⭐⭐⭐⭐⭐ (公式精炼,图表清晰,各模块设计动机交代充分)
- 价值: ⭐⭐⭐⭐ (为mesh上的高效神经场表示提供了实用方案,动画领域潜力大)
相关论文¶
- [ECCV 2024] LN3Diff: Scalable Latent Neural Fields Diffusion for Speedy 3D Generation
- [ECCV 2024] GeometrySticker: Enabling Ownership Claim of Recolorized Neural Radiance Fields
- [ECCV 2024] G2fR: Frequency Regularization in Grid-Based Feature Encoding Neural Radiance Fields
- [ECCV 2024] BeNeRF: Neural Radiance Fields from a Single Blurry Image and Event Stream
- [ECCV 2024] Omni-Recon: Harnessing Image-Based Rendering for General-Purpose Neural Radiance Fields