本文旨在介绍近期在ICML 2023上发表的论文:NeuralSlice: Neural 3D Triangle Mesh Reconstruction via Slicing 4D Tetrahedral Meshes[1]。这篇论文提出一种适用在基于学习的三维重建中的新的三维几何表示方法:神经切片,并提出依赖于这种表示的网络结构以重建三维几何。
论文链接:
https://openreview.net/forum?id=HGVnUS6OYN
项目主页:
http://geometrylearning.com/neuralslice/
一、研究背景与动机
三维表示方式在基于学习的3D重建中是一个基础的问题。先前的工作主要分为隐式和显式两种方法。
其中显式主要分为体素,点云和mesh。然而,体素表达受到内存开销和计算开销的限制;点云可以高效表达三维物体,然而这种表示方式没有表面结构;mesh是一种使用非常广泛的三维表示,一些方法使用变形三维模板的方式来表示三维物体,这样很难表示复杂且多样的拓扑。
隐式方法刻画了三维坐标距离表面的距离,这种方法能够表示高质量且平滑的表面结构,然而得到高精度的mesh需要在三维空间中密集的采样并预测其隐式值,并且这种方式难以表示薄结构。
总的来说,显式的表面表示方法难以适应不同的表面拓扑,隐式表面表示方法计算开销大且难以表达薄结构。
此方法受到一个有趣的几何现象的启发,即一个高维几何的切片有着不同的拓扑。如下图所示,左边是我们高中就熟悉的圆锥曲线,用不同的平面切片3D圆锥能得到圆、椭圆、双曲线、抛物线等不同的2D几何。右边是一个更真实的例子:将一个球面变形为一个小牛后,虽然其在变形前不同超平面的拓扑都是一致的,但是在变形后的拓扑存在变化。受此现象启发,变形四维空间中的几何并用超平面切片出三维几何,以此表示不同拓扑的三维物体。
NeuralSlice是一种以纯显式的方法表示具有灵活拓扑的3D物体的方法,它将3D物体表示为4D可变形的四面体网格和可学习的4D超平面的交集。 这样可以快速重建具有灵活拓扑的mesh,同时表示薄结构。
二、方法
2.1 四维四面体网格表示
在三维空间中的mesh中表面的最小单元为三角形,同理,四维空间的mesh的“表面”最小单元为四面体。将一个三维空间的均匀四面体网格通过参数方程的方式映射到四维空间以构造四维四面体网格,这一过程类似与UV纹理映射。
构造好四维四面体网格后,接下来讨论如何做切片。由于四维物体是由四面体构成的,所以只需要讨论每一个四面体如何做切片即可。假设一个四面体和一个超平面在非顶点处相交,那么只存在两种情况:一个顶点在超平面的一侧,三个顶点在超平面的另一侧;两个顶点在超平面的一侧,两个顶点在超平面的另一侧。这两种情况仅需要计算四面体的边与超平面的交点并将一个四面体中的点连接即可。这种切片方式可以保证切片出manifold-mesh。
2.2 网络结构
作者还设计了一个subdivision模块来得到更精细的mesh,对于得到的粗mesh,对其进行三次subdivision,并用得到的局部特征指导细分后的mesh变形。
NeuralSlice使用Chamfer Distance作为损失函数,Laplacian smoothing作为正则项,同时还对Deform部分的网络做了Lipschitz归一化。
三、实验
3.1 表面重建
本实验的目标是从带噪点云重建表面,作者对比了一些隐式和显式方法。对于显式方法,对比了Atlas-Net[2], NMF[3], MNA[4] 等。NeuralSlice比起一些用球体变形的方法(Atlas-O,NMF-3,NMF-6),在同样变形一个模板的情况下,可以适应不同的拓扑。比起一些用atlas拼接的方法(Atlas-25,MNA-25),NeuralSlice有着更少的视觉裂缝,同时有着更高的精度。
同时作者还对比了一些隐式方法Occ[5], ConvOcc[6]。和隐式方法比起来,NeuralSlice的主要的优势是可以处理薄结构,如下图所示,这两种隐式方法在处理例如灯柄等薄结构时会出现问题。在速度方面NeuralSlice也有十倍左右的优势。
3.2 表达能力
DMTet[7]也是一种用四面体表示三维表面的方法,这一小节里主要讨论其与NeuralSlice的区别。在DMTet中,每个四面体网格顶点也有四个维度,分别是三维坐标和SDF值。NeuralSlice的这种表示可以在不同的切片有着不同的几何和拓扑。NeuralSlice可以在一个四面体网格内表达一个球体变形序列,或者更复杂的动物变形序列。除了变形外还可以在一个4D四面体网格内表达不同的拓扑,例如下图的飞机和椅子。这对DMTet是很难表示的。
参考文献
[1] Chenbo Jiang, Jie Yang, Shwai He, Yu-Kun Lai, Lin Gao. NeuralSlice: Neural 3D Triangle Mesh Reconstruction via Slicing 4D Tetrahedral Meshes. In Proceedings of the 40th International Conference on Machine Learning (ICML), 2023.
[2] Thibault Groueix, Matthew Fisher, Vladimir G. Kim, Bryan Russell, and Mathieu Aubry. AtlasNet: A papier-maˆche ́ approach to learning 3D surface generation. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2018.
[3] K. Gupta and M. Chandraker. Neural mesh flow: 3D manifold mesh generation via diffeomorphic flows. In Advances in Neural Information Processing Systems (NeurIPS), 2020.
[4] Weng Fei Low and Gim Hee Lee. Minimal neural atlas: Parameterizing complex surfaces with minimal charts and distortion. In European Conference on Computer Vision (ECCV), 2022.
[5] Lars Mescheder, Michael Oechsle, Michael Niemeyer, Sebastian Nowozin, and Andreas Geiger. Occupancy networks: Learning 3D reconstruction in function space. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2019.
[6] Peng Songyou, Niemeyer Michael, Mescheder Lars, Pollefeys Marc, and Andreas Geiger. Convolutional occupancy networks. In European Conference on Computer Vision (ECCV), 2020.
[7] Tianchang Shen, Jun Gao, Kangxue Yin, Ming-Yu Liu, and Sanja Fidler. Deep marching tetrahedra: a hybrid representation for high-resolution 3D shape synthesis. In Advances in Neural Information Processing Systems (NeurIPS), 2021.
作者:江晨搏
来源:公众号【图灵讨论班】