英文官网资料
知乎汇总资料
黑马机器人点云教程
PCL常用小知识几何计算
01common
02kdtree k维tree
03octree 八叉树
04search
05sample consensus 抽样一致性模块
06range-images深度图像
07tracking (此模块,没有官方示例代码)
08 io 输入输出
09 filters 滤波
10 features 特征
11 surface表面
12 segmentation分割
13 recognition识别(下图中没有)
14 registration配准
15 visualization可视化
16 keypoints关键点
PCL根据官方分类的各模块整理
01-Common
。
02-KdTree
点云数据处理中最为核心的问题就是建立离散点间的拓扑关系,实现基于邻域关系的快速查找。
通过三维坐标的三个维度对坐标进行分类,并辅助快速查找。
03-OcTree
将空间分成卦限,并对感兴趣的卦限进行细分,直到满足研究条件。所以也叫八叉树。
OCtree模块包含18个类,功能是:对点云进行压缩/分类/检索。
OcTree和KdTree各有优劣。
04-Search
木有这个模块的内容。之后再回来看。
05-Sample consensus
对点云进行模块采样,采样基于RANSAC原理进行“特征”提取。
感觉也是没有完全理解,回头再来看看。
06-Range-images
由于某些点云是直接来自于深度相机产生的,利用这一信息,可以快速地得到点云的某些特征。
例如从点云中识别出物体的轮廓。
07-Tracking
空白。
08-IO
输入输出。
09-Filter
主要包含两种功能:
- 去除点云中的噪声点/离群点/孔洞;
- 根据索引选取点云中的一部分(子集)。
10-Features
特征提取。目前来看它的原理与OpenCV的特征提取类似,都是通过提取特征算子来对一定邻域内的点进行特征分类。
还不清楚是使用怎样的准则来提取特征,回头还要回来看看。
11-Surface
- 使用多边形对模型进行表面重建。
- 对模型表面法线进行估计。
12-Segmentation
点云分割是根据空间,几何和纹理等特征对点云进行划分,使得同一划分内的点云拥有相似的特征。点云的有效分割往往是许多应用的前提,例如逆向工作,CAD领域对零件的不同扫描表面进行分割,然后才能更好的进行空洞修复曲面重建,特征描述和提取,进而进行基于3D内容的检索,组合重用等。
- 欧几里得分割:把整体点云中的各个分块分割开,如果某一个集合和另一个集合之间有距离,那么就单独取出来作为一类。
13-Recognition
同一个物体在变换到了另一个地方之后,仍然可以通过它的点云特征识别出来这个物体。
14-Registration
模型配准:把在不同视角下不同相机采集到的点云合并成到一起,识别出哪些点是公共点。
这个模块同时也可以当作模板匹配来用。
15-Visualization
可视化模块,可以方便地提供一些法线等可视化选项。
16-KeyPoints
根据一些典型特征,在全局点云中提取出关键点。