PointCloud1

Module

features

涵盖了从3D点云数据中进行3D特征估计的数据结构和机制。最广泛使用的特征是一个点的curvature(曲率)和normal(法向量)。通过K近邻得到这些作为局部特征。首先将空间进行分割,如利用kD-trees,最近点搜索在这些空间中进行。选择点P最近的k个点,或以P为圆心半径为R的球中的点。
在这里插入图片描述
一个简单的方法求法向量和曲率是对这些点特征分解(eigendecomposition),最小的特征值对应的特征向量近似于点P的法向量n,曲率可以通过特征值估计:
λ 0 λ 0 + λ 1 + λ 2 \frac{\lambda_0}{\lambda_0+\lambda_1+\lambda_2}λ0+λ1+λ2λ0
在这里插入图片描述

keypoints

实现了一些关键点检测算法,关键点和描述子可以用来表征原始数据。

registration

在不同的数据集合之间进行匹配,找到了一个最优的变换,误差最小。
在这里插入图片描述

octree

层次树结构,用于空间分割,下采样以及搜索操作。每一个结点有8个孩子或没有子结点。根结点描述了一个立方体的bbox,包含了所有点。
提供了高效的最近邻搜索路线,对点云数据集合自动调整维度。
在这里插入图片描述

segmentation

分割

sample_consensus

包括一些通用模型,如平面,线,圆柱体,球体等。以及一些SAC methods,如RANSAC。

surface

对3D扫描得到的进行重建,如果cloud是有噪声的,或者有多个扫描单没有对齐,那么平滑和重采样就很重要。
在这里插入图片描述
创建surface的常用方法是网格,将点进行快速三角化这是一个快速的方法。

在这里插入图片描述当需要一个简化的面或需要抽取边界时,创建convex或concave hull就很有用。
在这里插入图片描述

recognition

io

实现了3D点云数据文件(PCD)的读写操作,以及从感知设备中捕获点云。

visualization

实现可视化,类似于OpenCV的highgui。


版权声明:本文为m0_37706703原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。