win11下配置visual studio 2022+PCL1.13.1

第一部分:visual studio2022 安装

vs官网网址如下:https://visualstudio.microsoft.com/zh-hans/vs/

第一步:我们打开官网链接,按如下操作点击下载免费版本的exe文件

第二步:打开下载目录下的安装文件进行安装,安装步骤如下:

按流程安装完成后创建桌面快捷方式

选择完成会弹出快捷方式文件,直接拷贝此文件然后复制粘贴桌面即可

第三步:创建新项目

双击快捷方式,打开vs界面,按下面操作进行

按照要求位置填写项目名称及挂载位置

打开项目后右边会有一个解决方案资源管理器,在此处的源文件下右键点击并选择:添加——模块——C++文件(.cpp)

设置完文件名和位置后点击添加,完成项目创建

第二部分:安装配置PCL

由于我们安装的是vs2022版本,此处在网站上选择vs2022对应的pcl版本【旧版本可以下拉页面选择】

安装网址:https://github.com/PointCloudLibrary/pcl/releases

第一步:此处选择前两个文件点击安装:

1、点击下载对应的AllInOne的exe文件:PCL-1.13.1-AllInOne-msvc2022-win64.exe

2、点击下载对应的pdb文件:pcl-1.13.1-pdb-msvc2022-win64.zip

下载完成后点击下载文件的文件夹,选择刚刚下载的.exe后缀文件,按下面步骤进行安装

点击安装,安装期间会弹出确认安装文件框,点击安装就可以

安装完成PCL后,我们还需要确认一下C:\Program Files路径下有没有OpenNI2文件夹,如果没有的话按照下面方法进行安装,如果有的话建议删除重装OpenNI2,实测没有重装后续会出问题,没重装的朋友也记得后期配置环境变量的时候自行更改环境变量的路径

第二步:卸载重装OpenNI2

【此处引用其他博客内容,图片可能会有些奇怪,大家按正常理解进行操作就行,也可以打开此博客查看(14条消息) Windows11+VS2022+PCL1.13.0 安装配置记录_WoooChi的博客-CSDN博客】

下面进行OpenNI2卸载操作

下面是OpenNI2安装操作

安装完成,安装路径下就会有如下内容,并且原来的OpenNI2文件已删除

第三步:安装pcl-1.13.1-pdb-msvc2022-win64.zip

到下载目录下,将我们下载的第二个文件:pcl-1.13.0-pdb-msvc2022-win64.zip打开,这里边有很多.pdb文件,全选复制所有文件

打开下载的PCL文件目录C:\Program Files\PCL 1.13.0\bin,将全部文件粘贴进去,完成安装

第四步:配置PCL环境变量

配置步骤如下

我的环境配置如下:【大家可根据自己下载路径更改】

OPENNI2_INCLUDE64 C:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Include\OPENNI2_LIB64 C:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Lib\OPENNI2_REDIST64 C:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Redist\PCL_ROOT C:\Program Files\PCL 1.13.1

确认此处无误后按如下操作

添加内容如下:

%PCL_ROOT%\bin%PCL_ROOT%\3rdParty\VTK\bin%PCL_ROOT%\3rdParty\FLANN\bin%PCL_ROOT%\3rdParty\Qhull\bin%PCL_ROOT%\3rdParty\OpenNI2\Tools%OPENNI2_REDIST64%%OPENNI2_LIB64%%OPENNI2_INCLUDE64%

添加完点击确定完成系统环境变量配置

第三部分:在vs里面设置PCL环境变量

第一步:打开vs2022并创建一个新项目【前面有了】

第二步:打开属性管理器

【可以在最上面的那行菜单栏里面找到视图——打开视图下的属性管理器】

出现下面窗口,右键点击Debug|x64【由于我是Debug的需求,且电脑是x64】

按下面操作:

加入内容

