电脑环境PCL配置及VS2019环境配置

2023-05-16

VS2019配置pcl 1.12.0

前言

对于3D点云处理来说,PCL完全是一个的模块化的现代C++模板库。其基于以下第三方库:BoostEigenFLANNVTKCUDAOpenNIQhull,实现点云相关的获取、滤波、分割、配准、检索、特征提取、识别、追踪、曲面重建、可视化等。

PCL利用OpenMPGPUCUDA等先进高性能计算技术,通过并行化提高程序实时性。K近邻搜索操作的构架是基于FLANN (Fast Library for Approximate Nearest Neighbors)所实现的,速度也是技术中最快的。PCL中的所有模块和算法都是通过Boost共享指针来传送数据的,因而避免了多次复制系统中已存在的数据的需要,从0.6版本开始,PCL就已经被移入到WindowsMacOSLinux系统,并且在Android系统也已经开始投入使用,这使得PCL的应用容易移植与多方发布。(来自于百度百科搜索)

在配置时应多加注意pcl版本问题安装文件位置问题,否则后面改环境配置问题时会有很多小细节错误,会花费较多的时间。

 

  • PCL下载与电脑环境配置
    1. PCL下载

点击下方网址进入PCL下载端,一定要注意版本问题,我装的是PCL1.12.0版本。如下图所示,要下载ALLInOne和pdb两个文件。

https://github.com/PointCloudLibrary/pcl/releases

 

图 1

在下载完成后,双击打开ALLInOne那个文件,打开界面如下图所示。

 

图 2

接着下一步后选择第二个再点下一步。

 

图 3

这里的安装目录尤为重要,要记住自己的安装位置,我是将安装位置放在D盘,在选择D盘后会自动在后面加上PCL 1.12.0文件,如下图4和图5所示。

 

图 4

 

图 5

接着点击安装就可。如图6所示。

 

图 6

在安装好的文件夹里,在3rdParty里找到OpenNI2文件如图7所示,里面有个程序,双击打开显示界面如图8所示。

 

图 7

 

图 8

点击下一步,然后点击remove,把安装位置改到与该程序同一个文件夹里,如图9和图10所示。在安装完成后结果如图11所示。然后将前面下载的pdb压缩文件解压到pcl\bin目录下。

 

图 9

​​​​​​​

图 10

 

图 11

 

图 12

1.2 电脑环境配置

Pcl下载已经完成,接下来进行电脑环境配置,打开电脑属性,选择高级设置,选择环境变量,如下图13所示。找到path选项如图14,然后点击编辑,在路径下依次添加环境,如图15所示。电脑环境配置也就完成了。

%PCL_ROOT%\3rdParty\FLANN\bin

%PCL_ROOT%\3rdParty\VTK\bin

%OPENNI2_REDIST64%

%OPENNI2_LIB64%

%OPENNI2_INCLUDE64%

(我安装的文件在D盘中,所以是这样的环境,如果安装在其他盘,要自行修改)

 

图 13

 

图 14

 

图 15

上面完成了PCL 1.12.0安装和电脑环境配置,一般按照步骤,然后留意一下文件安装位置即可。

 

  • VS2019配置pcl环境与测试

2.1 VS2019配置环境

意思就是在VS2019中可以调用点云库里的函数以及功能,实现对点云的数据处理。接下来分步骤讲解怎么配置。

首先打开安装好的VS2019,建立一个空项目如图16所示。我的空项目命名为PCLelement,然后在源文件下添加一个空项目。然后右击打开PCLelement选择属性,出现如图17所示界面,然后将配置改成Debug,平台改成x64。接着点击配置属性——调试——环境,在环境中添加如下路径。

PATH=D:\PCL1.12.0\\bin;

D:\PCL1.12.0\\3rdParty\FLANN\bin;

D:\PCL1.12.0\\3rdParty\VTK\bin;

D:\PCL 1.12.0\\3rdParty\OpenNI2\Tools

 

图 16

 

图 17

接着打开C/C++选项选择语言,将符合模式改成否,如图18所示。接着所有选项中SDL检查也改成否。如图19所示。

 

