我应该怎么做才能学习如何从点云中检测球体?

What should I do to learn how to detect a sphere from point clouds?

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

定期传播?

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

球体与立方体

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

CV 中的球体

与此相关的是计算机视觉中用于检测圆圈的 (Circle) Hough Transform。基本上可以用边缘做一种极坐标变换,也可以找到线。

如何找到要测试的内容

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