C:\Program Files\PCL 1.13.1\3rdParty\Boost\include\boost-1_80C:\Program Files\PCL 1.13.1\3rdParty\Eigen\eigen3C:\Program Files\PCL 1.13.1\3rdParty\FLANN\includeC:\Program Files\PCL 1.13.1\3rdParty\Qhull\includeC:\Program Files\PCL 1.13.1\3rdParty\VTK\include\vtk-9.2C:\Program Files\PCL 1.13.1\include\pcl-1.13C:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Include # OpenNI2安装地址可以自行更改

加入内容:

C:\Program Files\PCL 1.13.1\3rdParty\Boost\libC:\Program Files\PCL 1.13.1\libC:\Program Files\PCL 1.13.1\3rdParty\FLANN\libC:\Program Files\PCL 1.13.1\3rdParty\Qhull\libC:\Program Files\PCL 1.13.1\3rdParty\VTK\libC:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Lib

加入内容如下

_DEBUG;_CONSOLE;_SCL_SECURE_NO_WARNINGS;_CRT_SECURE_NO_WARNINGS;

这里加入一个博主获取PCL和VTK的lib文件的代码,这些文件大家可以用这份代码获取,获取完全部集合在一起然后放到指定路径下就行

【链接:(14条消息) Windows11+VS2022+PCL1.13.0 安装配置记录_WoooChi的博客-CSDN博客】

import osdef Extract_lib(path):release = open("release_lib.txt", 'w')debug = open("debug_lib.txt", 'w')for file in os.listdir(path):if file[-5:] == 'd.lib':debug.write(file)debug.write('\n')elif file[-4:] == '.lib':release.write(file)release.write('\n')debug.close()release.close()if __name__ == '__main__':path = r"D:\Program Files (x86)\OPenCV\x64\vc16\lib"Extract_lib(path)

lib文件名放置位置在这里

我的文件集合如下:【Denug版本】