图 18

 

图 19

这是项目的属性就已经配好了,但是还没有加入pcl的库,为了以后使用方便,不用每次打开一个需要pcl的新项目都要加入一次pcl库,我接下来介绍的方法就是保存一个这样的属性,可以随时调用的。选择VS2019界面中的视图——其他视图——属性管理器,打开如下图20所示界面。我先配置debug环境,一般在学校里自己用的配置的都是debug环境,在公司里开源的就用release环境。所以点开debug,然后右击选择添加新的项目,保存为PCL1.12.0(文件命名随意,为了方便后面调用比较明白,所以命名为这个)。接着双击打开PCL1.12.0属性页。

 

图 20

添加包含目录:VC++目录——包含目录——点击右列,出现一个下拉列表,点击后出现编辑,点击进入。

 

图 21

D:\PCL 1.12.0\include\pcl-1.12

D:\PCL 1.12.0\3rdParty\Boost\include\boost-1_76

D:\PCL 1.12.0\3rdParty\Eigen\eigen3

D:\PCL 1.12.0\3rdParty\FLANN\include

D:\PCL 1.12.0\3rdParty\Qhull\include

D:\PCL 1.12.0\3rdParty\VTK\include\vtk-9.0

D:\PCL 1.12.0\3rdParty\OpenNI2\Include

添加库目录:VC++目录——库目录——点击右列,出现一个下拉列表,点击后出现编辑,点击进入。

 

图 22

D:\PCL 1.12.0\lib

D:\PCL 1.12.0\3rdParty\Boost\lib

D:\PCL 1.12.0\3rdParty\FLANN\lib

D:\PCL 1.12.0\3rdParty\Qhull\lib

D:\PCL 1.12.0\3rdParty\OpenNI2\Lib

D:\PCL 1.12.0\3rdParty\VTK\lib

这里出现的问题就是一定要看清楚自己下载的pcl是什么版本的,不要胡乱粘贴复制,还有你下载的文件位置也要看清楚。

接着打开链接器——常规——附加库目录加入.lib库,和上方的一样。

 

图 23

最后就是配置附加依赖项:在链接器——输入——附加依赖项中添加如下:

 

图 24

(注意这是在debug环境下)

pcl_commond.lib

pcl_featuresd.lib

pcl_filtersd.lib

pcl_iod.lib

pcl_io_plyd.lib

pcl_kdtreed.lib

pcl_keypointsd.lib

pcl_mld.lib

pcl_octreed.lib

pcl_outofcored.lib

pcl_peopled.lib

pcl_recognitiond.lib

pcl_registrationd.lib

pcl_sample_consensusd.lib

pcl_searchd.lib

pcl_segmentationd.lib

pcl_stereod.lib

pcl_surfaced.lib

pcl_trackingd.lib

pcl_visualizationd.lib

libboost_atomic-vc142-mt-gd-x64-1_76.lib

libboost_bzip2-vc142-mt-gd-x64-1_76.lib

libboost_chrono-vc142-mt-gd-x64-1_76.lib

libboost_container-vc142-mt-gd-x64-1_76.lib

libboost_context-vc142-mt-gd-x64-1_76.lib

libboost_contract-vc142-mt-gd-x64-1_76.lib

libboost_coroutine-vc142-mt-gd-x64-1_76.lib

libboost_date_time-vc142-mt-gd-x64-1_76.lib

libboost_exception-vc142-mt-gd-x64-1_76.lib

libboost_fiber-vc142-mt-gd-x64-1_76.lib

libboost_filesystem-vc142-mt-gd-x64-1_76.lib

libboost_graph-vc142-mt-gd-x64-1_76.lib

libboost_graph_parallel-vc142-mt-gd-x64-1_76.lib

libboost_iostreams-vc142-mt-gd-x64-1_76.lib

libboost_json-vc142-mt-gd-x64-1_76.lib

libboost_locale-vc142-mt-gd-x64-1_76.lib

libboost_log-vc142-mt-gd-x64-1_76.lib

