参考链接:PCL(Point Cloud Library)学习指南&资料推荐(2023版) - 知乎 (zhihu.com)
带佬写的学习指南,有需要请参考原链接,本文仅是学习笔记。
下面是PCL架构图(C++模板库)
如图PCL架构图所示,对于3D点云处理来说,PCL完全是一个的模块化的 现代C++模板库。其基于以下第三方库: Boost、Eigen、FLANN、VTK、CUDA、OpenNI、Qhull,实现点云相关的 获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建、可视化等。

每个模块学习链接
02kdtree k维tree
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/index.html#kdtree
对应函数:https://pointclouds.org/documentation/group__kdtree.html
详细中文博客:https://www.cnblogs.com/li-yao7758258/p/6437440.html
03octree 八叉树
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#octree
- 点云压缩
- 将学习如何压缩单点云和点云流
- 使用八进制进行空间分区和搜索操作
- 学习如何使用八叉树进行空间分区和最近邻居搜索
- 无组织点云数据的空间变化检测没有看
- 学习如何使用八叉树检测点云内的空间变化
对应函数:https://pointclouds.org/documentation/group__octree.html
详细中文博客文章:
05sample consensus 抽样一致性模块
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#sample-consensus
对应函数:https://pointclouds.org/documentation/group__sample__consensus.html
详细中文博客文章:
http://robot.czxy.com/docs/pcl/chapter02/RANSAC/系列
- 下采样 Downsampling
- 均匀采样:这个类基本上是相同的,但它输出的点云索引是选择的关键点在计算描述子的常见方式。
- 增采样 :增采样是一种表面重建方法,当你有比你想象的要少的点云数据时,增采样可以帮你恢复原有的表面(S)
- 表面重建:深度传感器的测量是不准确的,和由此产生的点云也是存在的测量误差,比如离群点,孔等表面,可以用一个算法重建表面,遍历所有的点云和插值数据,试图重建原来的表面。比如增采样,PCL使用MLS算法和类。执行这一步是很重要的,因为由此产生的点云的法线将更准确。
06range-images深度图像
官方demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#range-images
How to create a range image from a point cloud
How to extract borders from range images
对应函数:无
详细中文博客文章:
http://robot.czxy.com/docs/pcl/chapter02/range_image/
07tracking跟踪
此模块没有官方代码,大家可以学习个人note的仓库
08 io 输入输出
官方demo
documentation(class和function函数)
code
详情笔记:
连接两个点云中的字段或数据形成新点云以及Opennni Grabber初识
09 filters 滤波
官方示例:https://pcl.readthedocs.io/projects/tutorials/en/latest/index.html#filtering
对应函数:https://pointcloudlibrary.github.io/documentation/group__filters.html
详细中文博客文章:
10 features 特征
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/index.html#features
函数:https://pointcloudlibrary.github.io/documentation/group__features.html
详细中文博客文章:
11 surface表面
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#surface
- Smoothing and normal estimation based on polynomial reconstruction
- Construct a concave or convex hull polygon for a plane model
- Fast triangulation of unordered point clouds
- Fitting trimmed B-splines to unordered point clouds
函数:https://pointcloudlibrary.github.io/documentation/group__surface.html
详细中文博客文章:
http://robot.czxy.com/docs/pcl/chapter04/resampling/
12 segmentation分割
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#segmentation
函数:https://pointclouds.org/documentation/group__segmentation.html
详细中文博客文章:
13 recognition识别
官网demo:
https://pcl.readthedocs.io/projects/tutorials/en/latest/#recognition
- 3D Object Recognition based on Correspondence Grouping
- Implicit Shape Model
- Tutorial: Hypothesis Verification for 3D Object Recognition
函数:https://pointclouds.org/documentation/group__recognition.html
详细中文博客文章:
https://github.com/Ewenwan/MVision/tree/master/PCL_APP/Recognition
14 registration配准
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#registration
函数:https://pointcloudlibrary.github.io/documentation/group__registration.html
- The PCL Registration API官网理论
- 使用迭代最近点算法(ICP)How to use iterative closest point
- 如何逐步匹配多幅点云 How to incrementally register pairs of clouds
- 04-配准之交互式ICPInteractive Iterative Closest Point
- 正态分布变换配准(NDT)How to use Normal Distributions Transform
- 手持式小型物品扫描仪 In-hand scanner for small objects
- 刚性物体的鲁棒姿态估计Robust pose estimation of rigid objects
中文博客文章:
黑马机器人 | PCL-3D点云
PCL中的点云ICP配准(附源代码和数据)_qq_29462849的 ...
15 visualization可视化
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#visualization
类/对象/函数:https://pointcloudlibrary.github.io/documentation/group__visualization.html
详细中文博客文章:
16 keypoints关键点
官网demo:https://pcl.readthedocs.io/projects/tutorials/en/latest/#keypoints
类/对象/函数:https://pointclouds.org/documentation/group__keypoints.html
详细中文博客文章:

4387

被折叠的 条评论
为什么被折叠?



