前言
VS配合PCL开源库可以实现对于点云数据的相关处理,但是一直在编译器界面对点云处理毕竟不是长久之计,尤其是对于项目开发而言,有一个合适的软件界面是必不可少,因此需要对于PCL结合算法+界面进行综合开发。
综合开发的第一步:环境相关配置。
在VS编辑器中对PCL库进行配置相对简单,按照网上的相关教程进行基本就可以实现;头疼的是PCL库在界面开发软件中的配置(笔者使用的为Qt 5),由于PCL自带的VTK预编译的文件中不包含对于Qt的支持,因此想要正常使用,就必须使用Cmake对VTK进行编译。过程中遇到了一堆问题,特此记录,与君共勉。
本博文拟解决的问题如上所述,主要解决环境配置问题。
一、相关软件
-
Qt 5.14:界面开发软件.
-
PCL 1.8.1:开源点云处理算法库.
-
VS 2017:编译环境.
-
Cmake:编译VTK8.0.0.
二、配置过程
1. 软件安装
建议安装顺序为:VS / Qt —> PCL —> 配置VTK8.0.0.
1)Qt安装,参考博客;
2)PCL下载地址,安装请参考其他博客;
需要强调的是:Qt对于路径敏感,因此对于上述软件的安装位置建议,不要出现中文,不要出现空格,避免意外。
2. 编译VTK8.0.0
因为PCL 1.8.1对应的VTK版本为VTK 8.0.0,因此如果PCL版本为其他时,请选择与之对应的VTK版本进行编译。
1)解压源码,新建Build文件夹,在Cmake中配置好源码位置已经编译位置,点击Configure,选择与你VS版本一致的编译器,注意win32/x64.
2)一段时间后,进行如下配置:
BUILD:勾选BUILD SHARED LIBS,建议取消勾选TESTING和EXAMPLES.
CMAKE:CMAKE_INSTALL_PREFIX设置路径,其为VS编译后生成库文件的地方.
VTK:
勾选VTK_ALL_NEW_OBJECT_FACTORY 和 VTK_DEBUG_LEAKS;
勾选VTK_Group_Qt;
修改VTK_RENDERING_BACKEND为OpenGL2.
3)点击Configure,如下提示出现错误,点击OK.
VTK:修改VTK_QT_VERSION为5;
Ungrouped Entries:D:/SoftWare/Qt/Qt5.14.2/5.14.2/msvc2017 64/bin/qmake.exe,按照上述路径修改为你自己的文件位置.
4)点击Configure,出现如下,确保Ungrouped Entries下的所有Qt的配置路径正确.
再次点击Configure,没有错误,点击Generate.
5)以管理员身份运行VS,打开刚刚生成的解决方案:
在Debug/x64模式下,右键选择ALL_BUILD,点击生成,等待编译,没有错误的话,在选择INSTALL右键生成,即可在CMAKE中指定的路径生成库文件;
调整为Release/x64模式,重复上述步骤.
6)等待完成,即可得到Debug/Release两个版本的库文件,用其替代PCL中的VTK文件夹:
笔者的配置地址为:D:\SoftWare\PCL1.8.1\3rdParty\VTK.
至此配置完成.
总结
如上,完成对于PCL综合开发的环境配置,欢迎批评指正!
站念卿,前思后想;坐念卿,左思右想;眠念卿,朝思暮想;业念卿,苦思冥想 .HDarker