libboost_log_setup-vc142-mt-gd-x64-1_76.lib

libboost_math_c99-vc142-mt-gd-x64-1_76.lib

libboost_math_c99f-vc142-mt-gd-x64-1_76.lib

libboost_math_c99l-vc142-mt-gd-x64-1_76.lib

libboost_math_tr1-vc142-mt-gd-x64-1_76.lib

libboost_math_tr1f-vc142-mt-gd-x64-1_76.lib

libboost_math_tr1l-vc142-mt-gd-x64-1_76.lib

libboost_mpi-vc142-mt-gd-x64-1_76.lib

libboost_nowide-vc142-mt-gd-x64-1_76.lib

libboost_numpy38-vc142-mt-gd-x64-1_76.lib

libboost_prg_exec_monitor-vc142-mt-gd-x64-1_76.lib

libboost_program_options-vc142-mt-gd-x64-1_76.lib

libboost_python38-vc142-mt-gd-x64-1_76.lib

libboost_random-vc142-mt-gd-x64-1_76.lib

libboost_regex-vc142-mt-gd-x64-1_76.lib

libboost_serialization-vc142-mt-gd-x64-1_76.lib

libboost_stacktrace_noop-vc142-mt-gd-x64-1_76.lib

libboost_stacktrace_windbg-vc142-mt-gd-x64-1_76.lib

libboost_stacktrace_windbg_cached-vc142-mt-gd-x64-1_76.lib

libboost_system-vc142-mt-gd-x64-1_76.lib

libboost_test_exec_monitor-vc142-mt-gd-x64-1_76.lib

libboost_thread-vc142-mt-gd-x64-1_76.lib

libboost_timer-vc142-mt-gd-x64-1_76.lib

libboost_type_erasure-vc142-mt-gd-x64-1_76.lib

libboost_unit_test_framework-vc142-mt-gd-x64-1_76.lib

libboost_wave-vc142-mt-gd-x64-1_76.lib

libboost_wserialization-vc142-mt-gd-x64-1_76.lib

libboost_zlib-vc142-mt-gd-x64-1_76.lib

flann-gd.lib

flann_cpp-gd.lib

flann_cpp_s-gd.lib

flann_s-gd.lib

qhullcpp_d.lib

qhullstatic_d.lib

qhullstatic_rd.lib

qhull_rd.lib

vtkChartsCore-9.0d.lib

vtkCommonColor-9.0d.lib

vtkCommonComputationalGeometry-9.0d.lib

vtkCommonCore-9.0d.lib

vtkCommonDataModel-9.0d.lib

vtkCommonExecutionModel-9.0d.lib

vtkCommonMath-9.0d.lib

vtkCommonMisc-9.0d.lib

vtkCommonSystem-9.0d.lib

vtkCommonTransforms-9.0d.lib

vtkDICOMParser-9.0d.lib

vtkDomainsChemistry-9.0d.lib

vtkDomainsChemistryOpenGL2-9.0d.lib

vtkdoubleconversion-9.0d.lib

vtkexodusII-9.0d.lib

vtkexpat-9.0d.lib

vtkFiltersAMR-9.0d.lib

vtkFiltersCore-9.0d.lib

vtkFiltersExtraction-9.0d.lib

vtkFiltersFlowPaths-9.0d.lib

vtkFiltersGeneral-9.0d.lib

vtkFiltersGeneric-9.0d.lib

vtkFiltersGeometry-9.0d.lib

vtkFiltersHybrid-9.0d.lib

vtkFiltersHyperTree-9.0d.lib

vtkFiltersImaging-9.0d.lib

vtkFiltersModeling-9.0d.lib

vtkFiltersParallel-9.0d.lib

vtkFiltersParallelImaging-9.0d.lib

vtkFiltersPoints-9.0d.lib

vtkFiltersProgrammable-9.0d.lib

vtkFiltersSelection-9.0d.lib

vtkFiltersSMP-9.0d.lib

vtkFiltersSources-9.0d.lib

vtkFiltersStatistics-9.0d.lib

vtkFiltersTexture-9.0d.lib