pcl_commond.libpcl_featuresd.libpcl_filtersd.libpcl_iod.libpcl_io_plyd.libpcl_kdtreed.libpcl_keypointsd.libpcl_mld.libpcl_octreed.libpcl_outofcored.libpcl_peopled.libpcl_recognitiond.libpcl_registrationd.libpcl_sample_consensusd.libpcl_searchd.libpcl_segmentationd.libpcl_stereod.libpcl_surfaced.libpcl_trackingd.libpcl_visualizationd.liblibboost_atomic-vc143-mt-gd-x64-1_82.liblibboost_bzip2-vc143-mt-gd-x64-1_82.liblibboost_chrono-vc143-mt-gd-x64-1_82.liblibboost_container-vc143-mt-gd-x64-1_82.liblibboost_context-vc143-mt-gd-x64-1_82.liblibboost_contract-vc143-mt-gd-x64-1_82.liblibboost_coroutine-vc143-mt-gd-x64-1_82.liblibboost_date_time-vc143-mt-gd-x64-1_82.liblibboost_exception-vc143-mt-gd-x64-1_82.liblibboost_fiber-vc143-mt-gd-x64-1_82.liblibboost_filesystem-vc143-mt-gd-x64-1_82.liblibboost_graph-vc143-mt-gd-x64-1_82.liblibboost_graph_parallel-vc143-mt-gd-x64-1_82.liblibboost_iostreams-vc143-mt-gd-x64-1_82.liblibboost_json-vc143-mt-gd-x64-1_82.liblibboost_locale-vc143-mt-gd-x64-1_82.liblibboost_log-vc143-mt-gd-x64-1_82.liblibboost_log_setup-vc143-mt-gd-x64-1_82.liblibboost_math_c99-vc143-mt-gd-x64-1_82.liblibboost_math_c99f-vc143-mt-gd-x64-1_82.liblibboost_math_c99l-vc143-mt-gd-x64-1_82.liblibboost_math_tr1-vc143-mt-gd-x64-1_82.liblibboost_math_tr1f-vc143-mt-gd-x64-1_82.liblibboost_math_tr1l-vc143-mt-gd-x64-1_82.liblibboost_mpi-vc143-mt-gd-x64-1_82.liblibboost_nowide-vc143-mt-gd-x64-1_82.liblibboost_numpy310-vc143-mt-gd-x64-1_82.liblibboost_prg_exec_monitor-vc143-mt-gd-x64-1_82.liblibboost_program_options-vc143-mt-gd-x64-1_82.liblibboost_python310-vc143-mt-gd-x64-1_82.liblibboost_random-vc143-mt-gd-x64-1_82.liblibboost_regex-vc143-mt-gd-x64-1_82.liblibboost_serialization-vc143-mt-gd-x64-1_82.liblibboost_stacktrace_noop-vc143-mt-gd-x64-1_82.liblibboost_stacktrace_windbg-vc143-mt-gd-x64-1_82.liblibboost_stacktrace_windbg_cached-vc143-mt-gd-x64-1_82.liblibboost_system-vc143-mt-gd-x64-1_82.liblibboost_test_exec_monitor-vc143-mt-gd-x64-1_82.liblibboost_thread-vc143-mt-gd-x64-1_82.liblibboost_timer-vc143-mt-gd-x64-1_82.liblibboost_type_erasure-vc143-mt-gd-x64-1_82.liblibboost_unit_test_framework-vc143-mt-gd-x64-1_82.liblibboost_wave-vc143-mt-gd-x64-1_82.liblibboost_wserialization-vc143-mt-gd-x64-1_82.liblibboost_zlib-vc143-mt-gd-x64-1_82.libflann-gd.libflann_cpp-gd.libflann_cpp_s-gd.libflann_s-gd.libqhullcpp_d.libqhullstatic_d.libqhullstatic_rd.libqhull_rd.libvtkcgns-9.2-gd.libvtkChartsCore-9.2-gd.libvtkCommonColor-9.2-gd.libvtkCommonComputationalGeometry-9.2-gd.libvtkCommonCore-9.2-gd.libvtkCommonDataModel-9.2-gd.libvtkCommonExecutionModel-9.2-gd.libvtkCommonMath-9.2-gd.libvtkCommonMisc-9.2-gd.libvtkCommonSystem-9.2-gd.libvtkCommonTransforms-9.2-gd.libvtkDICOMParser-9.2-gd.libvtkDomainsChemistry-9.2-gd.libvtkDomainsChemistryOpenGL2-9.2-gd.libvtkdoubleconversion-9.2-gd.libvtkexodusII-9.2-gd.libvtkexpat-9.2-gd.libvtkFiltersAMR-9.2-gd.libvtkFiltersCore-9.2-gd.libvtkFiltersExtraction-9.2-gd.libvtkFiltersFlowPaths-9.2-gd.libvtkFiltersGeneral-9.2-gd.libvtkFiltersGeneric-9.2-gd.libvtkFiltersGeometry-9.2-gd.libvtkFiltersHybrid-9.2-gd.libvtkFiltersHyperTree-9.2-gd.libvtkFiltersImaging-9.2-gd.libvtkFiltersModeling-9.2-gd.libvtkFiltersParallel-9.2-gd.libvtkFiltersParallelImaging-9.2-gd.libvtkFiltersPoints-9.2-gd.libvtkFiltersProgrammable-9.2-gd.libvtkFiltersSelection-9.2-gd.libvtkFiltersSMP-9.2-gd.libvtkFiltersSources-9.2-gd.libvtkFiltersStatistics-9.2-gd.libvtkFiltersTexture-9.2-gd.libvtkFiltersTopology-9.2-gd.libvtkFiltersVerdict-9.2-gd.libvtkfmt-9.2-gd.libvtkfreetype-9.2-gd.libvtkGeovisCore-9.2-gd.libvtkgl2ps-9.2-gd.libvtkglew-9.2-gd.libvtkhdf5-9.2-gd.libvtkhdf5_hl-9.2-gd.libvtkImagingColor-9.2-gd.libvtkImagingCore-9.2-gd.libvtkImagingFourier-9.2-gd.libvtkImagingGeneral-9.2-gd.libvtkImagingHybrid-9.2-gd.libvtkImagingMath-9.2-gd.libvtkImagingMorphological-9.2-gd.libvtkImagingSources-9.2-gd.libvtkImagingStatistics-9.2-gd.libvtkImagingStencil-9.2-gd.libvtkInfovisCore-9.2-gd.libvtkInfovisLayout-9.2-gd.libvtkInteractionImage-9.2-gd.libvtkInteractionStyle-9.2-gd.libvtkInteractionWidgets-9.2-gd.libvtkIOAMR-9.2-gd.libvtkIOAsynchronous-9.2-gd.libvtkIOCesium3DTiles-9.2-gd.libvtkIOCGNSReader-9.2-gd.libvtkIOChemistry-9.2-gd.libvtkIOCityGML-9.2-gd.libvtkIOCONVERGECFD-9.2-gd.libvtkIOCore-9.2-gd.libvtkIOEnSight-9.2-gd.libvtkIOExodus-9.2-gd.libvtkIOExport-9.2-gd.libvtkIOExportGL2PS-9.2-gd.libvtkIOExportPDF-9.2-gd.libvtkIOGeometry-9.2-gd.libvtkIOHDF-9.2-gd.libvtkIOImage-9.2-gd.libvtkIOImport-9.2-gd.libvtkIOInfovis-9.2-gd.libvtkIOIOSS-9.2-gd.libvtkIOLegacy-9.2-gd.libvtkIOLSDyna-9.2-gd.libvtkIOMINC-9.2-gd.libvtkIOMotionFX-9.2-gd.libvtkIOMovie-9.2-gd.libvtkIONetCDF-9.2-gd.libvtkIOOggTheora-9.2-gd.libvtkIOParallel-9.2-gd.libvtkIOParallelXML-9.2-gd.libvtkIOPLY-9.2-gd.libvtkIOSegY-9.2-gd.libvtkIOSQL-9.2-gd.libvtkioss-9.2-gd.libvtkIOTecplotTable-9.2-gd.libvtkIOVeraOut-9.2-gd.libvtkIOVideo-9.2-gd.libvtkIOXML-9.2-gd.libvtkIOXMLParser-9.2-gd.libvtkjpeg-9.2-gd.libvtkjsoncpp-9.2-gd.libvtkkissfft-9.2-gd.libvtklibharu-9.2-gd.libvtklibproj-9.2-gd.libvtklibxml2-9.2-gd.libvtkloguru-9.2-gd.libvtklz4-9.2-gd.libvtklzma-9.2-gd.libvtkmetaio-9.2-gd.libvtknetcdf-9.2-gd.libvtkogg-9.2-gd.libvtkParallelCore-9.2-gd.libvtkParallelDIY-9.2-gd.libvtkpng-9.2-gd.libvtkpugixml-9.2-gd.libvtkRenderingAnnotation-9.2-gd.libvtkRenderingContext2D-9.2-gd.libvtkRenderingContextOpenGL2-9.2-gd.libvtkRenderingCore-9.2-gd.libvtkRenderingFreeType-9.2-gd.libvtkRenderingGL2PSOpenGL2-9.2-gd.libvtkRenderingHyperTreeGrid-9.2-gd.libvtkRenderingImage-9.2-gd.libvtkRenderingLabel-9.2-gd.libvtkRenderingLICOpenGL2-9.2-gd.libvtkRenderingLOD-9.2-gd.libvtkRenderingOpenGL2-9.2-gd.libvtkRenderingSceneGraph-9.2-gd.libvtkRenderingUI-9.2-gd.libvtkRenderingVolume-9.2-gd.libvtkRenderingVolumeOpenGL2-9.2-gd.libvtkRenderingVtkJS-9.2-gd.libvtksqlite-9.2-gd.libvtksys-9.2-gd.libvtkTestingRendering-9.2-gd.libvtktheora-9.2-gd.libvtktiff-9.2-gd.libvtkverdict-9.2-gd.libvtkViewsContext2D-9.2-gd.libvtkViewsCore-9.2-gd.libvtkViewsInfovis-9.2-gd.libvtkWrappingTools-9.2-gd.libvtkzlib-9.2-gd.libOpenNI2.lib

