天天看点

PCL1.6.0学习笔记(一)

    北京航空航天大学出版社出版的《点云库PCL学习教程》这本书买了一个星期,终于有心情好好学习了!我是在Windows下配置安装PCL的开发环境的。因为这本书自带的光盘里有每一章(除了第1章概述)的相关讲解及代码实现,还有需要安装的各种软件包。于是我就按着书上第2章 PCL入门 开始了我的PCL学习之旅!

    我的电脑是win7 32位的,编译软件是Visual Studio2010 32位,于是我就在光盘中找我需要的32位的软件包。首先我安装的是PCL-1.6.0-AllInOne-win32这个软件包,纯粹的是按着书上给的步骤。可是在让选择是否给其添加环境变量路径时,我选择的是不添加,后面我就为我的错误选择付出了代价!一般我安装软件的时候除非是提示说必须要安装在C盘的,一般我都安装在其他盘里。这里我安装PCL的时候,书上说因为PCL中提供的CMake相关搜索路径默认只会在C盘下搜索相关的库,所以我就把PCL安装在了C盘,后面需要的相关软件我都默认安装在了C盘了(总共大约占了3G吧)。在安装过程中会自动弹出OPENNI的安装框,直接点安装即可;接着后面又出现了PrimeSense安装提示框,直接安装!(注意:在安装前,先将360卫士关闭,不然安装过程中会有阻拦)

    在测试安装是否成功时,需要Cmake程序,这里我用的是Cmake2.8.8 32位的,这里需要注意的是他的版本需要大于2.8.3,主要是考虑到PCL中用到了高版本的一些宏定义,低版本的不兼容。当我把测试需要的CmkeLists.txt和project_inliers.cpp(这两个我是在http://pointclouds.org/documentation/tutorials/project_inliers.php#project-inliers中复制过来的)都准备好,并且也都用Cmake配置生成相应的工程文件后,我在VS2010中编译该工程项目时出现了如下错误:

PCL1.6.0学习笔记(一)

受教于这个帖子:http://www.pclcn.org/bbs/forum.php?mod=viewthread&tid=294,原来是我忘了安装QT,在光盘里找到Qt_4.8.0_msvc2010_win32.exe,直接点击安装。貌似这个是不需要设置环境变量的。安装完后再次运行程序,出现下面的对话框:

PCL1.6.0学习笔记(一)

我在电脑中的确是没有找到这个路径下面的ALL_BUILD,于是我不死心,又编译了一次,结果出来了这个:

PCL1.6.0学习笔记(一)

因为以前我在编译程序的时候出现过类似的情况,我就在C:\program files\PCL1.6.0\bin中找到这个动态链接库放到了project_inliers.exe的当前目录下,我以为这次没问题了。结果再次编译,又出问题了:

PCL1.6.0学习笔记(一)

我又用同样的方法再次编译,又出现了问题:

PCL1.6.0学习笔记(一)

我突然意识到,这个问题我以前貌似见过。就是之前学习opencv的时候,在测试opencv库是否安装成功的时候就出现这样的问题。是的,你没有猜错,就是我没有设置环境变量,并且也没有配置VS2010。我查找了一些资料,从libing同学的博客里学到了很多。http://blog.csdn.net/renshengrumenglibing/article/details/9073675,当我把所有的都配置好了之后,再次运行程序,出来了结果!

PCL1.6.0学习笔记(一)

这就表明了我已经完成了PCL在Windows上的开发环境的搭建!不过具体的我的代码是如何实现的,出来的这个结果应该怎么解释,我都还不清楚,接下来,我就要好好啃一下这个代码了!