如何用pcl配置visual studio 2010

如何用pcl配置visual studio 2010,第1张

1.首先下载windows的安装包。我用的是预编译版本的多合一包,需要自己编译的也可以。注意下载时要看清楚vs2010的版本是32位还是64位,不然一些库会找不到对应入口,导致编译不通过的。

tips:可以在开始菜单下的Microsoft Visual Studio 2010文件夹下,查看Microsoft Windows SDK Tools,如果看到程序后面(如IL反汇编程序)有(x64)字样,则vs是64位的,没有就放心安装32位版本吧。

如果是用cmake生成pcl解决方案,要注意在cmake的时候确定各个依赖库的路径,可以在对应项上把鼠标停留一下,看看有什么提示信息,特别是VTK的目录。有些时候能够继续生成,但是部分模块并没有设置好参数,会导致编译出来的PCL运行不良好。

2.安装完毕后就测试一下PCL的效果吧,要注意项目对应的包含目录、库目录、库文件(LIB)和运行环境(DLL)。

用http://www.pointclouds.org/documentation/tutorials/pcl_visualizer.php#pcl-visualizer上面的例程试一试,新建工程,粘贴代码……

在包含目录下添加:

C:\Program Files\PCL 1.5.1\3rdParty\Boost\include

C:\Program Files\PCL 1.5.1\3rdParty\Eigen\include

C:\Program Files\PCL 1.5.1\3rdParty\Flann\include

C:\Program Files\PCL 1.5.1\3rdParty\Qhull\include

C:\Program Files\PCL 1.5.1\3rdParty\VTK\include\vtk-5.8

C:\Program Files\OpenNI\Include

C:\Program Files\PCL 1.5.1\include\pcl-1.5

(对应自己机子上PCL的位置,如果为了CMAKE方便很多会放在根目录下。即C:\PCL)

在库目录下添加:

C:\Program Files\PCL 1.5.1\3rdParty\Boost\lib

C:\Program Files\PCL 1.5.1\3rdParty\Qhull\lib

C:\Program Files\PCL 1.5.1\3rdParty\Flann\lib

C:\Program Files\PCL 1.5.1\3rdParty\VTK\lib\vtk-5.8

C:\Program Files\PCL 1.5.1\lib

C:\Program Files\OpenNI\Lib

在附加依赖项上添加:

opengl32.lib

pcl_kdtree_debug.lib

pcl_io_debug.lib

pcl_search_debug.lib

pcl_segmentation_debug.lib

pcl_apps_debug.lib

pcl_features_debug.lib

pcl_filters_debug.lib

pcl_visualization_debug.lib

pcl_common_debug.lib

flann_cpp_s-gd.lib

libboost_system-vc100-mt-gd-1_47.lib

libboost_filesystem-vc100-mt-gd-1_47.lib

libboost_thread-vc100-mt-gd-1_47.lib

libboost_date_time-vc100-mt-gd-1_47.lib

libboost_iostreams-vc100-mt-gd-1_47.lib

openNI.lib

vtkalglib-gd.lib

vtkCharts-gd.lib

vtkCommon-gd.lib

vtkDICOMParser-gd.lib

vtkexoIIc-gd.lib

vtkexpat-gd.lib

vtkFiltering-gd.lib

vtkfreetype-gd.lib

vtkftgl-gd.lib

vtkGenericFiltering-gd.lib

vtkGeovis-gd.lib

vtkGraphics-gd.lib

vtkhdf5-gd.lib

vtkHybrid-gd.lib

vtkImaging-gd.lib

vtkInfovis-gd.lib

vtkIO-gd.lib

vtkjpeg-gd.lib

vtklibxml2-gd.lib

vtkmetaio-gd.lib

vtkNetCDF-gd.lib

vtkNetCDF_cxx-gd.lib

vtkpng-gd.lib

vtkproj4-gd.lib

vtkRendering-gd.lib

vtksqlite-gd.lib

vtksys-gd.lib

vtktiff-gd.lib

vtkverdict-gd.lib

vtkViews-gd.lib

vtkVolumeRendering-gd.lib

vtkWidgets-gd.lib

vtkzlib-gd.lib

这里要注意PCL引用到的其他库文件一定要加进去,VTK的库很多,而且依赖关系我看得很乱,所以为了方便就全加进去了。

如果没有加完整,很多信息提示错误的,之前忘了加一个什么库,导致很多error LNK2019,还让我重装了很多次……

注意库要对应debug和release版,debug后面一般都有-gd或者_debug的,看看就能分出来了。对应错了还会有error LNK:

error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '2' doesn't match value '0' in XXXX.......

这时应该可以看到成功生成的信息了:

你可以看看PCL中测试实例中的,ply2pcd的程序,转化为pcd显示就可以了吧

https://github.com/otherlab/pcl/blob/master/tools/ply2pcd.cpp

源码链接。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11825708.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存