vtkFiltersTopology-9.0d.lib

vtkFiltersVerdict-9.0d.lib

vtkfreetype-9.0d.lib

vtkGeovisCore-9.0d.lib

vtkgl2ps-9.0d.lib

vtkglew-9.0d.lib

vtkhdf5-9.0d.lib

vtkhdf5_hl-9.0d.lib

vtkImagingColor-9.0d.lib

vtkImagingCore-9.0d.lib

vtkImagingFourier-9.0d.lib

vtkImagingGeneral-9.0d.lib

vtkImagingHybrid-9.0d.lib

vtkImagingMath-9.0d.lib

vtkImagingMorphological-9.0d.lib

vtkImagingSources-9.0d.lib

vtkImagingStatistics-9.0d.lib

vtkImagingStencil-9.0d.lib

vtkInfovisCore-9.0d.lib

vtkInfovisLayout-9.0d.lib

vtkInteractionImage-9.0d.lib

vtkInteractionStyle-9.0d.lib

vtkInteractionWidgets-9.0d.lib

vtkIOAMR-9.0d.lib

vtkIOAsynchronous-9.0d.lib

vtkIOCityGML-9.0d.lib

vtkIOCore-9.0d.lib

vtkIOEnSight-9.0d.lib

vtkIOExodus-9.0d.lib

vtkIOExport-9.0d.lib

vtkIOExportGL2PS-9.0d.lib

vtkIOExportPDF-9.0d.lib

vtkIOGeometry-9.0d.lib

vtkIOImage-9.0d.lib

vtkIOImport-9.0d.lib

vtkIOInfovis-9.0d.lib

vtkIOLegacy-9.0d.lib

vtkIOLSDyna-9.0d.lib

vtkIOMINC-9.0d.lib

vtkIOMotionFX-9.0d.lib

vtkIOMovie-9.0d.lib

vtkIONetCDF-9.0d.lib

vtkIOOggTheora-9.0d.lib

vtkIOParallel-9.0d.lib

vtkIOParallelXML-9.0d.lib

vtkIOPLY-9.0d.lib

vtkIOSegY-9.0d.lib

vtkIOSQL-9.0d.lib

vtkIOTecplotTable-9.0d.lib

vtkIOVeraOut-9.0d.lib

vtkIOVideo-9.0d.lib

vtkIOXML-9.0d.lib

vtkIOXMLParser-9.0d.lib

vtkjpeg-9.0d.lib

vtkjsoncpp-9.0d.lib

vtklibharu-9.0d.lib

vtklibproj-9.0d.lib

vtklibxml2-9.0d.lib

vtkloguru-9.0d.lib

vtklz4-9.0d.lib

vtklzma-9.0d.lib

vtkmetaio-9.0d.lib

vtknetcdf-9.0d.lib

vtkogg-9.0d.lib

vtkParallelCore-9.0d.lib

vtkParallelDIY-9.0d.lib

vtkpng-9.0d.lib

vtkpugixml-9.0d.lib

vtkRenderingAnnotation-9.0d.lib

vtkRenderingContext2D-9.0d.lib

vtkRenderingContextOpenGL2-9.0d.lib

vtkRenderingCore-9.0d.lib

vtkRenderingFreeType-9.0d.lib

vtkRenderingGL2PSOpenGL2-9.0d.lib

vtkRenderingImage-9.0d.lib

vtkRenderingLabel-9.0d.lib

vtkRenderingLOD-9.0d.lib

vtkRenderingOpenGL2-9.0d.lib

vtkRenderingSceneGraph-9.0d.lib

vtkRenderingUI-9.0d.lib

vtkRenderingVolume-9.0d.lib

vtkRenderingVolumeOpenGL2-9.0d.lib

vtkRenderingVtkJS-9.0d.lib

vtksqlite-9.0d.lib

vtksys-9.0d.lib

vtkTestingRendering-9.0d.lib

vtktheora-9.0d.lib

vtktiff-9.0d.lib

vtkverdict-9.0d.lib

vtkViewsContext2D-9.0d.lib