确定完成后右键点击项目文件,进入属性页面,进行下面操作

添加内容如下

PATH=C:\Program Files\PCL 1.13.1\bin;C:\Program Files\PCL 1.13.1\3rdParty\FLANN\bin;C:\Program Files\PCL 1.13.1\3rdParty\VTK\bin;C:\Program Files\PCL 1.13.1\3rdParty\Qhull\bin;C:\Program Files\PCL 1.13.1\3rdParty\OpenNI2\Tools;

至此,完成全部安装配置,大家关闭项目,重启下电脑就可以用PCL进行编程啦!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/224124.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux系统基础】(5)在Linux上集群化环境前置准备及部署Zookeeper、Kafka软件详细教程

集群化环境前置准备 介绍 在前面,我们所学习安装的软件,都是以单机模式运行的。 后续,我们将要学习大数据相关的软件部署,所以后续我们所安装的软件服务,大多数都是以集群化(多台服务器共同工作&#xf…

DN-DETR调试记录

先前的DN-DETR模型都是在服务器上运行的,后来在本地运行时出现了一些小问题,这篇博文则主要介绍DN-DETR模型在本地运行时所需要做的配置。 运行环境 首先DN-DETR的运行环境与DINO一致,这里就不再赘述了。 博主使用的本地配置是I7-13700H406…

CentOS7部署bitbucket7.21.20-postgresql版

文章目录 1.资源下载2.上传服务器3.赋予执行权限并执行安装4.执行安装5.访问Bitbucket6.Bitbucket安装页面配置6.1连接Jira应用程序到PostgreSQL6.1.1创建并配置PostgreSQL数据库6.1.2测试数据库连接 6.2授权6.2.1授权包6.2.1.1资源地址6.2.1.2上传到服务器 6.2.2停止bitbucket…

Linux ContOS7 日志管理(rsyslog)

目录 01. rsyslog 记录日志程序 02.日志文件 03.日志等级 Linux 日志文件是记录 Linux 系统运行信息的文件。它们类似于人类的日记,记录了系统的各种活动,如用户登录、进程启动、错误消息等。 Linux 日志文件通常存储在 /var/log/ 目录中。该目录包含…

顺序表的实现

目录 一. 数据结构相关概念​ 二、线性表 三、顺序表概念及结构 3.1顺序表一般可以分为: 3.2 接口实现: 四、基本操作实现 4.1顺序表初始化 4.2检查空间,如果满了,进行增容​编辑 4.3顺序表打印 4.4顺序表销毁 4.5顺…

vmware安装中标麒麟高级服务器操作系统 V7.0

vmware安装中标麒麟高级服务器操作系统 V7.0 1、下载中标麒麟高级服务器操作系统 V7.0镜像2、安装中标麒麟高级服务器操作系统 V7.02.1、新建虚拟机2.2、安装虚拟机 3、配置中标麒麟高级服务器操作系统 V7.03.1、登录系统3.2、配置静态IP地址 和 dns3.3、查看磁盘分区3.4、查看…

Java网络爬虫拼接姓氏,名字并写出到txt文件(实现随机取名)

目录 1.爬取百家姓1.爬取代码2.爬取效果 2.爬取名字1.筛选男生名字2.筛选女生名字 3.数据处理(去除重复)4.拼接数据5.将数据写出到文件中 1.爬取百家姓 目标网站,仅作为实验目的。 ①爬取姓氏网站: https://hanyu.baidu.com/shic…

【OAuth2】授权框架的四种授权方式详解

🎉🎉欢迎来到我的CSDN主页!🎉🎉 🏅我是Java方文山,一个在CSDN分享笔记的博主。📚📚 🌟推荐给大家我的专栏《OAuth 2》。🎯🎯 &#x1…

经典文献阅读之--RenderOcc(使用2D标签训练多视图3D Occupancy模型)

0. 简介 3D占据预测在机器人感知和自动驾驶领域具有重要的潜力,它将3D场景量化为带有语义标签的网格单元。最近的研究主要利用3D体素空间中的完整占据标签进行监督。然而,昂贵的注释过程和有时模糊的标签严重限制了3D占据模型的可用性和可扩展性。为了解…

Netty-4-网络编程模式

我们经常听到各种各样的概念——阻塞、非阻塞、同步、异步,这些概念都与我们采用的网络编程模式有关。 例如,如果采用BIO网络编程模式,那么程序就具有阻塞、同步等特质。 诸如此类,不同的网络编程模式具有不同的特点&#xff0c…

​创新驱动,边缘计算领袖:亚马逊云科技海外服务器服务再进化

2022年亚马逊云科技re:Invent盛会于近日在拉斯维加斯成功召开,吸引了众多业界精英和创新者。亚马逊云科技边缘服务副总裁Jan Hofmeyr在演讲中分享了关于亚马逊云科技海外服务器边缘计算的最新发展和创新成果,引发与会者热烈关注。 re:Invent的核心主题是…

VMware虚拟机的安装配置

目录 一. VMware虚拟机的安装 二. VMware配置虚拟机 三. VMware安装windows server 2012 一. VMware虚拟机的安装 1. 双击安装,点击下一步 2. 勾选接受许可,点击下一步 3. 选择安装位置,点击下一步 4. 用户体验设置(可选&#…

2024年PMP考试新考纲-PMBOK第七版-项目管理原则真题解析(续3)

马上就要进入2024年了,要参加2024年PMP一季度考试的小伙伴可以准备起来了。2024年的PMP考试将继续采用新考试大纲,考试内容包括PMBOK第六版、PMBOK第七版和敏捷实践指南,而且敏捷(或者叫混合)的项目环境将占比超过50%&…

Python的基本数据类型和数据类型的转换

TOC 数据类型 类型查看 type 可以使用type内置函数查看变量所指的对象类型 a1 b1.0 c"1" d1, e[1] f{1:1} g{1}print(type(a)) print(type(b)) print(type(c)) print(type(d)) print(type(e)) print(type(f)) print(type(g))isinstance **如字面意思,isinstance()…

linux运行可执行文件,通过c语言调用java的main方法

前言&#xff1a;以前一直在做Android开发&#xff0c;在某本书上看过一句话“Android上面不只有App类的程序可以运行&#xff0c;能在linux下运行的程序&#xff0c;也可以在Android上面运行” 一.编写C语言部分代码 1.定义java.h头文件 #include <jni.h>#ifndef _JAV…

【微服务】springboot整合kafka-stream使用详解

目录 一、前言 二、kafka stream概述 2.1 什么是kafka stream 2.2 为什么需要kafka stream 2.2.1 对接成本低 2.2.2 节省资源 2.2.3 使用简单 2.3 kafka stream特点 2.4 kafka stream中的一些概念 2.5 Kafka Stream应用场景 三、环境准备 3.1 搭建zk 3.1.1 自定义d…

制作自己的 Docker 容器

软件开发最大的麻烦事之一&#xff0c;就是环境配置。用户必须保证操作系统的设置&#xff0c;各种库和组件的安装&#xff0c;只有它们都正确&#xff0c;软件才能运行。docker从根本上解决问题&#xff0c;软件安装的时候&#xff0c;把原始环境一模一样地复制过来。 以 koa-…

RHCE9学习指南 第9章 权限管理

9.1 所有者所属组 为了了解所有者和所属组的概念&#xff0c;我们先看图9-1。 图9-1 用房子来帮助理解所有者和所属组 张老板是公司老板&#xff0c;买了一套房作为员工宿舍给A部门的员工居住。张老板是房主&#xff0c;所以他对房子具有很多权限&#xff0c;A部门员工只能具…

SuperMap iServer发布的ArcGIS REST 地图服务如何通过ArcGIS API加载

作者&#xff1a;yx 文章目录 一、发布服务二、代码加载三、结果展示 一、发布服务 SuperMap iServer支持将地图发布为ArcGIS REST地图服务&#xff0c;您可以在发布服务时直接勾选ArcGIS REST地图服务&#xff0c;如下图所示&#xff1a; 也可以在已发布的地图服务中&#x…