Windows 10系统下 VS 2017配置PCL 1.8.1 成功版

一、下载pcl-翻墙打开以下网站

https://github.com/PointCloudLibrary/pcl/releases/tag/pcl-1.8.1

1.将此页面下滑,找到下图两个文件下载

2.下载的两个文件放到一个文件夹中

2.打开下载好的以下文件

PCL-1.8.1-AllInOne-msvc2017-win64.exe

二、安装点云库

1.点击下载的PCL-1.8.1-AllInOne-msvc2017-win64.exe安装

2.点击下一步

3.我接受

4.修改为选择第二个-下一步

5.自定义文件路径-自己修改为自己想要安装的路径

6.下一步

7.安装

8.打开安装好的OpenNI2这个路径(PCL是我新建的文件夹,里面有最开始下载的两个文件,pcl是PCL-1.8.1-AllInOne-msvc2017-win64.exe安装时候选择的安装路径)

9.双击打开-next

10.选择Remove-点击Remove

11.前面相当于卸载了一遍OpenNI2,下面自己在重新双击安装,安装路径不变,如下图

12.把下载的下图这个文件下的pdb文件(如下图)复制

13.粘贴到下图路径下(PCL是我新建的文件夹,里面有最开始下载的两个文件,pcl是PCL-1.8.1-AllInOne-msvc2017-win64.exe安装时候选择的安装路径)  

三、配置系统环境变量

1.搜索电脑的环境变量(或者其他方法找到环境变量)

2.系统属性-高级-右下角环境变量-点击环境变量

3.找到系统变量-双击PATH

4.新建-添加几个PCL路径

5.需要新建添加的路径如下图。把PCL 1.14.0改成自己的PCL 1.8.1就行

6.添加保存后退出

四、新建VS空项目-配置环境

1.打开VS2017-新建空项目-Dehug选择x64

2.点击视图-其他窗口-属性管理器

3.右键Debug | x64-添加新项目属性表

4.新建成功-双击新建属性表

5.VC++目录-添加包含目录和库目录

6.包含目录-添加路径后确定

D:\PCL\pcl\PCL 1.8.1\3rdParty\OpenNI2\Include

D:\PCL\pcl\PCL 1.8.1\3rdParty\FLANN\include

D:\PCL\pcl\PCL 1.8.1\3rdParty\Eigen\eigen3

D:\PCL\pcl\PCL 1.8.1\3rdParty\Boost\include\boost-1_64

D:\PCL\pcl\PCL 1.8.1\3rdParty\VTK\include\vtk-8.0

D:\PCL\pcl\PCL 1.8.1\3rdParty\Qhull\include

D:\PCL\pcl\PCL 1.8.1\include\pcl-1.8

7.库目录-添加路径后确定

D:\PCL\pcl\PCL 1.8.1\3rdParty\OpenNI2\Lib

D:\PCL\pcl\PCL 1.8.1\3rdParty\VTK\lib

D:\PCL\pcl\PCL 1.8.1\3rdParty\Qhull\lib

D:\PCL\pcl\PCL 1.8.1\3rdParty\FLANN\lib

D:\PCL\pcl\PCL 1.8.1\3rdParty\Boost\lib

D:\PCL\pcl\PCL 1.8.1\lib

8.C/C++--所有选项--SDL检查设置为否

9.C/C++--预处理器定义-添加以下-确定

_SCL_SECURE_NO_WARNINGS
_CRT_SECURE_NO_WARNINGS
_SILENCE_FPOS_SEEKPOS_DEPRECATION_WARNING

10.链接器-输入-附加依赖项-复制粘贴以下-确定