vtkViewsCore-9.0d.lib

vtkViewsInfovis-9.0d.lib

vtkWrappingTools-9.0d.lib

vtkzlib-9.0d.lib

如果是release的文件添加如下:

pcl_common.lib

pcl_features.lib

pcl_filters.lib

pcl_io.lib

pcl_io_ply.lib

pcl_kdtree.lib

pcl_keypoints.lib

pcl_ml.lib

pcl_octree.lib

pcl_outofcore.lib

pcl_people.lib

pcl_recognition.lib

pcl_registration.lib

pcl_sample_consensus.lib

pcl_search.lib

pcl_segmentation.lib

pcl_stereo.lib

pcl_surface.lib

pcl_tracking.lib

pcl_visualization.lib

libboost_atomic-vc142-mt-x64-1_76.lib

libboost_bzip2-vc142-mt-x64-1_76.lib

libboost_chrono-vc142-mt-x64-1_76.lib

libboost_container-vc142-mt-x64-1_76.lib

libboost_context-vc142-mt-x64-1_76.lib

libboost_contract-vc142-mt-x64-1_76.lib

libboost_coroutine-vc142-mt-x64-1_76.lib

libboost_date_time-vc142-mt-x64-1_76.lib

libboost_exception-vc142-mt-x64-1_76.lib

libboost_fiber-vc142-mt-x64-1_76.lib

libboost_filesystem-vc142-mt-x64-1_76.lib

libboost_graph-vc142-mt-x64-1_76.lib

libboost_graph_parallel-vc142-mt-x64-1_76.lib

libboost_iostreams-vc142-mt-x64-1_76.lib

libboost_json-vc142-mt-x64-1_76.lib

libboost_locale-vc142-mt-x64-1_76.lib

libboost_log-vc142-mt-x64-1_76.lib

libboost_log_setup-vc142-mt-x64-1_76.lib

libboost_math_c99-vc142-mt-x64-1_76.lib

libboost_math_c99f-vc142-mt-x64-1_76.lib

libboost_math_c99l-vc142-mt-x64-1_76.lib

libboost_math_tr1-vc142-mt-x64-1_76.lib

libboost_math_tr1f-vc142-mt-x64-1_76.lib

libboost_math_tr1l-vc142-mt-x64-1_76.lib

libboost_mpi-vc142-mt-x64-1_76.lib

libboost_nowide-vc142-mt-x64-1_76.lib

libboost_numpy38-vc142-mt-x64-1_76.lib

libboost_prg_exec_monitor-vc142-mt-x64-1_76.lib

libboost_program_options-vc142-mt-x64-1_76.lib

libboost_python38-vc142-mt-x64-1_76.lib

libboost_random-vc142-mt-x64-1_76.lib

libboost_regex-vc142-mt-x64-1_76.lib

libboost_serialization-vc142-mt-x64-1_76.lib

libboost_stacktrace_noop-vc142-mt-x64-1_76.lib

libboost_stacktrace_windbg-vc142-mt-x64-1_76.lib

libboost_stacktrace_windbg_cached-vc142-mt-x64-1_76.lib

libboost_system-vc142-mt-x64-1_76.lib

libboost_test_exec_monitor-vc142-mt-x64-1_76.lib

libboost_thread-vc142-mt-x64-1_76.lib

libboost_timer-vc142-mt-x64-1_76.lib

libboost_type_erasure-vc142-mt-x64-1_76.lib

libboost_unit_test_framework-vc142-mt-x64-1_76.lib

libboost_wave-vc142-mt-x64-1_76.lib

libboost_wserialization-vc142-mt-x64-1_76.lib

libboost_zlib-vc142-mt-x64-1_76.lib

flann.lib

flann_cpp.lib

flann_cpp_s.lib

flann_s.lib

qhullcpp.lib

qhullstatic.lib

qhullstatic_r.lib

qhull_r.lib

vtkChartsCore-9.0.lib

vtkCommonColor-9.0.lib

vtkCommonComputationalGeometry-9.0.lib

vtkCommonCore-9.0.lib

vtkCommonDataModel-9.0.lib

