一、算法原理
1、原理概述
半径滤波器的滤波思想非常直接,就是在点云数据中,设定每个点一定半径范围内周围至少有足够多的近邻,不满足就会被删除。比如你指定了一个半径d,然后指定该半径内至少有1个邻居,那么下图中只有黄色的点将从点云中删除。如果指定了半径内至少有2个邻居,那么黄色和绿色的点都将从点云中删除。
2、实现流程
- 点云数据构造K-D 树,建立点云拓扑关系。
- 求点云中任意一点邻域范围内邻近点个数。
- 判断邻近点个数是否小于判定阈值,若小于则认为该点为噪声点并去除。
- 重复上述步骤,直至点云中所有点都处理完毕。
3、主要函数
def remove_radius_outlier(self, nb_points