vtknetcdf_c++-gd.lib
 pcl_common_debug.lib
 pcl_features_debug.lib
 pcl_filters_debug.lib
 pcl_io_ply_debug.lib
 pcl_io_debug.lib
 pcl_kdtree_debug.lib
 pcl_keypoints_debug.lib
 pcl_ml_debug.lib
 pcl_octree_debug.lib
 pcl_outofcore_debug.lib
 pcl_people_debug.lib
 pcl_recognition_debug.lib
 pcl_registration_debug.lib
 pcl_sample_consensus_debug.lib
 pcl_search_debug.lib
 pcl_segmentation_debug.lib
 pcl_stereo_debug.lib
 pcl_surface_debug.lib
 pcl_tracking_debug.lib
 pcl_visualization_debug.lib
 libboost_atomic-vc141-mt-gd-1_64.lib
 libboost_bzip2-vc141-mt-gd-1_64.lib
 libboost_chrono-vc141-mt-gd-1_64.lib
 libboost_container-vc141-mt-gd-1_64.lib
 libboost_context-vc141-mt-gd-1_64.lib
 libboost_coroutine-vc141-mt-gd-1_64.lib
 libboost_date_time-vc141-mt-gd-1_64.lib
 libboost_exception-vc141-mt-gd-1_64.lib
 libboost_fiber-vc141-mt-gd-1_64.lib
 libboost_filesystem-vc141-mt-gd-1_64.lib
 libboost_graph-vc141-mt-gd-1_64.lib
 libboost_graph_parallel-vc141-mt-gd-1_64.lib
 libboost_iostreams-vc141-mt-gd-1_64.lib
 libboost_locale-vc141-mt-gd-1_64.lib
 libboost_log-vc141-mt-gd-1_64.lib
 libboost_log_setup-vc141-mt-gd-1_64.lib
 libboost_math_c99-vc141-mt-gd-1_64.lib
 libboost_math_c99f-vc141-mt-gd-1_64.lib
 libboost_math_c99l-vc141-mt-gd-1_64.lib
 libboost_math_tr1-vc141-mt-gd-1_64.lib
 libboost_math_tr1f-vc141-mt-gd-1_64.lib
 libboost_math_tr1l-vc141-mt-gd-1_64.lib
 libboost_mpi-vc141-mt-gd-1_64.lib
 libboost_numpy3-vc141-mt-gd-1_64.lib
 libboost_numpy-vc141-mt-gd-1_64.lib
 libboost_prg_exec_monitor-vc141-mt-gd-1_64.lib
 libboost_program_options-vc141-mt-gd-1_64.lib
 libboost_python3-vc141-mt-gd-1_64.lib
 libboost_python-vc141-mt-gd-1_64.lib
 libboost_random-vc141-mt-gd-1_64.lib
 libboost_regex-vc141-mt-gd-1_64.lib
 libboost_serialization-vc141-mt-gd-1_64.lib
 libboost_signals-vc141-mt-gd-1_64.lib
 libboost_system-vc141-mt-gd-1_64.lib
 libboost_test_exec_monitor-vc141-mt-gd-1_64.lib
 libboost_thread-vc141-mt-gd-1_64.lib
 libboost_timer-vc141-mt-gd-1_64.lib
 libboost_type_erasure-vc141-mt-gd-1_64.lib
 libboost_unit_test_framework-vc141-mt-gd-1_64.lib
 libboost_wave-vc141-mt-gd-1_64.lib
 libboost_wserialization-vc141-mt-gd-1_64.lib
 libboost_zlib-vc141-mt-gd-1_64.lib
 flann-gd.lib
 flann_cpp-gd.lib
 flann_cpp_s-gd.lib
 flann_s-gd.lib
 qhull_d.lib
 qhullcpp_d.lib
 qhullstatic_d.lib
 qhullstatic_r_d.lib
 qhull_p_d.lib
 qhull_r_d.lib
 vtkalglib-8.0-gd.lib
 vtkChartsCore-8.0-gd.lib
 vtkCommonColor-8.0-gd.lib
 vtkCommonComputationalGeometry-8.0-gd.lib
 vtkCommonCore-8.0-gd.lib
 vtkCommonDataModel-8.0-gd.lib
 vtkCommonExecutionModel-8.0-gd.lib
 vtkCommonMath-8.0-gd.lib
 vtkCommonMisc-8.0-gd.lib
 vtkCommonSystem-8.0-gd.lib
 vtkCommonTransforms-8.0-gd.lib
 vtkDICOMParser-8.0-gd.lib
 vtkDomainsChemistry-8.0-gd.lib
 vtkexoIIc-8.0-gd.lib
 vtkexpat-8.0-gd.lib
 vtkFiltersAMR-8.0-gd.lib
 vtkFiltersCore-8.0-gd.lib
 vtkFiltersExtraction-8.0-gd.lib
 vtkFiltersFlowPaths-8.0-gd.lib
 vtkFiltersGeneral-8.0-gd.lib
 vtkFiltersGeneric-8.0-gd.lib
 vtkFiltersGeometry-8.0-gd.lib
 vtkFiltersHybrid-8.0-gd.lib
 vtkFiltersHyperTree-8.0-gd.lib
 vtkFiltersImaging-8.0-gd.lib
 vtkFiltersModeling-8.0-gd.lib
 vtkFiltersParallel-8.0-gd.lib
 vtkFiltersParallelImaging-8.0-gd.lib
 vtkFiltersPoints-8.0-gd.lib
 vtkFiltersProgrammable-8.0-gd.lib
 vtkFiltersSelection-8.0-gd.lib
 vtkFiltersSMP-8.0-gd.lib
 vtkFiltersSources-8.0-gd.lib
 vtkFiltersStatistics-8.0-gd.lib
 vtkFiltersTexture-8.0-gd.lib
 vtkFiltersTopology-8.0-gd.lib
 vtkFiltersVerdict-8.0-gd.lib
 vtkfreetype-8.0-gd.lib
 vtkGeovisCore-8.0-gd.lib
 vtkgl2ps-8.0-gd.lib
 vtkhdf5-8.0-gd.lib
 vtkhdf5_hl-8.0-gd.lib
 vtkImagingColor-8.0-gd.lib
 vtkImagingCore-8.0-gd.lib
 vtkImagingFourier-8.0-gd.lib
 vtkImagingGeneral-8.0-gd.lib
 vtkImagingHybrid-8.0-gd.lib
 vtkImagingMath-8.0-gd.lib
 vtkImagingMorphological-8.0-gd.lib
 vtkImagingSources-8.0-gd.lib
 vtkImagingStatistics-8.0-gd.lib
 vtkImagingStencil-8.0-gd.lib
 vtkInfovisCore-8.0-gd.lib
 vtkInfovisLayout-8.0-gd.lib
 vtkInteractionImage-8.0-gd.lib
 vtkInteractionStyle-8.0-gd.lib
 vtkInteractionWidgets-8.0-gd.lib
 vtkIOAMR-8.0-gd.lib
 vtkIOCore-8.0-gd.lib
 vtkIOEnSight-8.0-gd.lib
 vtkIOExodus-8.0-gd.lib
 vtkIOExport-8.0-gd.lib
 vtkIOExportOpenGL-8.0-gd.lib
 vtkIOGeometry-8.0-gd.lib
 vtkIOImage-8.0-gd.lib
 vtkIOImport-8.0-gd.lib
 vtkIOInfovis-8.0-gd.lib
 vtkIOLegacy-8.0-gd.lib
 vtkIOLSDyna-8.0-gd.lib
 vtkIOMINC-8.0-gd.lib
 vtkIOMovie-8.0-gd.lib
 vtkIONetCDF-8.0-gd.lib
 vtkIOParallel-8.0-gd.lib
 vtkIOParallelXML-8.0-gd.lib
 vtkIOPLY-8.0-gd.lib
 vtkIOSQL-8.0-gd.lib
 vtkIOTecplotTable-8.0-gd.lib
 vtkIOVideo-8.0-gd.lib
 vtkIOXML-8.0-gd.lib
 vtkIOXMLParser-8.0-gd.lib
 vtkjpeg-8.0-gd.lib
 vtkjsoncpp-8.0-gd.lib
 vtklibharu-8.0-gd.lib
 vtklibxml2-8.0-gd.lib
 vtklz4-8.0-gd.lib
 vtkmetaio-8.0-gd.lib
 vtkNetCDF-8.0-gd.lib
 vtkoggtheora-8.0-gd.lib
 vtkParallelCore-8.0-gd.lib
 vtkpng-8.0-gd.lib
 vtkproj4-8.0-gd.lib
 vtkRenderingAnnotation-8.0-gd.lib
 vtkRenderingContext2D-8.0-gd.lib
 vtkRenderingContextOpenGL-8.0-gd.lib
 vtkRenderingCore-8.0-gd.lib
 vtkRenderingFreeType-8.0-gd.lib
 vtkRenderingGL2PS-8.0-gd.lib
 vtkRenderingImage-8.0-gd.lib
 vtkRenderingLabel-8.0-gd.lib
 vtkRenderingLIC-8.0-gd.lib
 vtkRenderingLOD-8.0-gd.lib
 vtkRenderingOpenGL-8.0-gd.lib
 vtkRenderingVolume-8.0-gd.lib
 vtkRenderingVolumeOpenGL-8.0-gd.lib
 vtksqlite-8.0-gd.lib
 vtksys-8.0-gd.lib
 vtktiff-8.0-gd.lib
 vtkverdict-8.0-gd.lib
 vtkViewsContext2D-8.0-gd.lib
 vtkViewsCore-8.0-gd.lib
 vtkViewsInfovis-8.0-gd.lib
 vtkzlib-8.0-gd.lib
 opengl32.lib

五、配置完成-检验配置是否成功

#include <iostream>
#include <pcl/point_types.h>
#include <pcl/point_cloud.h>
#include <pcl/visualization/cloud_viewer.h>

int main() {
    // 创建一个点云对象,点类型为 XYZ
    pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZ>);

    // 设置点云的尺寸
    cloud->width = 100; // 点的数量
    cloud->height = 1;  // 无序点云(height=1 表示无序)
    cloud->is_dense = false;
    cloud->points.resize(cloud->width * cloud->height);

    // 随机生成点云数据
    for (auto& point : cloud->points) {
        point.x = 1024 * rand() / (RAND_MAX + 1.0f);
        point.y = 1024 * rand() / (RAND_MAX + 1.0f);
        point.z = 1024 * rand() / (RAND_MAX + 1.0f);
    }

    // 创建一个点云查看器对象
    pcl::visualization::CloudViewer viewer("Simple Cloud Viewer");

    // 显示点云
    viewer.showCloud(cloud);

    // 等待查看器窗口关闭
    while (!viewer.wasStopped()) {
    }

    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值