从点云创建不规则的3D几何体

时间:2014-12-22 17:34:52

标签: algorithm 3d geometry computational-geometry

我有一大组3D点,每个轴的间距相等。根据某些标准剔除了许多这些点,我想创建一个3D几何图形来帮助可视化剩下的内容。

我已经研究了一些算法来创建一个三角形网格,例如Delaunay Triangulations或一个凸包,但是我担心一些被排除的点可能会被捕获到几何体中。例如,2D切片可能如下所示:

0 0 0 1 1 0 0   
0 0 1 1 1 1 0   
0 1 1 1 1 1 1   
1 1 0 1 0 1 1   
0 1 0 0 0 1 0  

包含" 1" s" 0" s被排除在外。在这种情况下,我担心算法会在底部行意外地包含" 0"因为它们的两边都有" 1" s。请注意," 0" s将始终位于边缘,因此我们不必担心几何体中的孔。

之后,我需要能够旋转几何体并找到它与平面的交点。我非常确定我能够处理旋转和交叉部分,但请记住这一点。

我可以通过为表面上的所有点创建每个三角形来强制解决问题,然后手动剔除包含排除点的任何三角形。但是数据集可能非常大,所以我希望有一个更优雅的解决方案。

2 个答案:

答案 0 :(得分:0)

如果您只对封闭的几何图形感兴趣并且每个都在平面上,您是需要网格/三角形还是只需要一组多边形?

将0,1数据转换为二进制图像并运行轮廓算法非常简单,请参阅OPENCV

答案 1 :(得分:0)

我认为你正在寻找Point Cloud Library