背景:
pcl官方教程:http://www.pointclouds.org/documentation/tutorials/region_growing_segmentation.php#region-growing-segmentation
1. 使用感受
这个算法适合分割规则的物体或者说四四方方的东西,像房屋轮廓,纸箱折叠的情景。如官方给的效果图:

这个算法主要有4个参数来设置,我个人觉得算法还算是使用者友好的。主要要设置聚类点数上下界,蔓延时候搜索出来多少个附近点,面平滑阈值还有面的曲率阈值。
2. 算法细节
为了了解设置这些参数,让我们来了解一下如何内部细节。从官方的介绍里,算法的流程是写的很仔细的。为了让你更直观的明白,我概括的来说,就是从曲率小的面播种,从种子的位置出发,开始往四周搜索点,然后比对点于点之间的曲率和法线方向,如果差距小于阈值就视为同一个cluster。如果一个cluster无法再蔓延,在剩下的点云里再找曲率小的面播种,然后继续重复直到遍历完毕。
3. 调参
面平滑阈值(用于对比法线)还有面的曲率阈值(用于对比曲率)是最重要的参数。如果调大了,不仅仅是同一个平面,两个平面(它们的连着处弧度变化小的)都被视为同一个cluster.
可以参考
https://github.com/PointCloudLibrary/pcl/blob/master/segmentation/include/pcl/segmentation/region_growing.h4.跑自己的数据集
reg.setSmoothnessThreshold (3.0 /

本文详细介绍了PCL库中的Region Growing Segmentation算法,适用于分割规则物体,如房屋轮廓。算法通过设置聚类点数、搜索范围、面平滑阈值和曲率阈值进行点云分割。在实际应用中,调整这两个阈值对分割效果影响显著,过高或过低都可能导致分割失败。面对有噪声的点云和物体转折处,算法表现欠佳,调参要求较高,鲁棒性和普适性较低。

3928

被折叠的 条评论
为什么被折叠?



