因为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. Codeword CodeForces - 666C (字符串计数)

    链接 大意:求只含小写字母, 长度为n, 且可以与给定模板串匹配的字符串个数 (多组数据) 记模板串为P, 长为x, 总串为S. 设$f_i$为S为i时的匹配数, 考虑P最后一位的首次匹配位置. 若为 ...

  2. Java compiler level does not match the version of the installed Java project facet.解决方法

    右键项目“Properties”,在弹出的“Properties”窗口左侧,单击“Project Facets”,打开“Project Facets”页面. 在页面中的“Java”下拉列表中,选择相应 ...

  3. kubectl管理多个k8s集群

    #把每个k8s集群的json配置文件放到/root/.kube/目录下,改为不同名字,通过--kubeconfig实现不同集群操作 kubectl --kubeconfig=/root/.kube/m ...

  4. python-day3笔记

    1.通信是软件(计算机)与软件(计算机)之间的通信 2.网络指的是: 一:计算机与计算机之间通过物理连接介质(网络设备)连接到一起:光纤--物理连接介质,和网线一样. 二:计算机与计算机之间基于网络协 ...

  5. 51nod1344

    有编号1-n的n个格子,机器人从1号格子顺序向后走,一直走到n号格子,并需要从n号格子走出去.机器人有一个初始能量,每个格子对应一个整数A[i],表示这个格子的能量值.如果A[i] > 0,机器 ...

  6. 查询(sqlSuger)

    查某一天的数据记录的条数 DateTime date1 = Convert.ToDateTime(DateTime.Now.ToShortDateString()); DateTime date2 = ...

  7. Markdown语法笔记

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

  8. 54. 59. Spiral Matrix

    1. Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral ...

  9. form数据请求参数格式

    请求后台参数格式问题 当请求后台传递参数时,有多中类型,而每一种都需要前后台进行配合,而这有时候会很简单,有时候却十分困难,记录一下,以备后期深究 数据 后台需要的数据 form表单 嵌套数据,第二层 ...

  10. 文件属性,获取,设置文件属性chown stat函数

    转载:http://c.biancheng.net/cpp/html/326.html man 2 stat查看手册 int stat(const char *path, struct stat *b ...