因为PCL是开源的,所以无论是商用还是研究都是免费的;
赞助商有Open Perception, Willow Garage, NVIDIA, Google, Toyota, Trimble, Urban Robotics, Honda Research Institute, Sandia, Dinast, Optronic, Ocular Robotics, Velodyne, Fotonic, and MKE.

PCL历史

构成现在PCL算法基础的第一个算法,是由Dr. Radu Bogdan Rusu在德国慕尼黑工业大学读博士期间开发的,后来在2009年底由Willow Garage公司进一步开发完成。 Dr. Rusu的工作的目的是要为三维点云数据处理的研究及应用,建立出一个共同的基础架构。自从2010年3月开始,具有模块化库的想法开始初具雏形,并已经写了大量的工具,并作为机器人操作系统(ROS)框架的一部分,来帮助PR2机器人在复杂的3D环境中处理和导航。就这样,研究工作继续进行,但直到2010年11月才作出决定,开始建立一个称为PCL的新的独立项目,作为一个整体这将有利于提高3D领域的研究。
在2011年3月底,PCL迈出了第一步,作为一个独立项目推出了自己网页域名,并迅速得到如NVIDIA, Google, Toyota, and Trimble等公司的资金支持,之后仅仅三个月后,即在2011年6月,就得到了全世界超过120个开发者和贡献者的支持,在六大洲,拥有多达30个不同的大学,研究机构,商业公司对这个项目做着贡献。
今天,PCL继续发展,并且凝聚了全世界许多不同的研究人员和工程师在在同一框架下研究3D感知。

PCL版本

截至到目前,PCL的最新版本为PCL 1.7.1
PCL1.7.1(released on 2013.10.20)
pcl--v1.7.0 (released on 2013.06.23)
pcl--v1.6.0 (released on 2012.07.17)
pcl--v1.5.1 (released on 2012.02.22)
pcl--v1.4.0 (released on 2011.12.31)
pcl--v1.3.1 (released on 2011.11.30)
pcl--v1.3.0 (released on 2011.10.31)
pcl--v1.2.0 (released on 2011.09.30)
pcl--v1.1.1 (released on 2011.08.31)
pcl--v1.1.0 (released on 2011.07.18)
pcl--v1.0.1 (released on 2011.06.29)
pcl--v1.0.0 (released on 2011.05.11)
pcl--trunk (latest unstable devel - updated daily)

模块

pcl_filters 去除噪点
pcl_features 三维特征提取
pcl_registration 将点云融合到一个全局模型中
pcl_kdtree 基于FLANN的kdtree实现最近邻搜索
pcl_octree 基于八叉树实现最近邻搜索
pcl_segmentation 分割点云
pcl_sample_consensus 对点云进行拟合(线、面、园、球、柱面、平行线),拟合算法包括:
* SAC_RANSAC - RANdom SAmple Consensus
* SAC_LMEDS - Least Median of Squares
* SAC_MSAC - M-Estimator SAmple Consensus
* SAC_RRANSAC - Randomized RANSAC
* SAC_RMSAC - Randomized MSAC
* SAC_MLESAC - Maximum LikeLihood Estimation SAmple Consensus
* SAC_PROSAC - PROgressive SAmple Consensus
pcl_surface 从三维扫描重建表面,可以是mesh/convex hull/concave hull
pcl_range_image 深度图,由kinect获取后可转换为点云
pcl_io 输入输出,PCD (Point Cloud Data) 文件的读写,OpenNI的接口(没有实现微软SDK的接口)
pcl_visualization 类似于OpenCV中highgui的作用,基于VTK实现三维可视化(VTK是一个极其庞大的库)
PCL安装
Windows下VS2010可以直接下载傻瓜安装包
其他的IDE比较麻烦,需要下源代码,以及依赖库
必需的库有:
boost
Eigen
FLANN
可选项有:
VTK,用于pcl_visualization
QHull,用于pcl_surface
OpenNI,用于pcl_io
CUDA
Ubuntu下ROS安装
$sudo apt-get install ros-fuerte-pcl