vtkCommonExecutionModel-9.0.lib

vtkCommonMath-9.0.lib

vtkCommonMisc-9.0.lib

vtkCommonSystem-9.0.lib

vtkCommonTransforms-9.0.lib

vtkDICOMParser-9.0.lib

vtkDomainsChemistry-9.0.lib

vtkDomainsChemistryOpenGL2-9.0.lib

vtkdoubleconversion-9.0.lib

vtkexodusII-9.0.lib

vtkexpat-9.0.lib

vtkFiltersAMR-9.0.lib

vtkFiltersCore-9.0.lib

vtkFiltersExtraction-9.0.lib

vtkFiltersFlowPaths-9.0.lib

vtkFiltersGeneral-9.0.lib

vtkFiltersGeneric-9.0.lib

vtkFiltersGeometry-9.0.lib

vtkFiltersHybrid-9.0.lib

vtkFiltersHyperTree-9.0.lib

vtkFiltersImaging-9.0.lib

vtkFiltersModeling-9.0.lib

vtkFiltersParallel-9.0.lib

vtkFiltersParallelImaging-9.0.lib

vtkFiltersPoints-9.0.lib

vtkFiltersProgrammable-9.0.lib

vtkFiltersSelection-9.0.lib

vtkFiltersSMP-9.0.lib

vtkFiltersSources-9.0.lib

vtkFiltersStatistics-9.0.lib

vtkFiltersTexture-9.0.lib

vtkFiltersTopology-9.0.lib

vtkFiltersVerdict-9.0.lib

vtkfreetype-9.0.lib

vtkGeovisCore-9.0.lib

vtkgl2ps-9.0.lib

vtkglew-9.0.lib

vtkhdf5-9.0.lib

vtkhdf5_hl-9.0.lib

vtkImagingColor-9.0.lib

vtkImagingCore-9.0.lib

vtkImagingFourier-9.0.lib

vtkImagingGeneral-9.0.lib

vtkImagingHybrid-9.0.lib

vtkImagingMath-9.0.lib

vtkImagingMorphological-9.0.lib

vtkImagingSources-9.0.lib

vtkImagingStatistics-9.0.lib

vtkImagingStencil-9.0.lib

vtkInfovisCore-9.0.lib

vtkInfovisLayout-9.0.lib

vtkInteractionImage-9.0.lib

vtkInteractionStyle-9.0.lib

vtkInteractionWidgets-9.0.lib

vtkIOAMR-9.0.lib

vtkIOAsynchronous-9.0.lib

vtkIOCityGML-9.0.lib

vtkIOCore-9.0.lib

vtkIOEnSight-9.0.lib

vtkIOExodus-9.0.lib

vtkIOExport-9.0.lib

vtkIOExportGL2PS-9.0.lib

vtkIOExportPDF-9.0.lib

vtkIOGeometry-9.0.lib

vtkIOImage-9.0.lib

vtkIOImport-9.0.lib

vtkIOInfovis-9.0.lib

vtkIOLegacy-9.0.lib

vtkIOLSDyna-9.0.lib

vtkIOMINC-9.0.lib

vtkIOMotionFX-9.0.lib

vtkIOMovie-9.0.lib

vtkIONetCDF-9.0.lib

vtkIOOggTheora-9.0.lib

vtkIOParallel-9.0.lib

vtkIOParallelXML-9.0.lib

vtkIOPLY-9.0.lib

vtkIOSegY-9.0.lib

vtkIOSQL-9.0.lib

vtkIOTecplotTable-9.0.lib

vtkIOVeraOut-9.0.lib

vtkIOVideo-9.0.lib

vtkIOXML-9.0.lib

vtkIOXMLParser-9.0.lib

vtkjpeg-9.0.lib

vtkjsoncpp-9.0.lib

vtklibharu-9.0.lib

vtklibproj-9.0.lib

vtklibxml2-9.0.lib

vtkloguru-9.0.lib

vtklz4-9.0.lib

vtklzma-9.0.lib

vtkmetaio-9.0.lib

vtknetcdf-9.0.lib

