【问题标题】:What algorithms exist for finding a bounding surface to a set of points?有哪些算法可以找到一组点的边界表面?
【发布时间】:2012-03-06 19:04:50
【问题描述】:

假设您有一个点云,并且您想要一个包裹这些点的曲面以将它们全部包围,并将它们包裹得相当紧密,以便与云中的外部点相交 - 您如何生成这个包裹曲面?也就是说,一些或许多点可能在体积内部,因此表面不需要与它们相交,只需将它们包围,但表面应该非常适合“外部”点层。

(我知道用于拟合网格的三角测量算法(例如 Delaunay)——我认为——一组中的所有点,但我认为该算法不会起作用,除非有一种很好的方法可以丢弃除点的外壳。请随时指出我在这里也缺少的方法!)

我应该寻找哪些算法(甚至搜索“网格”、“拟合”、“包装”、“点云”等之外的关键字)?

【问题讨论】:

    标签: algorithm 3d mesh point-clouds


    【解决方案1】:

    我认为您正在寻找convex hull algorithm。凸包是您将一组点包裹在某种包装纸中得到的形状,留下最外层边界。我可能误解了你的问题,但这听起来正是你要找的。​​p>

    希望这会有所帮助!

    【讨论】:

    • “凸壳”...听起来确实像我所追求的。也感谢您的链接。有使用特定算法的经验吗?
    【解决方案2】:

    我认为,您正在寻找的是一个凸包

    有关计算它的算法,请查看here

    【讨论】:

    • 感谢您的链接!这两种算法是否可以轻松扩展到 3D 点?
    【解决方案3】:

    您可以使用TetGen 来计算凸包,或者如果需要,在您的点集不是凸的情况下使用曲面三角剖分。

    我不确定这对你有用,Mathematica 有一个 TetGenLink 接口到 TetGen。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-02
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      • 2012-03-10
      • 1970-01-01
      相关资源
      最近更新 更多