我的 PCL 入门之路

不得不知的PCL

作为一个研究逆向工程的入人,想必没人不知道PCL的大名。所谓PCL(Point Cloud Library)其实就是一个开源的c++代码库,它实现了大量点云相关的通用算法和高效的数据管理结构,不仅涉及逆向工程领域,其还在模式识别,机器人视觉,计算机图形学,虚拟现实等众多领域大显神威。

基于以下第三方库:Boost,Eigen,FlANN,VTK,OpenNI,QHull,实现了点云获取,滤波,分割,精简,配准,特征提取,追踪,曲面重建和可视化等功能。

迈开“艰难”的第一步

所谓“艰难”的第一步,其实说白了就是IDE的选择问题,只是因为自己对Linux和window都是略知一二。在选择Linux或win搭建开发平台时犯了所谓的“选择恐惧症”的问题。先说window,因为自己以前曾在window+vs2010下配置opengl开发环境,在配置opengl时,各种依赖各种手动链接然后各种错误,不胜其烦,也因为在win下各种编程的不适,让我果断选择了在linux下搭建开发平台。

既然选择了linux,那末接下来便是理所当然的事情--获取PCL源码包。PCL源码包可以在其官方网站获取,当获取源码包之后,顺理成章的便是将其解压并在解压出的文件新建一个空工程文档(我的习惯是mkdir build && cd build,以下便用build代表自己所建的工程文档吧),进入build之后,便可执行 cmake..,利用cmake编译源码包,用以生成和自己电脑环境相匹配的开发环境。当然,如果你只想用PCL的某个单一的功能,可在build文件中执行ccmake..,这时候,便会出现一个选择窗口,只对你想安装的函数选择编译即可。

既然现在已经生成了和自己电脑环境匹配的PCL环境,下一步自然是是依据你cmake生成的编译环境,建立PCL的链接库,这样必须用make,即 make (耗时较长)。

环境配置好了,PCL的链接库也已经生成,最后一步就是将我们生成的各种库文件安装在我们电脑中,sudo make install 可帮你完成你的意愿。

其实罗嗦了这麽一大堆,归结起来就之后四句话:

  1. 下载获取PCL源文件解压,并 cd pcl

  2. mkdir build && cd build

  3. cmake .. && make

  4. sudo make install

把“浮云”抛到身后

暂时先把PCL的命名规范,目录命名,结构体,类,变量名等等以后必不可少,但现在还用不到的东西统统称为“浮云”,既然归于浮云,那就先让它随风而逝吧。

相信必定有或多或少的“同志”和我一样,在完美构建完PCL开发平台之后,第一件事并不是拿着《PCL点云学习教程》或是在PCL官方网站上开始从头学习,而是先找个官网实例练验证一下再说。好吧,我们就是最简单的输入输出来说。
首先,必须有供输入的文件,PCL建议的文件格式为".pcd",可从官网上下载任意“.pcd”文件即可。

既然想体验PCL,好吧,直接把输入输出代码copy过来把:

 # include  # include  # include  int main (int argc, char  argv)    {      pcl::PointCloud::Ptr cloud (new pcl::PointCloud);      if (pcl::io::loadPCDFile ("test_pcd.pcd", *cloud) == -1)       {        PCL_ERROR ("Couldn't read file test_pcd.pcd \n");        return (-1);      }      std::cout width * cloud->height                points.size (); ++i)        std::cout points[i].x                  points[i].y                  points[i].z 2)法向量可视化3)曲面重建#c++、linux、emacs#

版权声明

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处。如若内容有涉嫌抄袭侵权/违法违规/事实不符,请点击 举报 进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部