vtkogg-9.0.lib

vtkParallelCore-9.0.lib

vtkParallelDIY-9.0.lib

vtkpng-9.0.lib

vtkpugixml-9.0.lib

vtkRenderingAnnotation-9.0.lib

vtkRenderingContext2D-9.0.lib

vtkRenderingContextOpenGL2-9.0.lib

vtkRenderingCore-9.0.lib

vtkRenderingFreeType-9.0.lib

vtkRenderingGL2PSOpenGL2-9.0.lib

vtkRenderingImage-9.0.lib

vtkRenderingLabel-9.0.lib

vtkRenderingLOD-9.0.lib

vtkRenderingOpenGL2-9.0.lib

vtkRenderingSceneGraph-9.0.lib

vtkRenderingUI-9.0.lib

vtkRenderingVolume-9.0.lib

vtkRenderingVolumeOpenGL2-9.0.lib

vtkRenderingVtkJS-9.0.lib

vtksqlite-9.0.lib

vtksys-9.0.lib

vtkTestingRendering-9.0.lib

vtktheora-9.0.lib

vtktiff-9.0.lib

vtkverdict-9.0.lib

vtkViewsContext2D-9.0.lib

vtkViewsCore-9.0.lib

vtkViewsInfovis-9.0.lib

vtkWrappingTools-9.0.lib

vtkzlib-9.0.lib

2.2 测试

我在网上下载了一个兔子的点云文件:rabbit.pcd文件,在VS2019中用代码进行打开如图25所示:

 

图 25

然后用简单的点云3D重构算法对该兔子的点云进行处理后得到的图像为如图26所示:

 

图 26

至此测试完成。

三、总结

在这次配置环境过程中我学到了如何配置电脑环境,如何配置软件环境来使用相应软件没有自带的库,接触了读取.pcd文件的算法,以及简单的点云3D重构算法,由图27可以看出,该重构效果还是有待改进,在红框框住地方仍有大片出现断层的现象。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

电脑环境PCL配置及VS2019环境配置 的相关文章

