目录
初识PCL
一、PCL点云库简介
![]() |
- Boost:可以与C++标准库完美共同工作,并且为其提供扩展功能。
- Eigen:线性算术的C++模板库(在点云旋转平移等操作时 调用Eigen库作矩阵计算 Matrix4) 。 Eigen官方主页.
- FLANN:快速最近邻逼近搜索函数库。即实现快速高效匹配(在特征匹配、KdTree等常用。
- VTK:可视化库,pcl中用作点云的显示,可以对三维显示包括相机视角等进行配置(在做基于QT的PCL可视化交互应用中应该比较常见到,因为还需要从源码编译VTK生成QT插件,后面可能会介绍到。(对cmake不熟悉的可能编译源码编译到你怀疑人生
- CUDA:CUDA编程,使用GPU并行运算解决对运算资源消耗大的问题。
往上层,就是由这些第三方依赖库,搭建出的一个个PCL基础模块,从名字应该就可以大致了解这个模块大致是关于什么内容的,比如做对象识别的recognition,分割对象的segmentation,而这些模块之间又有着互相调用的关系,比如recognition中会用到search中的结构来寻找点……
而作为开发人员,则是使用PCL中一系列模块来实现我们自己的应用,PCL库的出现就是避免反复造轮子的窘迫。本专栏后续也会更新项目类文章,从项目入手进一步熟悉理解PCL。
二、PCL官网怎么看
对于刚入门的pcl的人来说,我每次都会推荐先去把官网看明白,官网里面的内容真的足够入门pcl了,虽然是英文的官网,但是慢慢看下来肯定有意向不到的收获,中文的那本《PCL从入门到精通》章节内容就是根据PCL官网教程一节写的(可以说是照搬都不为过)
那这节就从介绍官网开始——进官网先 PCL官方网站. 学pcl建议整个梯子,进github找资源也方便些,有些时候用内网可能看官网会很慢,或者图片显示不出来都是有可能的
![]() |
进入主页,就是对点云库一个大致介绍,balabala
主要是看上面的六个版块,Doc Tutorials Advanced Downloads GoSoc2020 About
1. Doc 文档查询
以直通滤波的函数setFilterLimits()为例,在搜索框查找该函数,可以查到上图信息,对于一个程序员来说,查文档是必不可少的!另外对于版本问题,pcl不同版本会有一些改动,其中就包括一些函数的改动,但是大多数情况查最新的文档也没啥问题。有报错的话再单独去查
![]() |
![]() |
2. Tutorials 教程
该版本对PCL大部分内容进行了初步的演示,贴出了演示的代码以及CMakeLists文件,可以在linux系统上直接cmake编译运行,而对于Windows用户而言,在Visual studio上编程实现还需要做一些改动才行。
![]() |
3. Advanced 进阶
这个板块主要是针对需要更改PCL库中内容的开发人员做的,包括从源码编译pcl,包装成“PCL式”代码(兼容到PCL中便于发布,里面那些算法代码的作者就是就是以这种方式实现的代码),提交git修改,改进PCL文档,如何建一个最小工程
![]() |
4. Downloads 下载
给出Windows安装包下载链接.
对于Windows用户下载pcl_AllInOne的exe可执行文件进行安装,有需要的话后面可以单独出一节安装教程,解析下安装流程。
![]() |
5. GSoc 2020
这里主要是对最近的活动贴出个板块,偶尔也会出一些新闻,可以关注一下最新动向
![]() |
6. About 关于
对PCL和点云进行了介绍,以及参考的引用,文末还留了一篇 PCL的介绍文章——3D is here: Point Cloud Library (PCL). 读完后可以对pcl中的一些内容有个大致了解
三、下期预告——pcl的github主页里啥都有?
下一期将深入pcl的github主页,逐文件夹的看都有些啥好东西(demo代码?点云资源?