初识PCL

初识PCL

一、PCL点云库简介

PCL框架图
  PCL(Point Cloud Library)是在吸收了前人点云相关研究基础上建立起来的大型跨平台开源C++编程库,它实现了大量点云相关的通用算法和高效数据结构,涉及到点云获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建、可视化等。支持多种操作系统平台,可在Windows、Linux、Android、Mac OS X、部分嵌入式实时系统上运行。如果说OpenCV是2D信息获取与处理的结晶,那么PCL就在3D信息获取与处理上具有同等地位,PCL是BSD授权方式,可以免费进行商业和学术应用。   PCL起初是**ROS(Robot Operating System)**下由来自于慕尼黑工业大学(TUM - Technische Universität München)和斯坦福大学(Stanford University)Radu博士等人维护和开发的开源项目,主要应用于机器人研究应用领域,于2011年独立出来,可以单独进行安装。在Ubuntu中进行做过ROS开发的可以知道,安装ROS完整包其中就自带了PCL点云库,同时其中的Pointcloud2可以很好的融入到ROS的通讯传输中。 ················································································································   从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找资源也方便些,有些时候用内网可能看官网会很慢,或者图片显示不出来都是有可能的

PCL官网主页

   进入主页,就是对点云库一个大致介绍,balabala

   主要是看上面的六个版块,Doc Tutorials Advanced Downloads GoSoc2020 About

1. Doc 文档查询

   以直通滤波的函数setFilterLimits()为例,在搜索框查找该函数,可以查到上图信息,对于一个程序员来说,查文档是必不可少的!另外对于版本问题,pcl不同版本会有一些改动,其中就包括一些函数的改动,但是大多数情况查最新的文档也没啥问题。有报错的话再单独去查

图1 官方文档
图2 setFilterLimits() 函数

2. Tutorials 教程

   该版本对PCL大部分内容进行了初步的演示,贴出了演示的代码以及CMakeLists文件,可以在linux系统上直接cmake编译运行,而对于Windows用户而言,在Visual studio上编程实现还需要做一些改动才行。

教程页面

3. Advanced 进阶

   这个板块主要是针对需要更改PCL库中内容的开发人员做的,包括从源码编译pcl,包装成“PCL式”代码(兼容到PCL中便于发布,里面那些算法代码的作者就是就是以这种方式实现的代码),提交git修改,改进PCL文档,如何建一个最小工程

Advanced 页面

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代码?点云资源?

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值