PCL库的环境配置及调用(Windows8.1+VS2013/VS2015)

pcl26        PCL库被广泛用于三维重建,其在三维世界中的地位正如OpenCV在二维世界中的地位。因为其调用了很多第三方库,所以配置极其复杂。官方也推出了简单安装版OneInAll包,这篇博客主要介绍官方简单安装版的方法。由于简单安装版没有CUDA等模块,如果你想用上CUDA就必须得自己重新编译了(博主在使用CUDA8.0,折腾了一个下午放弃了,不过CUDA7.5及以下都有教程)。另外就是,如果想自己编译,这里有一篇很好的博客。如果想快速入门,这里也有一篇很好的博客

        博主这篇博客主要整理了安装参照的链接,抛砖引玉。

1. 下载OneInAll安装包并安装,同时按照要求配置环境变量,如果你使用Intel编译器,需要自己编译一些库(如boost,参考博主前面一排博客)

2. 下载配置属性表,在VS中进行导入属性表

        一般按照上面两篇博客都可以配置好,由于需要链接库的输入过多,下载配置表导入,可以使配置简单些。

        注意配置表中的Boost是1.59版本,而包中的Boost是1.61,所以你还要双击配置表,将boost的目录和库名字的159改为161,否则会出现编译错误。

        这是博主的配置表,博主删除了Qt相关的库,并把VTK的OpenGL2改成了OpenGL,还另外设置了OpenNI2的目录(OpenNI2是额外的安装包)。不论你是使用博主的配置表还是上面给出链接中的配置表,都请务必根据编译情况进行修改,只要你在你的机器上配置好一次,那么快保存下这个配置表吧,以后就不用再拼命设置环境变量了。

        如果你出现编译器内部错误

        .\boost/type_traits/detail/mp_defer.hpp(50) : fatal error C1001: An internal error has occurred in the compiler.

        那么不要惊慌,这是Boost的Bug,把你的VS2013升至update5(查了好久),或者用VS2012或VS2015就能避免这个错误。点击下载VS2013.5

        这里博主稍稍记录一下环境变量(十分重要):

//
PCL_ROOT	C:\Program Files\PCL 1.8.0 (or C:\Program Files (x86)\PCL 1.8.0)
Path	;%PCL_ROOT%\bin
        ;%OPENNI2_REDIST64% (or %OPENNI2_REDIST%)
        ;%PCL_ROOT%\3rdParty\FLANN\bin;%PCL_ROOT%\3rdParty\VTK\bin;%PCL_ROOT%\Qhull\bin;%PCL_ROOT%\3rdParty\OpenNI2\Tools

        如果有搞定CUDA8.0 with PCL 的,希望回复下博主,博主也配置一发 。 GTX1070买了还没用过(哭)

        OK,See You Next Chapter!

 

发表评论