PCL
大楠树
穿着西服撸代码的抠脚大汉。
展开
-
PCL函数库摘要——点云配准
/ 实现对应点的大小比较的仿函数:输人两个对应点对,比较它们的源点云索引后,输出真假值,若前者比较小输出true,否则输出false.// 实现对应点的大小比较的仿函数:输人两个对应点对,比较它们的目标点云索引后,后输出真假值,若前者比较小输出true,否则输出false。// 实现对应点的大小比较的仿函数:输入两个对应点对,比较它们的距离后输出真假值,若前者比较小输出true,否则输出false.-原创 2024-08-12 16:03:14 · 425 阅读 · 0 评论 -
PCL函数库摘要——点云滤波
类StatisticalOutlierRemoval,通过对查询点与邻域点集之间的距离统计判断来过滤离群点。类 BilateralFilter是对双边滤波算法在点云上的实现,该类的实现利用的并非XYZ字段的数据进行,而是利用强度数据字段进行双边滤波算法的实现,所以在使用该类时点云的类型中字段必须有强度字段,否则无法进行双边滤波处理,详细算法信息请参考C. Tomasi and R. Manduchi的文章Bilateral Filtering for Gray andColor Images。原创 2024-08-12 15:56:18 · 181 阅读 · 0 评论 -
PCL函数库摘要——3D点云特征描述与提取
类FPFHEstimation实现了FPFH(Fast Point Feature Histogram)描述子计算算法,该算子是局部点特征描述子之一,计算速度简单、并且不失描述性,主要针对点云配准中求对应点对而提出,后续实例中也讲到FPFH、SPFH概念,详细见Fast .Point Feature Histograms (FPFH) for 3D Registration。类SHOTEstimationOMP是SHOT算子基于OpenMP并行计算算法的实现,其接口详细参考类SHOTEstimation。原创 2024-08-12 16:41:39 · 229 阅读 · 0 评论 -
PCL函数库摘要——k-d tree与八叉树
类OctreePointCloudOccupancy实现了管理一八叉树,其叶子节点不存储任何数据,只是对输入点云所占据的空间通过叶子所处的体素来进行标志,这样就可以对点云所占据空间的情况进行评估和检测。类OctreePointCloudDensity实现了管理一八叉树,其叶子节点并非存储点云,只是对处于其叶子体素中的点云个数进行存储,即整个八叉树的叶子节点存储了输入点云的密度空间分布。类OctreePointCloudSinglePoint管理一八叉树,该八叉树叶子节点,存储在该节点体素中的单个点的索引。原创 2024-08-12 16:35:35 · 607 阅读 · 0 评论 -
PCL函数库摘要——点云曲面重建
PCL库种surface模块是用来对三维扫描获取的原始点云进行曲面重建的,该模块包含实现点云重建的基础算法与数据结构。原创 2024-08-12 16:31:44 · 398 阅读 · 0 评论 -
PCL函数库摘要——深度图像
RangeImagePlanar类来源于最原始的深度图像,但又区别于原始的深度图像,因为该类不使用球形投影方式,而是通过一个平面投影方式进行投影(照相机一般采用这种投影方式)。因此,对于已有的利用深度传感器获取深度图像来说较为实用,例如现有的立体照相机或者ToF照相机本身提供深度图像,这样就不需要将原始的深度图像转换为点云并再转换为球形投影的深度图像。RangeImage 类继承于PoinyCloud,主要功能是实现从一个特定视点得到的三维场景的深度图像。原创 2024-08-12 16:27:36 · 153 阅读 · 0 评论 -
PCL 采样一致性模型介绍
采样一致性可以简单高效的检测出一些具有数学表达式的目标模型。PCL中的sample consensus模块中不仅包含各种的采样一致性估计方法,也包含一些已经编写好的数学模型,下面主要介绍一下PCL中的采样一致性模型。原创 2024-08-12 16:25:59 · 611 阅读 · 0 评论 -
PCL 采样一致性方法介绍
默认情况下,如果不熟悉上述大多数估计器及其操作方式,使用RANSAC进行测试是万无一失的方法。原创 2024-08-12 16:14:57 · 316 阅读 · 0 评论 -
PCL函数库摘要——可视化
p,P:切换到点渲染模式。类PointCloudGeometryHandlerCustom实现了从给定点云中提取用户自定义字段的值,并用于VTK中可视化。类PointCloudColorHandlerGenericField实现从点云的一个普通字段生成颜色,并用于VTK中可视化。类PointCloudGeometryHandler实现了从给定点云中提取XYZ三个字段的值,并用于VTK中可视化。类pcl::visualization::RangeImageVisualizer实现对深度图像的可视化。原创 2024-08-12 16:11:02 · 377 阅读 · 0 评论 -
PCL函数库摘要——点云分割
类SACSegmentation< PointT >是利用采样一致性算法实现分割类,定义了所有相关的函数接口,该类的输入为设定需要分割的模型类型与相关参数,输出为最终估计的模型参数,以及分割得到的内点集合,利用不同的模型可以实现对点云中包含的不同类型的物体的分割,例如直线、平面、圆柱、圆球等的分割提取,在机器人自动识别提取领域应用非常方便,稳健性也非常好。原创 2024-08-12 16:06:56 · 304 阅读 · 0 评论 -
PCL函数库摘要——关键点
类SIFTKeypoint是将二维图像中的SIFT算子调整后移植到3D空间的SIFT算子的实现。类HarrisKeypoint2D实现基于点云的强度字段的 harris关键点检测子,其中包含了多种不同的harris关键点检测算法的变种,例如由JA Noble,Lowe、Tomasi等提出的Harris关键点检测算法。类HarrisKeypoint3D和 HarrisKeypoint2D类似,但是它没有在点云的强度空间检测关键点,而是利用点云的3D空间的信息表面法线向量来进行关键点检测。原创 2024-08-12 15:49:29 · 211 阅读 · 0 评论 -
PCL函数库摘要——IO模块
以上3个类分别封装了Kinect,Primesense,XtionPro相关设备操作和数据获取操作实现,其详细接口参考其父类OpenNIDevice的关键函数说明。封装了利用ONI文件回放虚拟类kinect设备的操作和数据获取操作实现,其详细接口参考其父类OpenNIDevice的关键函数说明。以上两个类分别是PCD、PLY文件格式读入接口的实现,详细参考其父类pcl: :FileReader。以上两个类分别是PCD、PLY文件格式写出接口的实现,详细参考其父类pcl: :FileWriter。原创 2024-08-12 15:38:22 · 230 阅读 · 0 评论 -
PCL-数据类型
Point是一个简单的XYZ坐标加intensity的point类型,xyz未与intensity位于同一个结构体。PointXYZ是使用最常见的一个点数据类型,因为它只包含三维xyz坐标信息,这三个浮点数附加一个浮点数来满足存储对齐,用户可以利用points[i].data[0],或者points[i].x访问点的x坐标值。PointWithViewpoint除了vp_x,vp_y,vp_z以三维点表示所获得的视点之外之外,其余与PointXYZI结构类似。原创 2024-08-12 15:16:02 · 127 阅读 · 0 评论 -
pcl-滤波模块
此算法原理是在被滤波的点云中创建一个三维体素栅格(可以将体素栅格想象成微小的空间三维立方体的集合),然后在每个体素(即三维立方体内),用体素中所有点的重心来近似显示体素中的其他点,这样该体素内所有点就用一个重心点表示。对于输入的点云数据中对点与临近点的距离分布计算,对于每个点,我们计算他到他所有临近点的平均距离,假设得到的结果是一个高斯分布,其形状由均值与标准差决定,平均距离在标准范围(由全局距离平均值和方差定义)之外的点,可被定义为离群点并可从数据集中去除掉。不如体素中的重心代替体素准。原创 2024-08-12 09:29:33 · 177 阅读 · 0 评论