P·C·L 了解的更多相关文章

  1. JavaWeb 后端 <二> 之 Servlet 学习笔记

    一.Servlet概述 1.什么是Servlet Servlet是一个运行在服务器端的Java小程序,通过HTTP协议用于接收来自客户端请求,并发出响应. 2.Servlet中的方法 public v ...

  2. HTML5 3D 粒子波浪动画特效DEMO演示

    需要thress.js插件:     http://github.com/mrdoob/three.js // three.js - http://github.com/mrdoob/three.js ...

  3. 排序算法----基数排序(RadixSort(L))单链表智能版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  4. VC 中与字符串相关的宏 _T、TEXT,_TEXT、L 的作用

    CSDN原博文:http://blog.csdn.net/houkai363/article/details/8134787 遇到了:不能将参数 1 从“const char [5]”转换为“LPCT ...

  5. 排序算法----基数排序(RadixSort(L,max))单链表版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  6. BZOJ 1212: [HNOI2004]L语言 [AC自动机 DP]

    1212: [HNOI2004]L语言 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1367  Solved: 598[Submit][Status ...

  7. latex均方极限符号l.i.m在lyx下的输入方法

    $\mathop{l.i.m}\limits_{x\to +\infty}$ 命令说明: 1.指定数学环境$$ 2.\mathop{l.i.m}指数学符号自定义为l.i.m 3.\limits_{x\ ...

  8. 求单链表L各结点的阶乘之和(c语言)

    链表需要用到指针 阶乘需要用到递归 链表中的注意事项: 1.链表L是否等于NULL ----------是循环结束的条件 2.链表L->Data ---------取链表L中各个结点的值 3.L ...

  9. 模仿迅L看看<音频播放器> 实现点击进度条,跳转播放

    <Style x:Key="btnFallback" TargetType="{x:Type Button}"> <Setter Proper ...

  10. 通过ipv6访问 g o o g l e

    Google.Youtube.Facebook等均支持IPv6访问,IPv4网络的用户大部分都无法访问,比如Gmail,Google Docs等等各种相关服务.而该类网站大部分均已接入IPv6网络,因 ...

随机推荐

  1. 『cs231n』作业3问题4选讲_图像梯度应用强化

    [注],本节(上节也是)的model是一个已经训练完成的CNN分类网络. 随机数图片向前传播后对目标类优化,反向优化图片本体 def create_class_visualization(target ...

  2. Linux中的yum是什么?如何配置?如何使用?

    yum,是Yellow dog Updater Modified的简称,起初是由yellow dog这一发行版的开发者Terra Soft研发,用python写成,那时还叫做yup(yellow do ...

  3. Markdown语法笔记

    1.文字和图片中怎么让图片换行? 答:在文字和图片之间加入多个空格或者直接按Tab健即可

  4. 深入了解 Java-Netty高性能高并发理解

    https://www.jianshu.com/p/ac7fb5c2640f 一丶 Netty基础入门 Netty是一个高性能.异步事件驱动的NIO框架,它提供了对TCP.UDP和文件传输的支持,作为 ...

  5. HttpWebRequest HttpClient

    HttpWebRequest HttpClient 简单封装使用,支持https HttpWebRequest using System; using System.Collections.Gener ...

  6. Integer封装类的相关知识

    java中,在一些情况下会有自动装箱与自动拆箱. 自动拆箱/装箱是在编译期,依据代码的语法,决定是否进行拆箱和装箱动作.装箱过程:把基本类型用它们对应的包装类型进行包装,使基本类型具有对象特征.拆箱过 ...

  7. 福大软工 1816:项目UML设计(团队作业三)

    项目UML设计(团队) 团队信息 团队名:第三视角 各成员学号及姓名 姓名 学号 博客链接 张扬(组长) 031602345 http://www.cnblogs.com/sxZhangYang/p/ ...

  8. 用redis做简单的任务队列(二)

    是用redis做任务队列时,要思考: 用什么数据类型来做任务队列 怎样才能防止重复爬取 上一篇文章已经决定使用list来做任务队列,但是去重问题没有得到解决.这里可以用set来解决思考二的问题,就是防 ...

  9. 【DevExpress v17.2新功能预告】改进DevExtreme编辑器

    DevExpress即将发布v17.2版本,在DevExtreme v17.2中,DevExtreme编辑器进行了一些改进. 除了dxScheduler,dxDataGrid,dxTreeList和d ...

  10. 插件PageHelper实现分页查询

    一,需求: CommonQuery--PyQueryBean PyQueryBean:鹏飞历史记录查询,以往哪些人对征信进行了查询.CommonQuery:查询条件:根据查询人(umName).被查询 ...