1. VTK 和 ITK
之间已经写过两篇ITK相关的内容,此次是想模仿一款图像处理软件 比如Slicer,Radint,或者ITK Snap。VTK和ITK的库都是基于OpenGL,VTK的库对OpenGL做了进一步的封装,使之更好使用。VTK和ITK的区别在于,VTK更取向于显示,2D显示/3D显示;而ITK更面向于图像的后处理。所以各司其职把。
2. VTK的安装配置
因为还是想基于VS2017来做开发。多说几句,VS开发平台相对于Linux还是有很多优势的,比如更加面向于项目,比如集成的三方插件和项目管理插件使得一个大型的项目开发更加如鱼得水。但是同时,很多github的项目在VS上配置也存在很多问题。
这次配置的环境是:
QT5.9;VS2017 MSVC2017 x64; windows SDK 10.0.17763.0; VTK8.2.0; cmake version 3.23.1
可以从官网下载;
具体的安装过程可以参考这个博主的内容, 踩了两天坑基本都在里面,相见恨晚:(1条消息) 配置VTK的那些“坑”_为思的博客-CSDN博客_vtk_module_init
3. 其它小问题
- VTK 提供了大量的example;example需要的输入数据,需要另外从网上下载;我也给大家提供了连接;这个是给VTK版本做regression版本测试的测试数据
链接:https://pan.baidu.com/s/1aGBAZ3L8ElBiWg2KCtGqzw
提取码:f187
- 在VS中使用的时候,需要在代码前加入:因为项目dependency有OpenGL,所以如果不用CmakeList创建初始化项目就会有一点问题。
网上的很多教程只有以上头文件,但用Visual Studio编译时一定要加上下面两句。
//#include "vtkAutoInit.h"
//VTK_MODULE_INIT(vtkRenderingOpenGL2);
- 使用release版本的VTK库可能没有太大问题,但是如果有需求要使用debug版本的库,可能会出现一些问题;
可能是debug读取权限的问题。
- 在VTK下面找到下面动态库,放在QT文件夹里面
接下来就可以开始使用VTK啦: