PCL 特征模块

包含了用于点云数据估计三维特征的数据结构和功能函数,三维特征是空间中某个三维点或者位置的表示,它是基于点周围的可用信息来描述几何的图形的一种表示。在三维空间中,查询点周围的方法一般是K领域查找。三维空间的特征点物理意义上与图像类似,都是使用一些具有显著特征的点来表示整个点云

函数介绍

pcl::ShapeContext3DEstimation< PointInT, PointNT, PointOutT > ShapeContext3DEstimation

实现三维点云形状描述符的表示方法,

论文介绍:

Andrea Frome, Daniel Huber, Ravi Kolluri and Thomas Bülow, Jitendra Malik Recognizing Objects in Range Data Using Regional Point Descriptors, In proceedings of the 8th European Conference on Computer Vision (ECCV), Prague, May 11-14, 2004

pcl::BOARDLocalReferenceFrameEstimation< PointInT, PointNT, PointOutT >

BOARDLocalReferenceFrameEstimation

实现用于本地参考帧估计的边界感知可重复方向算法

论文介绍:

A. Petrelli, L. Di Stefano, "On the repeatability of the local reference frame for partial shape matching", 13th International Conference on Computer Vision (ICCV), 2011

pcl::BoundaryEstimation< PointInT, PointNT, PointOutT >

边界估计使用角度准则估计一组点是否位于曲面边界上。该代码使用输入数据集中每个点处估计的曲面法线。

pcl::PointCloud<pcl::PointXYZ>::Ptr cloud (new pcl::PointCloud<pcl::PointXYZ>);

// fill in the cloud data here

pcl::PointCloud<pcl::Normal>::Ptr normals (new pcl::PointCloud<pcl::Normal>);

// estimate normals and fill in \a normals

pcl::PointCloud<pcl::Boundary> boundaries;

pcl::BoundaryEstimation<pcl::PointXYZ, pcl::Normal, pcl::Boundary> est;

est.setInputCloud (cloud);

est.setInputNormals (normals);

est.setRadiusSearch (0.02); // 2cm radius

est.setSearchMethod (typename pcl::search::KdTree<PointXYZ>::Ptr (new pcl::search::KdTree<PointXYZ>)

est.compute (boundaries);

pcl::BRISK2DEstimation< PointInT, PointOutT, KeypointT, IntensityT >

在原始代码和参考文献的基础上,实现了BRISK描述符

论文介绍:

Stefan Leutenegger,Margarita Chli and Roland Siegwart, BRISK: Binary Robust Invariant Scalable Keypoints, in Proceedings of the IEEE International Conference on Computer Vision (ICCV2011).

pcl::CRHEstimation< PointInT, PointNT, PointOutT >

CRHEstimation估计包含XYZ数据和法线的给定点云数据集的相机不同的滚动角直方图(CRH)描述符

论文介绍:

CAD-Model Recognition and 6 DOF Pose Estimation A. Aldoma, N. Blodow, D. Gossow, S. Gedikli, R.B. Rusu, M. Vincze and G. Bradski ICCV 2011, 3D Representation and Recognition (3dRR11) workshop Barcelona, Spain, (2011)

这篇论文 的意思是从传感器采集到的2.5D 数据与CAD数据进行匹配和对应的算法,那么CAD模型转换到2.5D数据就是通过不断的变换相机的视点,从而生成不同角度看上去的点云数据。

pcl::CVFHEstimation< PointInT, PointNT, PointOutT >

CVFHEstimation

估计包含XYZ数据和法线的给定点云数据集的(Clustered ViewPoint Feature Histogram)聚类后根据视点而统计的特征直方图(CVFH)描述符

CAD-Model Recognition and 6 DOF Pose Estimation A. Aldoma, N. Blodow, D. Gossow, S. Gedikli, R.B. Rusu, M. Vincze and G. Bradski ICCV 2011, 3D Representation and Recognition (3dRR11) workshop Barcelona, Spain, (2011)

文章与pcl::CRHEstimation的文章一致,该计算是在针对场景进行不同物体进行聚类,再进行匹配的预处理,所以这里使用了CVFH的特征点的提取

pcl::DifferenceOfNormalsEstimation< PointInT, PointNT, PointOutT >

点云数据的Normals(DoN)尺度差实现分割和滤波的功能。

对于点云中的每个点,减去用不同搜索半径(sigma_s,sigma_l)估计的两条法线,这些法线的差异提供了一个基于比例的特征,可以进一步用于过滤点云,有点像图像处理中的guassian的差异,但不是在曲面上。当两个搜索半径的关系为sigma_l=10*sigma_s时,可以得到最佳结果,点云之间基于以上的两个搜索半径的差值可以作为滤波器带宽。对于适当的值和阈值,它可以用于表面边缘提取。setinputnormalsmall和setInputNormalsLarge给出的输入法线必须与setInputCloud给出的输入点云匹配。这种行为不同于从法线扩展特性的特征估计方法,后者将法线与搜索曲面匹配。

Yani Ioannou. Automatic Urban Modelling using Mobile Urban LIDAR Data. Thesis (Master, Computing), Queen's University, March, 2010.

pcl::ESFEstimation< PointInT, PointOutT >ESFEstimation

估计给定点云数据集的形状函数描述符集合。

Walter Wohlkinger and Markus Vincze, "Ensemble of Shape Functions for 3D Object Classification", IEEE International Conference on Robotics and Biomimetics (IEEE-ROBIO), 2011

pcl::FeatureWithLocalReferenceFrames< PointInT, PointRFT >FeatureWithLocalReferenceFrames

为描述符提取器类提供了一个公共接口,这些类在每个输入关键点处都需要一个本地引用框架。

pcl::FPFHEstimation< PointInT, PointNT, PointOutT >

FPFHEstimation

估计包含点和法线的给定点云数据集的快速点特征直方图(FPFH)描述符。

* R.B. Rusu, N. Blodow, M. Beetz. Fast Point Feature Histograms (FPFH) for 3D Registration. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), Kobe, Japan, May 12-17 2009.

* R.B. Rusu, A. Holzbach, N. Blodow, M. Beetz. Fast Geometric Point Labeling using Conditional Random Fields. In Proceedings of the 22nd IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), St. Louis, MO, USA, October 11-15 2009.

pcl::GFPFHEstimation< PointInT, PointLT, PointOutT >

GFPFHEstimation估计给定点云数据集,这些点云包含了包含点和标签的点云,计算Global Fast Point Feature Histogram全局快速点特征直方图(GFPFH)描述符。

R.B. Rusu, A. Holzbach, M. Beetz. Detecting and Segmenting Objects for Mobile Manipulation. In the S3DV Workshop of the 12th International Conference on Computer Vision (ICCV), 2009.

pcl::GRSDEstimation< PointInT, PointNT, PointOutT >

GRSDEstimation为包含点和法线的给定点云数据集估计基于全局半径的曲面描述符(GRSD)。

* Z.C. Marton, D. Pangercic, N. Blodow, Michael Beetz. Combined 2D-3D Categorization and Classification for Multimodal Perception Systems. In The International Journal of Robotics Research, Sage Publications pages 1378–1402, Volume 30, Number 11, September 2011.

* A. Kanezaki, Z.C. Marton, D. Pangercic, T. Harada, Y. Kuniyoshi, M. Beetz. Voxelized Shape and Color Histograms for RGB-D In the Workshop on Active Semantic Perception and Object Search in the Real World, in conjunction with the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) San Francisco, California, September 25-30, 2011.

pcl::IntensityGradientEstimation< PointInT, PointNT, PointOutT, IntensitySelectorT >

IntensityGradientEstimation

估计包含位置(xyz)和强度值(intensity)的点云的强度梯度。给定点处的强度梯度将是一个与曲面法向正交并指向局部强度最大增加方向的向量;该向量的大小表示强度变化的速率。

pcl::IntensitySpinEstimation< PointInT, PointOutT >

IntensitySpinEstimation

估计给定点云数据集包含了点和强度值,强度域自旋图像描述符。

Svetlana Lazebnik, Cordelia Schmid, and Jean Ponce. A sparse texture representation using local affine regions. In IEEE Transactions on Pattern Analysis and Machine Intelligence, volume 27, pages 1265-1278, August 2005.

pcl::MomentInvariantsEstimation< PointInT, PointOutT >

估计每个3D点的3个不变矩(j1、j2、j3)。

pcl::OURCVFHEstimation< PointInT, PointNT, PointOutT >

估计给定点云数据集的定向、唯一和可重复的聚集视点特征直方图(CVFH)描述符,给定XYZ数据和法线,

OUR-CVFH – Oriented, Unique and Repeatable Clustered Viewpoint Feature Histogram for Object Recognition and 6DOF Pose Estimation A. Aldoma, F. Tombari, R.B. Rusu and M. Vincze DAGM-OAGM 2012 Graz

pcl::PrincipalCurvaturesEstimation< PointInT, PointNT, PointOutT >

PrincipalCurvaturesEstimation

估计包含点和法线的给定点云数据集的主曲面曲率的方向(特征向量)和大小(特征值)。

输出的数据结构是 pcl::PrincipalCurvatures。

pcl::SHOTEstimation< PointInT, PointNT, PointOutT, PointRFT >

估计包含点和法线的给定点云数据集的方向直方图(SHOT)描述符的特征。

* . Tombari, S. Salti, L. Di Stefano Unique Signatures of Histograms for Local Surface Description. In Proceedings of the 11th European Conference on Computer Vision (ECCV), Heraklion, Greece, September 5-11 2010.

* F. Tombari, S. Salti, L. Di Stefano A Combined Texture-Shape Descriptor For Enhanced 3D Feature Matching. In Proceedings of the 18th International Conference on Image Processing (ICIP), Brussels, Belgium, September 11-14 2011.

pcl::UniqueShapeContext< PointInT, PointOutT, PointRFT >

计算三维空间中点云的独立形状的上下文关系

F. Tombari, S. Salti, L. Di Stefano, "Unique Shape Context for 3D data description", International Workshop on 3D Object Retrieval (3DOR 10) - in conjuction with ACM Multimedia 2010

void pcl::solvePlaneParameters

(const Eigen::Matrix3f  &covariance_matrix,

const Eigen::Vector4f   &point,

Eigen::Vector4f            &plane_parameters,

float                             &curvature

)

求解给定3x3协方差矩阵的特征值和特征向量,估计最小二乘平面法向曲率和曲面曲率

pcl::computePointNormal (const pcl::PointCloud< PointT > &cloud, Eigen::Vector4f &plane_parameters, float &curvature)

计算给定点集的最小二乘平面拟合,并返回估计的平面参数和曲面曲率,可以每几个点云做一次拟合,计算平面参数以及曲率,这应该也是在计算normal  的类函数经常使用的函数。

pcl::flipNormalTowardsViewpoint (const PointT &point, float vp_x, float vp_y, float vp_z, Eigen::Matrix< Scalar, 4, 1 > &normal)

将计算的一个点的法向量旋转到指定的视角下

pcl::computePairFeatures (const Eigen::Vector4f &p1, const Eigen::Vector4f &n1, const Eigen::Vector4f &p2, const Eigen::Vector4f &n2, float &f1, float &f2, float &f3, float &f4)

计算包含笛卡尔坐标和法线表示的三个角和两点之间的一个距离的四元数表示

pcl::getFeaturePointCloud (const std::vector< Eigen::MatrixXf, Eigen::aligned_allocator< Eigen::MatrixXf > > &histograms2D, PointCloud< Histogram< N > > &histogramsPC)

将2D矩阵列表转换为包含向量值的点云(直方图<N>)

资源

三维点云论文及相关应用分享

【点云论文速读】基于激光雷达的里程计及3D点云地图中的定位方法

3D目标检测:MV3D-Net

三维点云分割综述(上)

3D-MiniNet: 从点云中学习2D表示以实现快速有效的3D LIDAR语义分割(2020)

win下使用QT添加VTK插件实现点云可视化GUI

JSNet:3D点云的联合实例和语义分割

大场景三维点云的语义分割综述

PCL中outofcore模块---基于核外八叉树的大规模点云的显示

基于局部凹凸性进行目标分割

基于三维卷积神经网络的点云标记

点云的超体素(SuperVoxel)

基于超点图的大规模点云分割

更多文章可查看:点云学习历史文章大汇总

SLAM及AR相关分享

【开源方案共享】ORB-SLAM3开源啦!

【论文速读】AVP-SLAM:自动泊车系统中的语义SLAM

【点云论文速读】StructSLAM:结构化线特征SLAM

SLAM和AR综述

常用的3D深度相机

AR设备单目视觉惯导SLAM算法综述与评价

SLAM综述(4)激光与视觉融合SLAM

Kimera实时重建的语义SLAM系统

SLAM综述(3)-视觉与惯导,视觉与深度学习SLAM

易扩展的SLAM框架-OpenVSLAM

