PCL 核心功能与关键配置
三、核心功能与关键配置
模块概览
| 模块 | 功能 | 常用算法 |
|---|---|---|
| filters | 点云滤波与降采样 | VoxelGrid、PassThrough、StatisticalOutlierRemoval、RadiusOutlierRemoval |
| segmentation | 分割与聚类 | SACSegmentation、EuclideanClusterExtraction、区域生长 |
| features | 特征描述子 | 法线估计、FPFH、SHOT |
| registration | 配准 | ICP、GICP、NDT、基于特征的初始配准 |
| search | 空间搜索 | KdTree、Octree |
| surface | 曲面重建与平滑 | 贪心三角化、泊松重建、移动最小二乘 |
| io | 读写 | PCD、PLY、OBJ |
配准算法对比
| 算法 | 原理 | 适用与注意 |
|---|---|---|
| ICP | 迭代最近点,逐步优化刚体变换 | 要求初始位姿足够接近,否则会收敛到局部最优 |
| GICP | 在概率框架下考虑局部协方差 | 对结构化场景更稳健,计算量更大 |
| NDT | 把点云转成体素内的正态分布再配准 | 常用于激光里程计,网格大小是关键参数 |
关键参数
| 参数 | 作用 | 调参方向 |
|---|---|---|
| 体素边长 leaf size | 降采样粒度 | 直接决定后续算法看到的数据密度,是整条链上最重要的一个数 |
| 距离阈值 | RANSAC 判定内点的容差 | 要大于传感器噪声、小于目标结构的尺寸 |
| 聚类容差 | 两点算不算同一簇 | 必须大于点间距(由分辨率决定),否则一个物体会被切成多块 |
| 最小/最大簇点数 | 过滤噪声与超大簇 | 按目标尺寸和点云密度估算 |
| 最大迭代次数 | ICP 迭代上限 | 配合收敛判据一起设 |
| 最大对应点距离 | ICP 的对应关系搜索范围 | 初始误差大时先放大,再逐步收紧 |
| 变换收敛阈值 | 两次迭代变换的差异下限 | 太小会白跑迭代,太大会过早停止 |