随机推荐

  • ubuntu20.04离线安装rabbitvcs

    在内网开发的时候 xff0c 管理更新代码非常不方便 xff0c 使用svn是非常普遍的现象 小乌龟svn貌似只有windows版本的 xff0c 在linux系统下与其操作接近的软件rabbitcvs变成了最好的选择 在线安装rabbit
  • 实机安装CentOS7.9操作系统图文(保姆级)教程

    一 制作启动U盘 1 下载Ventoy软件 去Ventoy官网下载Ventoy软件 xff08 Download Ventoy xff09 如下图界面 2 制作启动盘 选择合适的版本以及平台下载好之后 xff0c 进行解压 xff0c 解压
  • Angular8升级至Angular13遇到的问题

    根据项目需求 xff0c 需要把Angular版本从8升级到13 xff0c 无法从8直接升至13 xff0c 需要一级一级的升级 xff0c 本文介绍了在升级Angular版本的时候的一种报错和解决办法 一 开始之前 首先确保你 Node
  • mysql怎么查询表的大小

    通过sql语句查询整个数据库的容量 xff0c 或是单独查看表所占容量 1 要查询表所占的容量 xff0c 就是把表的数据和索引加起来就可以了 1 select sum DATA LENGTH 43 sum INDEX LENGTH fro
  • CEF3 C++接口实现自定义浏览器[simple version]

    目录 目录 1 一 工具准备 2 二 编译C 43 43 接口 2 三 实现浏览器 5 浏览器定制 5 浏览器默认最大化 xff0c 标题从配置文件读取 5 设置浏览器中文环境 xff0c 开启npapi插件功能 xff0c 并注册身份证阅
  • Windows笔记本声音无法找到输出设备

    现象 xff1a 扬声器无法正常工作 xff0c 声音选项提示无法找到输出设备 xff0c 设备管理器的音频输入和输出的声卡文件旁边有黄色的感叹号 xff0c 属性详情里面设备状态提示 xff1a 该设备无法启动 xff08 代码10 xf
  • C++扑克牌发牌

    自动发扑克牌 52张牌无大小王随机发给4个玩家 poker cpp 自动发扑克牌 52张牌无大小王随机发给4个 loaction src poker cpp include lt assert h gt include lt iostrea
  • ArchLinux下i3wm简单配置和美化

    先show下自己配置的截图 简单弄了下 xff0c 凑合用 本文默认你已经安装了基本的archlinux系统 xff0c 只是没有配置桌面环境 所以跳过前面archlinux的基础安装过程 ArchLinux的具体安装请参见我的博客 htt
  • CentOS8下编译配置nginx+rtmp,搭建推流服务器

    一 环境 服务器操作系统 xff1a CentOS Linux release 8 2 2004 Core nginx 版本 https nginx org download nginx 1 18 0 tar gz RMTP模块 xff1a
  • CentOS7网络配置(ping不同的原因及解决方法)

    这是配置好的CentOS7 xff0c 刚开始在Vmware里装CentOS7后是没有ip的 xff0c 原因是CentOS7默认不启动网卡的 xff0c 网卡不启用还ping个毛 进入 etc sysconfig network scip
  • SpringBoot-JPA进行多表连接查询

    通过JPA进行简单的 内 连接查询 1 准备 1 1开发工具Intellij Idea 1 2数据库mysql 1 3新建Spring Initializr项目 xff0c 勾选web mysql rest jpa依赖 2 开始 2 1项目
  • 响应式导航栏-利用纯css实现

    思路 xff1a 当屏幕为移动设备时 xff0c 隐藏导航栏列表项目 xff0c 显示菜单按钮 给菜单按钮 xff08 电脑时隐藏 xff09 加入hover 或者checked选择器实现 xff0c 当hover或者checked的触发时
  • BTRFS文件系统安装ArchLinux

    layout post title BTRFS文件系统安装ArchLinux date 2017 10 02 categories Linux 主要为以下步骤 xff1a 1 下载ArchLinux安装镜像并 制作U盘启动工具 2 开机进入
  • JSP文件上传

    JSP文件上传 网上的方法几乎都是使用的org apache commons fileupload的jar包 xff0c 需要手动下载导入commons fileupload jar和commons io jar 其实tomcat自带的or
  • ORPALIS PDF Reducer Pro(免费pdf压缩器工具)官方正式版V4.0.1 | pdf免费压缩软下载 | 怎样将pdf压缩得很小?

    ORPALIS PDF Reducer Pro 是一款优秀实用的离线单机版pdf免费压缩软件 xff0c 也就是大家说的免费pdf压缩器工具 xff0c 内置多种超高压缩比的PDF压缩算法和创新的页面布局分析以及自动颜色检测机制 xff0c
  • ubuntu系统文件夹作用

    opt 文件夹 用户级的程序目录 xff0c 可以理解为D Software xff0c opt有可选的意思 xff0c 这里可以用于放置第三方大型软件 xff08 或游戏 xff09 xff0c 当你不需要时 xff0c 直接rm rf掉
  • rhel7安装GUI

    check the rank of starting system systenmctl get default not found startx 查看光盘是否挂载 df 挂载 yum mount dev sr0 mnt mount dev
  • org-mode Properties-and-Columns翻译

    https orgmode org manual Properties and Columns html Properties and Columns 文章目录 属性属性语法特殊属性属性查询属性继承 Column View 列视图定义列列定
  • python利用ffmpeg进行rtmp推流直播

    思路 xff1a opencv读取视频 gt 将视频分割为帧 gt 将每一帧进行需求加工后 gt 将此帧写入pipe管道 gt 利用ffmpeg进行推流直播 pipe管道 xff1a 啥是pipe管道 xff1f 粗略的理解就是一个放共享文
  • 电脑环境PCL配置及VS2019环境配置

    VS2019配置pcl 1 12 0 前言 对于 3D 点云处理来说 xff0c PCL 完全是一个的模块化的现代 C 43 43 模板库 其基于以下第三方库 xff1a Boost Eigen FLANN VTK CUDA OpenNI