VTK| VTK下载和编译,以及VTK+VS配置
VTK下载和编译,以及VTK+VS配置
VTK介绍
VTK(visualization toolkit):强大的开源图形处理库,广泛应用于科学可视化和计算机图形学领域。
与OpenCV、ITK和OpenGL的关系:
OpenCV和ITK主要用于图像处理,OpenCV(Open Source Computer Vision Library)是开源计算机视觉库,有很多机器学习/计算机视觉相关的内容;ITK(Insight Segment and Regestration Toolkit)主要用于图像分割和配准,通常在医学图像上使用。
VTK和OpenGL主要用于图形处理。图像处理和图形处理(图像处理和图形学)的区别,图像处理是对图像进行处理,图形处理是研究如何把数据投影到二维平面上,也就是可视化显示。OpenGL(Open Source Graphic Library)是开源图形库,通常在游戏编程中最常见;VTK在医学领域比较常见。
医学图像领域,用的主要是ITK和VTK。
VTK下载和生成环境文件
下载VTK和CMake
下载VTK:
VTK官网(https://vtk.org/download/)下载相应的版本的VTK,我用的是最新的VS2022所以我就直接下载最新版本的VTK。
官网国内下载会很慢,可以去gitee下载https://gitee.com/mirrors/VTK,或者从我上传csdn的VTK资源中下载。
下载安装CMAKE:
为什么要下载CMake?因为下载完VTK环境后需要CMAKE来编译。
直接去官网下载https://cmake.org/download/,下载Installer版本比zip要快,安装也会方便的很多,因为可以自动添加环境变量。
下载后直接安装,唯一需要比较注意的是记得勾选“自动添加环境变量”。
验证是否安装成功,打开cmd命令行,输入以下指令任意一个,看是否能成功输出CMake版本或者CMake帮助手册。
cmake --version
cmake --help
生成环境文件
这一步主要是为从下载的VTK得到可以进行配置VS项目的环境文件,例如lib和include。
CMake编译VTK环境:
解压后VTK文件下,新建一个Build文件夹,方便后续CMake的编译。
打开CMake对VTK源码进行编译,如下图所示。
点击Finish后会看见CMake在运行。
处理完之后会出现很多红色的提示,修改一下CMAKE_INSTALL_PREFIX为自己想要放的路径,这个路径是用来后续存放VTK环境文件的,然后再点击Configure按钮,红色的提示就会消失。
下面显示“Configuring done”且红色提示消失,就可以点击Generate生成VS的项目文件。
在build目录下能看到VS项目文件。
用VS生成VTK环境配置文件:
用VS打开sln项目,选择ALL_BUILD右键生成,第一次生成会比较慢,多等等。
ALL_BUILD生成后,找到INSTALL项目,右键点击生成。
INSTALL项目生成后,会在CMake编译红色提示的CMAKE_INSTALL_PREFIX路径下生成
之后就VTK环境文件。如果之前没有做修改,系统默认的路径是C:/Program Files/VTK,我选的路径是D:\Software\VTK\VTK-install。
为VS项目添加VTK环境
简单创建一个控制台项目来作为案例。
先打开cmd命令行,先进入到D盘,然后输入“cd D:\Software\VTK\VTK-install\lib”进入lib目录,然后输入“DIR *.lib*/B>LIST.TXT”会生成一个包含所有lib名字的LIST.TXT文件。做了这一步后面添加附加依赖项会很方便,虽然可以复制别的添加lib名字,但是可能别人的版本会和自己不同。
- include配置:项目右键->属性->VC++目录->包含目录:D:\Software\VTK\VTK-install\include\vtk-9.3
- lib配置:
项目右键->属性->VC++目录->库目录:D:\Software\VTK\VTK-install\lib
项目右键->属性->链接器->输入->附加依赖项:输入D:\Software\VTK\VTK-install\lib文件夹中LIST.TXT的所有lib。
运行后遇到“找不到vtkxxx.dll,无法继续执行代码。”
解决方案:把D:\Software\VTK\VTK-install\bin文件下的内容,复制到运行项目编译结果的目录下。
如果是在Release下编译,就放到项目的Release文件夹下,因为我是Debug下编译的,所以就放在Debug目录下了。
原文地址:https://blog.csdn.net/qq_40306845/article/details/136774933
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!