高翔:非结构化道路激光SLAM中的挑战

SLAM综述之Lidar SLAM

基于鱼眼相机的SLAM方法介绍

(0)

相关推荐

  • 高翔Slambook第七讲代码解读(3d-3d位姿估计)

    上回咱们读完了pose_estimation_3d2d.cpp这个程序,也找到了3d-2d位姿估计与2d-2d位姿估计之间的联系与差别: 在2d-2d使用对极几何求解相机位姿时直接调用了OpenCV提 ...

  • 法向量、旋转矩阵计算(五十一)

    法向量、旋转矩阵计算(五十一)

  • g2o代码阅读 高翔Slambook第六讲:曲线拟合

    前些日子小绿做了一些高翔slam前端部分的代码解读,其中遇到g2o的部分基本上就黑箱化略过了.然而g2o是bundle adjustment中的关键,因此还是有必要对g2o进行一些系统的学习. 首先, ...

  • 高翔Slambook第七讲代码解读(3d-2d位姿估计)

    上回咱们读完了pose_estimation_2d2d.cpp这个文件,基本上明白了通过对极几何计算相机位姿变换的过程,简单地说就是:你给我两帧图像,我给你算个R.t. 我们按部就班,跟着小绿来看一下 ...

  • g2o代码阅读 高翔Slambook第七讲:3d2d非线性优化

    在3d2d求取位姿的程序中同样也用到了g2o进行bundle adjustment来使用非线性优化的方式求取位姿.和第六讲的g2o进行曲线拟合的方式类似,进行3d2d位姿求取中使用g2o的过程可以完全 ...

  • PCL中outofcore模块---基于核外八叉树的大规模点云的显示

    这里主要针对PCL库中outofcore做一些介绍,查询外网文献以及相关模块的相关资料写出以下内容,该模块就是为了实现大规模点云的载入与显示,渲染等问题. 什么是outofcore outofcore ...

  • 传统方法的点云分割以及PCL中分割模块

    有兴趣的小伙伴可以查阅历史文章,同时也欢迎小伙伴们积极分享与公众号主题相关的文章.在公众号的菜单栏开放了企业招聘.有需要的可以按要求发布招聘信息,你也可以把身边的HR推荐给群主,参与进来. 摘要 三维 ...

  • PCL中3D特征描述子Shot详解

    上周点云公众号开始分享群友们的反馈分享,由博主分配任务,半个月甚至一个月参与学习小伙伴的反馈给群主,并在微信交流群中进行学术交流,加强大家的阅读文献能力,并提高公众号的分享效果.已经有一些开始陆续反馈 ...

  • PCL点云特征描述与提取(4)

    如何从一个深度图像(range image)中提取NARF特征 代码解析narf_feature_extraction.cpp #include <iostream> #include & ...

  • PCL点云特征描述与提取(3)

    快速点特征直方图(FPFH)描述子 已知点云P中有n个点,那么它的点特征直方图(PFH)的理论计算复杂度是,其中k是点云P中每个点p计算特征向量时考虑的邻域数量.对于实时应用或接近实时应用中,密集点云 ...

  • PCL点云特征描述与提取(2)

    点特征直方图(PFH)描述子 正如点特征表示法所示,表面法线和曲率估计是某个点周围的几何特征基本表示法.虽然计算非常快速容易,但是无法获得太多信息,因为它们只使用很少的几个参数值来近似表示一个点的k邻 ...

  • PCL点云特征描述与提取(1)

    3D点云特征描述与提取是点云信息处理中最基础也是最关键的一部分,点云的识别.分割,重采样,配准曲面重建等处理大部分算法,都严重依赖特征描述与提取的结果.从尺度上来分,一般分为局部特征的描述和全局特征的 ...

  • 【PCL入门系列之二】PCL模块介绍(一)

    第一期内容中我们了解到,PCL官网上将PCL分为十四个功能模块(滤波器.特征.关键点.配准.Kd树.八叉树.分割.采样一致性.表面.范围图像.输入输出.可视化.常用.搜索),本期我们将粗略介绍部分模块 ...

  • 成功的乡村治理模式有这些特征

    乡村治理模式的构建与创新是乡村振兴的重要基础,相关农业农村问题专家建议,构建乡村治理新体系既要实现资源下沉,又要善于让各种治理机制发挥作用,把顶层设计和基层创新结合起来.接下来就和美丽乡村公司的小编一 ...