记录一下 PCL 1.80与VS2015 的配置环境 ,
首先安装的是 PCL 1.80 64 位的;下载地址为 百度云,
http://pan.baidu.com/s/1jHEtSY6 密码:nhbe
其中百度云是从 https://blog.csdn.net/bohaijun_123/article/details/73330516这片博客里搞到的,当然如果因为时间关系打不开,可在评论中回复。
- 点击安装
点击 exe安装 ,安装过程中 出现
在这里插入图片描述
之后 弹出OPENNI2的安装地址选择你安装PCL的3dparty 中的openni2文件夹
之后还会弹出安装 另一个,都不要管了,默认直到到安装完成点击finish 即可。
接着配置环境变量,在系统环境变量里会出现 PCL-R00T的新量,这个是安装的时候自动生成的,如果没有,自行添加。
接着在 path 路径中添加 一系列路径,下面给出一份参考,不过具体要换成自己的路径,我是装在D盘programfile 文件夹下的,到时候自己写要具体看你的安装目录
系统Path设置添加如下:;D:\Program Files\PCL 1.8.0\bin;D:\Program Files\PCL 1.8.0\3rdParty\FLANN\bin;D:\Program Files\PCL 1.8.0\3rdParty\Qhull\bin;D:\Program Files\PCL 1.8.0\3rdParty\OpenNI2\Tools;D:\Program Files\PCL 1.8.0\3rdParty\VTK\bin
- List item
-
下面将PCB文件夹里的文件解压,并全部复制到到你PCL安装路径下的bin文件夹,就是里面有pcl开头的dll的那个文件夹。
-
上面步骤完成好之后 ,需要重启电脑
4.新建一个 VS2015 c++新建项目,如何新建就不写了,这里配置的是 Release x 64 ,
-
点击项目属性,进入配置界面,在 C/C++,注意不是VC++目录,点击常规,在附件包含目录里添加 :
-
接着进入链接器->常规->附加库目录 添加:
-
接着在 进入链接器->输入 添加 ?注意这里是Release,如果是debug,添加的不是这些,需要改动)
-
pcl_common_release.lib
pcl_features_release.lib
pcl_filters_release.lib
pcl_io_release.lib
pcl_io_ply_release.lib
pcl_kdtree_release.lib
pcl_keypoints_release.lib
pcl_ml_release.lib
pcl_octree_release.lib
pcl_outofcore_release.lib
pcl_people_release.lib
pcl_recognition_release.lib
pcl_registration_release.lib
pcl_sample_consensus_release.lib
pcl_search_release.lib
pcl_segmentation_release.lib
pcl_stereo_release.lib
pcl_surface_release.lib
pcl_tracking_release.lib
pcl_visualization_release.lib
libboost_locale-vc140-mt-1_61.lib
libboost_log-vc140-mt-1_61.lib
libboost_log_setup-vc140-mt-1_61.lib
libboost_math_c99-vc140-mt-1_61.lib
libboost_math_c99f-vc140-mt-1_61.lib
libboost_math_c99l-vc140-mt-1_61.lib
libboost_math_tr1-vc140-mt-1_61.lib
libboost_math_tr1f-vc140-mt-1_61.lib
libboost_math_tr1l-vc140-mt-1_61.lib
libboost_mpi-vc140-mt-1_61.lib
libboost_prg_exec_monitor-vc140-mt-1_61.lib
libboost_program_options-vc140-mt-1_61.lib
libboost_random-vc140-mt-1_61.lib
libboost_regex-vc140-mt-1_61.lib
libboost_serialization-vc140-mt-1_61.lib
libboost_signals-vc140-mt-1_61.lib
libboost_system-vc140-mt-1_61.lib
libboost_test_exec_monitor-vc140-mt-1_61.lib
libboost_thread-vc140-mt-1_61.lib
libboost_timer-vc140-mt-1_61.lib
libboost_type_erasure-vc140-mt-1_61.lib
libboost_unit_test_framework-vc140-mt-1_61.lib
libboost_wave-vc140-mt-1_61.lib
libboost_wserialization-vc140-mt-1_61.lib
vtkViewsContext2D-7.0.lib
vtkzlib-7.0.lib
vtkRenderingLOD-7.0.lib
vtkFiltersProgrammable-7.0.lib
vtkIOMovie-7.0.lib
vtkRenderingImage-7.0.lib
vtkIOVideo-7.0.lib
vtkexpat-7.0.lib
vtkIOPLY-7.0.lib
vtkhdf5_hl-7.0.lib
vtkInteractionImage-7.0.lib
vtkFiltersVerdict-7.0.lib
vtkCommonMisc-7.0.lib
vtkFiltersSelection-7.0.lib
vtkImagingStatistics-7.0.lib
vtkverdict-7.0.lib
vtkjpeg-7.0.lib
vtkFiltersParallelImaging-7.0.lib
vtkNetCDF_cxx-7.0.lib
vtkCommonSystem-7.0.lib
vtkalglib-7.0.lib
vtkpng-7.0.lib
vtkoggtheora-7.0.lib
vtkFiltersTexture-7.0.lib
vtkIOXMLParser-7.0.lib
vtkFiltersImaging-7.0.lib
vtkCommonMath-7.0.lib
vtkImagingFourier-7.0.lib
vtkImagingStencil-7.0.lib
vtkCommonColor-7.0.lib
vtkFiltersAMR-7.0.lib
vtkFiltersGeneric-7.0.lib
vtkImagingSources-7.0.lib
vtkCommonTransforms-7.0.lib
vtkViewsCore-7.0.lib
vtkImagingMath-7.0.lib
vtkFiltersHyperTree-7.0.lib
vtkRenderingContext2D-7.0.lib
vtkImagingColor-7.0.lib
vtkjsoncpp-7.0.lib
vtkIOParallelXML-7.0.lib
vtkDICOMParser-7.0.lib
vtktiff-7.0.lib
vtkDomainsChemistry-7.0.lib
vtkfreetype-7.0.lib
vtkIOImport-7.0.lib
vtkImagingMorphological-7.0.lib
vtkproj4-7.0.lib
vtksqlite-7.0.lib
vtkIOAMR-7.0.lib
vtkFiltersSMP-7.0.lib
vtkCommonComputationalGeometry-7.0.lib
vtkImagingHybrid-7.0.lib
vtkInteractionStyle-7.0.lib
vtkIOSQL-7.0.lib
vtkParallelCore-7.0.lib
vtkRenderingFreeType-7.0.lib
vtkNetCDF-7.0.lib
vtkIOExport-7.0.lib
vtkIOLSDyna-7.0.lib
vtkFiltersModeling-7.0.lib
vtkexoIIc-7.0.lib
vtkFiltersFlowPaths-7.0.lib
vtksys-7.0.lib
vtkIOMINC-7.0.lib
vtkFiltersGeometry-7.0.lib
vtkIOParallel-7.0.lib
vtkIONetCDF-7.0.lib
vtkGeovisCore-7.0.lib
vtkRenderingLabel-7.0.lib
vtkIOEnSight-7.0.lib
vtkInfovisLayout-7.0.lib
vtkImagingGeneral-7.0.lib
vtkFiltersSources-7.0.lib
vtkFiltersHybrid-7.0.lib
vtkIOInfovis-7.0.lib
vtkFiltersExtraction-7.0.lib
vtkIOCore-7.0.lib
vtkIOLegacy-7.0.lib
vtkmetaio-7.0.lib
vtkFiltersParallel-7.0.lib
vtkViewsInfovis-7.0.lib
vtkRenderingAnnotation-7.0.lib
vtkCommonExecutionModel-7.0.lib
vtkIOExodus-7.0.lib
vtklibxml2-7.0.lib
vtkIOXML-7.0.lib
vtkImagingCore-7.0.lib
vtkChartsCore-7.0.lib
vtkIOGeometry-7.0.lib
vtkFiltersStatistics-7.0.lib
vtkIOImage-7.0.lib
vtkInfovisCore-7.0.lib
vtkRenderingVolume-7.0.lib
vtkRenderingCore-7.0.lib
vtkhdf5-7.0.lib
vtkInteractionWidgets-7.0.lib
vtkFiltersGeneral-7.0.lib
vtkCommonDataModel-7.0.lib
vtkFiltersCore-7.0.lib
vtkCommonCore-7.0.lib
flann_cpp_s.lib
qhullstatic.lib
OpenNI2.lib
kernel32.lib
user32.lib
gdi32.lib
winspool.lib
shell32.lib
ole32.lib
oleaut32.lib
uuid.lib
comdlg32.lib
advapi32.lib
comctl32.lib
wsock32.lib
glu32.lib
opengl32.lib
ws2_32.lib
Psapi.lib
上面的 lib 来源:https://blog.csdn.net/annabelle1130/article/details/78628408
到这里,配置完成了,我们编写代码,(里面要用的rabit.pcb文件也在百度云里,到时和此示例程序放置于同一问价夹,这个大家都懂)
(在main程序里最好把路径写完整,记住使用:双\:)
在这里插入代码片
#include <pcl/visualization/cloud_viewer.h>
#include <iostream>//标准C++库中的输入输出类相关头文件。
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>//pcd 读写类相关的头文件。
#include <pcl/io/ply_io.h>
#include <pcl/point_types.h> //PCL中支持的点类型头文件。
int user_data;
void viewerOneOff(pcl::visualization::PCLVisualizer& viewer)
{
viewer.setBackgroundColor(1.0, 0.5, 1.0); //设置背景颜色
}
int main()
{
pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>);
pcl::io::loadPCDFile("E:\\vs chengxu\\PCL1\\rabbit.pcd", *cloud);
pcl::visualization::CloudViewer viewer("Cloud Viewer"); //创建viewer对象
viewer.showCloud(cloud);
viewer.runOnVisualizationThreadOnce(viewerOneOff);
system("pause");
return 0;
}
实验结果:
如果配置有问题,欢迎评论。