首页 > 解决方案 > 我应该怎么做才能学习如何从点云中检测球体?

问题描述

我有一个项目,我的团队应该实现一个关于从点云检测球体的算法,但我真的不知道如何开始它以及我可以从哪里学习这些知识。你能给我推荐一些相关的文章或论文吗?非常感谢!

标签: algorithmpoint-clouds

解决方案


定期传播?

您可以尝试PCA并查看协方差矩阵的特征值。如果它们大致相同,则这意味着数据在每个方向上的分布大致相同。这意味着它可能是一个球体,但也可能是一个立方体......

球体与立方体

如何判断它是球体还是立方体?这是相当艰难的。我唯一能想到的就是在几个不同的方向上从中心到最远的点的距离,看看它们是否都大致相同(低方差),那么它很可能是一个球体。如果距离变化很大,也许你得到的角或边更靠近中心,那么它可能是一个立方体(或者可能是其他多边形)。

CV 中的球体

与此相关的是(圆形)霍夫变换,它在计算机视觉中用于检测圆形。基本上可以对边缘进行一种极坐标变换,也可以找到线条。

如何找到要测试的内容

如何找到要看的点?您可以尝试某种聚类,例如 k-means。如果您不知道有多少集群,DBSCAN很有趣,可能值得一试。基本思想是获取这些点并在它们周围展开 ε 球,以查看它们连接到的其他球。最终,大多数事物都是相互关联的,并且您拥有集群和异常值。


推荐阅读