[PCL] 3D特征点

目录

PFH (Point Feature Histogram)

FPFH (Fast Point Feature Histogram)

VFH (Viewpoint Feature Histogram)

CVFH (Clustered Viewpoint Feature Histogram)

RIFT (Rotation-Invariant Feature Transform)

NARF (Normal Aligned Radial Feature)


广泛使用的几何点特征的示例是下图的表面在查询点p处的估计曲率和法线。被认为是局部特征,因为它们使用由其k个最近点邻居提供的信息来表征点。

为了有效地确定这些邻居,输入数据集通常使用空间分解技术(八叉树或kd树)分割成更小的块( 上:kd-tree,下:八叉树),然后执行在那个空间里最近点搜索。 

 接下来介绍几种特征点性质属性,以及应用的场景领域。

PFH (Point Feature Histogram)

一种局部特征点。

输入格式:

(1)由一组带有方向的点P组成的点云。有方向意味着所有点都具有正常的N(法向量)。

(2)此功能不使用颜色信息。

工作原理:

(1)迭代点云P中的点。

(2)对于输入云中的每个点Pi(i是迭代索引),收集具有半径r的Pi周围的球体内的所有相邻点。 这个集合称为Pik(k为k个邻居)

(3)循环关于Pik中的两对点,比如p1和p2。 法线与矢量p1-p2的角度较小的点是源点ps,另一个是目标点pt。

(4)计算四个特征,它们一起表示目标点pt处的平均曲率。 将它们组合并放入等效的直方图箱中。

简短概述:

(1)为P中的所有的点云计算法线。

(2)估计P中的点Pi的特征:获取围绕点Pi(Pik)的半径r中的k个邻居的集合。在两点之间计算四个特征。相应的bin增加1.生成点特征直方图(PFH)。

(3)将得到的直方图组与其他点云的组进行比较,以便找到对应关系。 

FPFH (Fast Point Feature Histogram)

也是一种局部特征点,且是PFH(Point Feature Histogram)的一种扩展描述。

输入格式:

(1)由一组定向点P组成的点云。定向意味着所有点都具有正常的n(法向量)。

(2)此功能不使用颜色信息。(这些都和PFH一样的要求)

工作原理: 由于FPFH来自PFH,因此它的工作方式非常相似。但是有一些优化步骤使FPFH更快。

(1)迭代点云集 P 中的所有点云。

(2)对于输入点云中的每个点Pi(i是迭代索引),收集具有半径r的Pi周围的球体内的所有相邻点。这个集合称为Pik(k为k个邻居)。

(3)该循环仅将点Pi与其每个邻居相关联(记住在PFH中,循环将生成Pi对及其邻居以及_Pi_s邻居之间!)。在这样的一对中,法线与矢量p1-p2的角度小的点是源点ps,另一个是目标点pt。

(4)计算三个特征(PFH中的四个,Ps和Pt之间的距离被遗漏),它们一起表示目标点pt处的平均曲率。将它们组合并放入等效的直方图箱中。

(5)与FPFH中一样,仅考虑查询点Pi与其邻居之间的直接对(计算量少得多),得到的直方图称为SPFH(简单点特征直方图)。

(6)最后一步是新的:要重新补偿“丢失”连接,相邻的SPFH将根据其空间距离添加到Pi的SPFH。

简短概述:

(1)为P中的所有点计算法线

(2)估计P中的点Pi的特征:获取围绕点Pi(Pik)的半径r中的k个邻居的集合。在两点之间计算三个特征(仅在Pi与其邻居之间!)。相应的bin增加1.生成简单的点特征直方图(SPFH)。

(3)为了达到更多的点和连接(最多2次r),邻居的SPFH根据它们的空间距离加以加权作为最后一步。

(4)可以将得到的直方图组与其他点云的组进行比较,以便找到对应关系。

VFH (Viewpoint Feature Histogram)

VFH是一种全局特征点,扩展了FPFH的一种方法。

输入格式:

(1)由一组定向点P组成的点云。定向意味着所有点都具有正常的n法向量。

(2)此功能不使用颜色信息。

工作原理:

(1)计算点云的质心pc及其法向量nc。计算视点和质心之间的向量vc并对其进行标准化。

(2)VFH由两部分组成:视点部分和扩展的FPFH模块。

(3)要映射视点分量,迭代P中的所有点云,并计算它们的法线以及vc之间的角度。增加相应的直方图bin。

(4)对于扩展的FPFH组件,只需计算质心pc处的FPFH,将整个周围点云P设置为邻居。

(5)将两个直方图一起添加。

 简短概述:

(1)估算点云中的质心及其法线。计算视点和视点之间的归一化矢量vc。

(2)对于所有点,计算它们的法线和vc之间的角度。

(3)估算质心的FPFH,将所有剩余点设置为邻居。

CVFH (Clustered Viewpoint Feature Histogram)

CVFH是一种基于区域描述的特征点,也是基于VHF扩展的方法。

输入格式:(和上述一样的输入)

(1)由一组定向点P组成的点云。定向意味着所有点都具有正常的法向量n。

(2)此功能不使用颜色信息。

工作原理:

(1)由于遮挡和传感器限制,我们使用传感器获取的是物体的2.5D点云数据,一旦缺失部分点云,计算整个点云的点和正常质心的结果可能完全不同。这就是为什么一旦点云中缺少必要点,VFH描述符也就会完全不同。

(2)CVFH创建稳定的集群区域。从点云P开始,新的簇Ci从尚未分配给任何簇的随机点Pr开始。如果Ci中存在点Pj,则P中的每个点Pi被分配给该簇,使得它们的法线类似并且它们处于直接邻域中(比较角度和距离阈值)。聚类簇群太少的集群被拒绝或忽略。

(3)计算每个群集上的VFH。

(4)为每个直方图添加形状分布,表示点如何围绕质心分布。

 简短概述

(1)将点云细分为具有相似法线的相邻点的聚类(稳定区域)。

(2)计算每个群集的VFH。

(3)将形状分布组件(SDC)添加到每个直方图。

RIFT (Rotation-Invariant Feature Transform)

RIFT是一种局部特征描述法,且该方法扩展于SIFT。

输入格式:

(1)由一组纹理点组成的点云P. 没有纹理,此功能不会产生任何可用的结果。

(2)强度梯度计算。

工作原理:

(1)迭代点云P中的所有点。

(2)对于输入点云中的每个点Pi(i是迭代索引),收集具有半径r的Pi周围的球体内的所有相邻点。这个集合称为Pik(k为k个邻居)

(3)具有n个片段的假想圆(球体的垂直于Pi的法线的投影)适合于表面。这里n对应于实现中的距离 bin 的数量。

(4)Pi的所有邻居根据它们的距离d <n和梯度角位置θ<g(g表示实现中的梯度区的数量)被分配给直方图区间。 θ是梯度方向和从中心向外指向圆的矢量之间的角度。

简短概述

(1)对于P样本中的每个点Pi,Pi周围的所有k个邻居。

(2)根据距离d和它们的梯度角θ将所有邻居分配给直方图。

(3)可以将得到的直方图组与其他点云的组进行比较,以便找到对应关系。

NARF (Normal Aligned Radial Feature)

这是一个局部特征点,NARF功能扩展了SIFT(Lowe)的一些概念。

输入格式:

(1)场景的深度图像RI。

(2)NARF不仅是描述符,还是检测器。可以首先在数据集上运行兴趣点检测器再进行描述子描述。

工作原理:

(1)迭代深度图像RI中的所有兴趣点。

(2)对于每个点,Pi通过沿着法线看它来创建一个小图像补丁。法线是图像块的局部坐标系的Z轴,其中Pi位于(0,0)。 Y轴是世界坐标系Y轴。 X轴相应对齐。围绕Pi的半径r内的所有邻居都被转移到该局部坐标系中。

(3)具有n个光束的星形图案投射在图像块上。对于每个波束,计算[-0.5,0.5]中的分数。如果在梁下方的细胞中存在大量强度变化,则束具有高分。这是通过将每个单元与下一个单元进行比较来计算的。另外,靠近中心的细胞有助于得分具有更高的重量(中间2个,边缘1个)。

(4)最后,计算补片的主导方向,使其对法线周围的旋转不变。

简短概述

(1)对于深度图像RI中的每个关键点Pi,对Pi周围的所有邻居进行采样,并将它们转换为局部坐标系,其中Pi为O.

(2)在图像块上投射星形图案并计算每个光束下的强度变化以获得光束的分数。 在计算中,更靠近中心的光束具有更大的权重。 分数归一化为[-0.5,0.5]。

(3)迭代所有光束并找到图像块的主要方向。

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值