【发布时间】:2013-04-25 19:18:37
【问题描述】:
我想找到适合一组点内部的最大凸包。我有一组大致为圆形的点,在我想拟合的圆圈之外有大量异常点。想象一个带有“太阳耀斑”的圆圈......我想适应这个圆圈并完全忽略耀斑。我尝试了各种拟合和剔除策略,但效果不佳。
我搜索了很多,但没有找到解决方案。提前致谢。
【问题讨论】:
-
你能发布一两个点的示例吗?
-
您可能想查看Gabriel graph。那至少应该能够将您限制在最相关的边缘。如果您回答上述问题,我可能可以将其扩展为答案。
-
我已经发布了image 以供参考 - 它与我描述的不完全一样,但足够相似。我最终没有使用 alpha 形状,因为点之间的连接取决于选择的 alpha。太小的 alpha 可能不会关闭形状。太大的 alpha 将排除有效点。我最终做的是通过乘以环形掩码来屏蔽我不想要的数据,镜像环外边缘的点,拟合凸包,然后再次围绕环形环镜像该凸包。完美运行。
-
啊,这是我能想到的最糟糕的情况。我会建议一种不同的方法,但除非我错过了什么,否则听起来我的效率不会更高(O(N log N))。此外,它可能没有给出你想要的东西。也就是说,您可能需要考虑通过更详细地解释您的方法来回答您自己的问题,因为这可能对其他人有益。
标签: geometry curve-fitting convex-hull