cilantro
是一个精简快速的C ++库,用于处理点云数据,重点是3D案例。它包括各种常见操作的高效实现,提供干净的API并尝试最小化样板代码的数量。该库具有广泛的模板化,可以对任意数值类型和维度(如果适用)的点数据进行操作,并具有更复杂过程的模块化/可扩展设计,同时为最常见的方法提供方便的别名/包装器案例。cilantro
可以在我们的技术报告中找到高级描述。
一般尺寸kd树(使用捆绑的nanoflann)
原点云的曲面法线和曲率估计
基于通用维度网格的点云重采样
主成分分析
用于3D点云的基本I / O实用程序(采用PLY格式,使用捆绑的tinyply)和特征矩阵
RGBD图像对与点云转换实用程序配对
从顶点或半空间交叉输入计算(使用捆绑的Qhull)的一般维度凸多面体表示,并允许在各个表示之间轻松切换
通用(一般维度)空间区域的表示,作为实现集合操作的凸多面体的联合
RANSAC估计器模板及其实例,用于稳健的平面估计和刚性点云登记
用于点对点和点对面度量(及其组合)的完全通用的迭代最近点实现,支持任意点要素空间中的任意对应搜索方法
经典多维尺度(使用捆绑光谱进行特征分解)
功能强大,可扩展且易于使用的3D可视化工具
cilantro,一个用于几何和通用点云数据处理的开源C ++库。该库提供的功能涵盖了低级点云操作,空间推理,各种点云分割方法和通用数据聚类,灵活或局部几何对齐的灵活算法,模型拟合以及强大的可视化工具。为了适应各种工作流程,cilantro几乎完全模板化,其大多数通用算法都在任意数据维度上运行。同时,该库易于使用且具有高度表现力,促进了简洁的编码风格。cilantro经过高度优化,具有最小的外部依赖性,并支持在各种环境中快速开发高性能点云处理软件。