在阅读了两个不错的帖子后 简化 3d 表面的算法? https://stackoverflow.com/questions/838761/robust-algorithm-for-surface-reconstruction-from-3d-point-cloud 我还有一个关于表面重建的问题。
我有一些来自测距相机的 3d 点云数据。这意味着点云数据是嘈杂的,只有坐标 (x,y,z) 信息,并且只表示扫描场景的部分表面(又名 2.5D 数据)。
在尝试对它们进行网格化之前,我运行了一些对齐算法(例如 ICP)将多个范围数据合并为一个。不知何故,对齐并不完美,它让合并数据集有一些重叠不好的表面伪影,整个数据变得更加嘈杂!
这是一个插图。
here are points representing a surface (shown as a line)
.....................................................
here are points representing actually the same surface as the one above,
but due to imperfect alignment of multiple data sets they seem overlapping like onion shell.
............................
.............................
...............................
.......................................
算法(例如球旋转、泊松、行进立方体)可以处理这种情况吗?还是我需要一些预处理来使数据集更薄以减少重叠表面?
顺便说一句,我已经尝试使用 MeshLab 仅使用球旋转来从此类数据集中重建表面。它可以工作,但是某些表面法线是在错误的方向上生成的。我认为重叠点会导致这样的问题。
MeshLab中生成的曲面,黑白曲面法线方向不同。
感谢您的任何建议和可能的答案。