繁体   English   中英

嘈杂的 3D 点云到 python 中的插值表面网格

[英]Noisy 3D point cloud to interpolated surface mesh in python

我的总体目标是从描述表面的嘈杂点云到Python中的常规表面网格。 我找到了一些解决这个问题的方法,但没有一个能很好地适用于我的情况。 我发现的最好的:

  • B样条->对其进行采样->获取新点。 这会根据一组常规的 x,y 坐标计算 function 的 z 值,这对于近乎垂直的表面效果不佳,其中我有很多。
  • 滚球/凸包算法。 我的数据沿着表面的法线有噪声,所以我会得到一个“膨胀”的表面。 我首先需要对其进行去噪,这本身需要计算样条曲线或类似的东西。

我觉得必须有一种“简单”的方法来做到这一点,但我只是不知道要寻找什么。 有人可以指出我正确的方向吗?

我最好的猜测是应该有一种方法可以相对于自身“定期”对样条曲面进行采样,但我不知道如何。

您描述的问题称为surface reconstruction 有许多算法和软件(独立程序或库)能够从一组样本点重建一个表面。 如果您只有点的 XYZ 坐标,或者您有更多信息作为表面的颜色或法线,则存在重要差异。

命名一些示例,您可以使用:

  • Kazhdan 和 Bolitho放映的 Poisson 这是在 meshlab 和许多其他 python 库中实现的。 可能是你最好的选择。
  • PowerCRUST ,由 Nina Amenta、Sunghee Choi 和 Ravi Kolluri 撰写。
  • Ball Pivoting ,由 Bernardini、Mittleman 等人撰写。 很简单,很容易自己实现。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM