PCL基于法线的差异来分割点云

Posted 程序媛一枚~

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PCL基于法线的差异来分割点云相关的知识,希望对你有一定的参考价值。

基于法线差异来分割点云

1. 法向量的计算及可视化

法线又称法向量,因为在三维的点云中,根据一个点的K近邻点或者一个点的radius半径范围内的点拟合一个平面,而垂直这个平面且经过改点的线称之为法向量。

法向量是点云点到另一个点的有方向的线段,可视化法向量,其实就是可视化的这条有方向的线段。

上一节已经学习了 使用积分图像进行正态估计,得出点云的法向量,并将其可视化显示或者存储。

那法向量还可以做什么呢?这一节将来探索基于法向量的差异来分割点云;

在本教程中,我们将学习如何使用在pcl :: DifferenceOfNormalsEstimation类中实现的法线差异功能对无组织点云进行基于比例的分割。

该算法对给定的输入点云执行基于比例的分割,找到属于给定比例参数内的点。

2. 前置理论

法线差异(DoN Differences of Normals)提供了一种计算效率高的多尺度方法来处理大型无组织的3D点云。对于比例尺比较大的,分离的比较远的点云的分割尤其有效。

DoN背后的主要动机是观察到在任何给定半径处估计的表面法线均以支撑半径的比例反映了表面的基本几何形状。 尽管估计表面法线的方法有很多,但法线总是以支撑半径(或通过固定数量的邻居)进行估计。该支撑半径确定法线表示的表面结构中的比例。

3. 使用法线差异进行细分

对于细分,我们只需执行以下操作:

  • 使用r_l的大支撑半径估算每个点的法线
  • 使用r_s的小支撑半径估算每个点的法线
  • 对于每个点,如上所述,每个点的法线归一化差异。
  • 过滤结果矢量场以隔离属于感兴趣的比例/区域的点。

参考:

以上是关于PCL基于法线的差异来分割点云的主要内容,如果未能解决你的问题,请参考以下文章

PCL点云处理:计算点云法向量并可视化

PCL OcTree——点云压缩

PCL:如何更新 pcl::visualizer 中的法线云?

PCL OcTree——点云压缩

PCL KdTree——点云去重叠点

PCL:基于区域生长的点云分割——保存分割结果