PCL(Point Clouds Library)在windows下的环境配置与使用

    (注:本文实验环境为windows7+VS2010)
    PCL是3D的视觉与图形库,可以说是OpenCV的little sister,这个库好像是2011年年中才放出来的,所以相关的资料还比较少,绝大多数参考资料都只能从官网http://pointclouds.org获得。要进一步了解PCL能做什么,请访问其官网。
    在讲如何配置使用PCL之前,先说说这个kinect——PCL的数据来源,kinect可以获取RGB图像与深度图像,配置kinect环境常见的做法包括使用微软提供的SDK包或用OpenNI,具体配置方法可以参考这个链接:http://chentingpc.me/article/article.php?id=325。由于PCL提供对OpenNI的对接,所以比较推荐的是用OpenNI来配置kinect,配置完毕后就可以将kinect采集的三维彩色视觉信息交给PCL和你写的代码来处理了。
    下面进入正题,讲如何配置PCL(Point Clouds Library):
    一种方法是下载源码包,然后用Cmake工具来编译成vs版本,这个配置方法与OpenCV的配置方法极为相似,另一种方法是直接下载已经编译后的windows安装包。我采用的第二种方法。下载安装(过程中选择自动添加环境变量)完毕后就已经配置完毕了。是的,完毕了,可以看出OpenCV的little sister与OpenCV的配置环境方法非常相似,但我记得当时在配置OpenCV的时候没有找到已经编译好的windows安装包,所以little sister在环境配置上实际上比bigger sister有不小进步。
    但是使用起来似乎就不那么简单了。记得当初用OpenCV的时候,是根据国内一些博客的教程直接往VS工程中加入一些包含文件与静态文件,但是对于PCL,这一套很难行得通了,因为国内基本没有PCL库使用笔记的博客,国外也很少很少(因为这个库比较新),于是我就按照http://pointclouds.org/documentation/tutorials/using_pcl_pcl_config.php#using-pcl-pcl-config的方法来使用,如果你之前都没用过cmakelist.txt与Cmake来生成代码,那你看他的方法会很困惑,不过这里将介绍这是怎么回事:cmakelist可以用模板的形式来写上一个工程(或一个代码文件)的链接库等配置选项,然后用Cmake来选择源文件目录(就是代码文件目录)以及生成代码(这里要生成VS2010的工程)的目录,值得注意的是,最好这两个目录能够一直,如果不一致,请记住把源代码拷贝到新的目录下,否则在VS2010下的编译会失败。Cmake设置完上述两个目录后,可以用configure按钮->generate按钮来生成VS代码了,生成后直接打开VS2010工程,就已经配置好了一切,直接编译运行就可以了。
    其实上述的使用方法是有点别扭的,因为我是先写好PCL相关的代码,然后再转换成VS2010工程的,这样如果当我在VS工程中继续编辑,并且用了一些新的PCL模块,这时候如果我不知道应该增加哪些lib文件或相关目录那就又得用Cmake重新生成了,这会比较麻烦。其实,出现这个问题的本质原因是不知道代码对库文件的依赖关系,等待这个问题有所突破或有人提供答案。

你可能感兴趣的:(各种配置问题)