VTK与ITK的详细安装指南

2023-05-16

1. 说明:

本文来自一个付费下载文档,好像是一本图书的第一章的部分内容, 感觉比网上很多指南写的要详细, 特整理出来和大家分享,向原作者表示感谢!

2.获取安装资源

(1)CMake安装资源

CMake 是个跨平台的自动化建构软件,用于对于VTKITK的编译,可以在http://www.cmake.org/cmake/resources/software.html上下载用于Windows安装的cmake-2.8.3-win32-x86.exe版本。

(2)VTK安装资源

VTK可以从官网http://www.vtk.org/VTK/resources/software.html上下载版本为vtk-5.6.1-win32.exe(用于Windows的安装)、vtkdata-5.6.1.zipvtk-5.6.1.zip的安装资源。

(3)ITK安装资源

ITK可以从官网http://www.itk.org/ITK/resources/software.html上下载版本为InsightToolkit-3.20.0.zipInsightApplications-3.20.0.zip资源。

注:上述的安装都是基于Windows XP系统,Visual Studio 2008开发平台,其它操作系统上的安装下述步骤可能会出现问题!此外,提醒大家如果要将上述所有软件全部安装在一个盘符下面,那么可能需要30G的空间。因为安装耗时长,所以请大家提前合理分配您的空间。

3.安装步骤

安装、配置过程中,路径的设置非常重要,为了方便用户的顺利安装,本人将主要相关软件安装在同一总目录(同Visual studio 2008目录相同相同)的结构列了出来,如下图1-1所示:且下面的安装过程,我们将以此目录为参照。

1-1安装总目录设置

3.1 VTK的安装

(1)创建VTK安装目录

首先,在E:\Program Files下创建两个文件夹VTKVTK2008,其次将vtk-5.6.1-win32.exe安装在VTK2008文件夹中,并将vtkdata-5.6.1.zipvtk-5.6.1.zip分别解压在VTK中为vtkdatavtk,最后在VTK中创建文件vtk_bin,用于存放安装的二进制文件。VTK内部结构如图1-2示:最后将vtk-5.6.1-win32.exe安装在VTK2008文件中。

1-2 VTK目录结构

(2)CMake的配置

运行安装在E:\Program Files下的CMake,其具体设置如图1-3所示:

1-3 CMake设置

·BUILD_EXAMPLES——指明是否编译VTK中的例子。未激活可以减少编译时间,之后也

可以再进行单独编译。此处我们置为OFF。

·BUILD_TESTING——指明是否编译VTK中的测试代码。未激活可以减少编译时间,之后也

可以再进行单独编译。此处我们置为OFF。

·BUILD_SHARED_LIBS——指明是否创建共享库。如果激活,那么DLL或共享库将会被创建,这样之后生成的VTK应用程序将会比较小,可以节省不少空间;如果未激活,那么静态库将被创建。缺省设置是静态库。此处我们置为ON

·CMAKE_INSTALL_PREFIX——VTK的生成路径。安装可以使源码中的.h文件及编译生成的.lib文件和.exe程序分别复制到安装路径的不同子目录下。这将使VTK应用程序的工程设置可以方便一些。其默认设置是E:\Program Files\VTK\vtk_bin,本人不建议使用默认设置,将该路径设置为E:\Program Files\VTK2008,这样便于后期的配置。

·VTK_DATA_ROOT——vtkdata的解压路径。可能CMake不会自动找到这个解压路径,需要手动设置,本书设为E:\Program Files\vtkdata

·VTK_USE_GUISUPPORT——指明是否支持GUI。激活后Configure,会产生两个新缓存项,激活其中一个缓存项VTK_USE_MFC,这样就可以进行VTK与MFC的混合编程,可以编写类似于VTK自带的例子Examples\GUI\Win32\vtkMFC中的程序。如果不选将无法利用MFC类库,所以必选。

·VTK_WRAP_TCL——可以帮助我们调试一些基于TCL脚本的VTK实例,为了大家学习VTK User's Guide等书上案例的方便,我们将其置为ON。

单击Configure,将右上角的advanced置为ON,方便我们查看。找到VTK_USE_MFC,置其为ON。我们会发现TCL的相关设置已经被设置,如图1-4所示,这就是我们将需要的资源放到同一目录的优点。

1-4 TCL路径设置

继续单击Configure,当没有红色标示时,单击Generate就看可以了。

(3)生成解决方案

Visual Studio2008打开E:\Program Files\VTK\vtk\bin下的VTK.sln,然后打开生成->生成解决方案,如图1-5所示:

1-5 VTK生成解决方案

如果没有错误,再打开同一目录中的INSTALL.vcproj,在Visual Studio 2008的解决方案中找到INSTALL文件,然后右击该文件,选择:仅用于项目->仅生成INSTALL

注:因为VTK需要生成的内容比较多,所以需要1个小时左右,如果中间出现错误,必须重新安装。本人经常在路径设置和CMake选项设置中出错,故请严格按照上述目录结构设置路径,避免时间浪费。

4VTK的配置

·打开工具->选项->项目和解决方案->VC++目录,设置:

包含文件:添加E/Program Files/VTK2008/include/vtk-5.6

库文件: 添加E/Program Files/VTK2008/lib/vtk-5.6

·我的电脑属性->高级->环境变量->添加:

E:\Program Files\VTK2008\bin;E:\Program Files\CMake2.8\bin;E:\Program Files\TCL\bin;

·将E:\Program Files\VTK2008\bin或者E:\Program Files\VTK\vtk_bin\bin\Debug中的.dll文件拷贝到C:\WINDOWS\system32中。

注:如果没有设置包含文件、库文件和配置环境变量而运行程序,系统会提示无法连接.h文件或者找不到.lib文件。同理,如果不将.dll文件拷贝到system32中,虽然通过了编译,但在运行过程中会弹出找不到vtkIO.dll或者vtkCommon.dll文件等错误。

3.2 ITK的安装

1)创建ITK安装目录

首先将InsightToolkit-3.20.0.zip解压在E:\Program Files\ITK下,重命名为InsightToolkit;然后在E:\Program Files\ITK中创建ITK_bin文件夹,同样用于保存编译的二进制文件;其结构如图1-6所示:

1-6 ITK目录结构

(2)CMake配置

首先打开CMake,对其进行设置,如图1-8所示。ITK设置同VTK设置类似,只将BUILD_SHARED_LIBSON(可选);BUILD_EXAMPLESON(可选);将BUILD_TESTON(可选),丰富的例子便于ITK的学习;同样;最后将CMAKE_INSTSLL_PREFFIX设置为E:\Program Files\ITK即可,其它可采用默认格式即可,如图1-7所示。

1-7 ITK配置安装

然后Configure,因其设置项比较多,不同用户可以根据其需要而定,上面基本设置已可以满足一般用户的开发和学习。如果没有红色标示,点击Generate

(3)生成解决方案

打开E:\Program Files\ITK\ITK_bin里面的ITK.sln文件,雷同VTK的生成解决方案,点击:生成->生成解决方案。如果没有错误,打开ITK_bin里面的INSTALL.vcproj文件,在解决方案里面找到Install文件,选中点击右键->仅用于项目->仅生成INSTALL

如果编译过程中有错误,应该删除ITK里面的文件,重新安装。

(4)ITK的配置

·打开工具->选项->项目和解决方案->VC++目录

包含文件:在后面分别添加(如图1-8所示):

1-8 ITK包含文件的设置

E:\Program Files\ITK\include\InsightToolkit

E:\Program Files\ITK\include\InsightToolkit\IO

E:\Program Files\ITK\include\InsightToolkit\Numerics\FEM

E:\Program Files\ITK\include\InsightToolkit\Numerics\NeuralNetworks

E:\Program Files\ITK\include\InsightToolkit\Numerics\Statistics

E:\Program Files\ITK\include\InsightToolkit\SpatialObject

E:\Program Files\ITK\include\InsightToolkit\Utilities

E:\Program Files\ITK\include\InsightToolkit\Utilities\vxl\core

E:\Program Files\ITK\include\InsightToolkit\Utilities\vxl\core\vnl

E:\Program Files\ITK\include\InsightToolkit\Utilities\vxl\core\vnl\algo

E:\Program Files\ITK\include\InsightToolkit\Utilities\vxl\vcl

E:\Program Files\ITK\include\InsightToolkit\Algorithms

E:\Program Files\ITK\include\InsightToolkit\BasicFilters

E:\Program Files\ITK\include\InsightToolkit\Common

E:\Program Files\ITK\include\InsightToolkit\gdcm\src

E:\Program Files\ITK\include\InsightToolkit\Numerics

·库文件:在后面添加E:\Program Files\ITK\lib\InsightToolkit

· 环境变量设置:我的电脑->属性->高级->环境变量->添加:E:\Program Files\ITK\itk_bin

·将E:\Program Files\ITK\bin或者E:\Program Files\ITK\itk_bin\bin\Debug中的.dll文件拷贝到C:\WINDOWS\system32中。

注:在设置包含文件时,因需添加的文件很多,所以应根据你具体安装目录找到相应的文件添加,建议目录设置参照图1-1所示设置,便于文件的查找。

3.3 InsightApplication的安装

为了更好的学习VTKITK,我们在这里进一小节将介绍InsightApplication的安装,很多人都认为只有将InsightApplication安装后才能将VTKITK结合起来使用,其实上述安装结束之后完全可以进行混合编程。之所以介绍InsightApplication的安装,目的是为了利用InsightApplication安装生成的例子便于大家更好的学习。

1)创建安装目录

InsightApplications-3.20.0.tar.gz解压在ITK主文件夹中为InApp,并在ITK主文件夹中新建文件InApp_bin,如图1-9所示:

1-9 InsightApplication安装目录

2CMake的配置

首先将Score codebuild the binaries选项分别填写为E:\Program Files\ITK\InAppE:\Program Files\ITK\InApp_bin,然后单击Configuration进行选项配置。注意这里cmake-install-prefix这个选项的路径设为ITK主文件夹即E:\Program Files\ITKexecutable-output-path路径设置为E:\Program Files\ITK\itk_bin\binitk-dir路径设置为E:\Program Files\ITK\itk_binLIBRARY-OUTPUT-PATH依然设置为E:\Program Files\ITK\itk_bin\bin;将USE_VTK设置为True,然后Configuration,发现VTK_DIR为红色,将其路径设置为E:\Program Files\VTK\vtk_bin,然后再Configuration,没有问题单击Generate即可,详细参见图1-10所示:

3)生成解决方案

打开E:\Program Files\ITK\InApp_bin文件中的InsightApplications.sln解决方案文件进行生成解决方案,没有问题后,再打开INSTALL.vcproj项目文件,在解决方案中找到Install右击选择仅生成Install即可。

4InsightApplication的配置

·库文件:在后面添加F:\Program Files\ITK\include\ImageCalculator路径

·包含文件:在后面添加E:\Program Files\ITK\lib

· 环境变量设置:我的电脑->属性->高级->环境变量->添加E:\Program Files\ITK\ App_bin;

· 将E:\Program Files\ITK\lib目录下的所有.dll文件拷贝到C:\WINDOWS\system32

1-10 InsightApplicationCMake配置

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

VTK与ITK的详细安装指南 的相关文章

  • VTK交互器

    VTK交互器定义了用户了与VtkWidget界面的交互方式 结构图如下 交互器类名 功能 vtkInteractorStyle 一个实现大部分动作的基类 对交互只有接口 没有实际功能 vtkInteractorStyle3D 允许用户交互
  • C++ VTK 8.2 如何绘制弹簧图形

    创建圆柱 vtkSmartPointer
  • Windows下编译VTK-9.1.0

    VTK 9编译要点 VTK 9 1 0 src CMake vtkModule cmake 第4075行可以修改Debug的库后缀 VTK 9 2 0 src CMake vtkModule cmake 第4230行可以修改Debug的库后
  • vtk教程第三章 计算机图形学入门

    计算机图形学是数据可视化的基础 实际上 可视化是将数据转换为一组图形原语的过程 然后使用计算机图形学的方法将这些原语转换成图片或动画 本章讨论计算机图形学的基本原理 我们从描述光和物理物体如何相互作用形成我们所看到的开始 接下来 我们将研究
  • cmake+QT+VTK常见错误及解决方法

    1 安装环境 cmake3 0 QT4 8 6 VTK5 10 PS VTK6 10以上只能配合使用QT5 0以上版本 2 编译安装 参考 http blog csdn net www doling net article details
  • VTK配置步骤(WIN7 64位 + VS2012 + VTK-5.10.1)

    前面的废话可以不看 我很啰嗦 由于项目中需要用到VTK 上周三就开始编译VTK源码 中间出现了一系列问题 首先是下载的高版本代码顺利编译后 自己新建的工程总是提示链接错误 尽管所有的库文件都加入了 还是不正确 之后下载了vtk较低版本5 8
  • Qt VTK ITK安装与测试(三)ITK的安装与测试

    ITK的安装与测试 安装简介 本部分讲述使用cmake加VS2010编译 安装ITK库 基本步骤和VTK安装时相同 而后测试VTK与ITK的联合开发 VTK安装步骤 1 资源下载 资源下载网址 http www itk org ITK re
  • VTK可视化工具库:编译与添加模块

    VTK 可视化工具库 一 编译 VTK使用CMake作为项目管理工具 在源代码根目录下有CMakeLists txt文件 1 编译过程 运行CMakeGUI 选择源代码目录和编译目录 不要使用相同目录 依次点击configure gener
  • 在 SimpleITK 中对 3D 图像切片进行操作并创建新的 3D 图像

    我将 3D 图像从 NIfTI 文件读入 SimpleITK 使用 python 获取每个轴向切片 对其进行处理 然后将新的 2D 切片重新插入具有 希望 适当尺寸的 3D 体积中 例如 output sitk Image original
  • 来自 Fortran 代码的 RECTILINEAR_GRID 的二进制 VTK

    我有一个 fortran 代码来生成二进制 VTK 格式的网格 此代码生成一个二进制 VTK 文件 如下所示 vtk DataFile Version 3 0 vtk output BINARY DATASET RECTILINEAR GR
  • 如何获取 std::vector 中 vtkDoubleArray 的值

    我想复制 a 的元素vtkDoubleArray转换为 C std vector as in 如何将 vtkDoubleArray 转换为 Eigen matrix https stackoverflow com questions 246
  • 未找到 vtkRenderer/ vtkRenderWindow 的覆盖

    我是 vtk 的新手 当我运行一个小示例时 它会生成两个错误 找不到 vtkRenderer 的覆盖 找不到 vtkRenderWindow 的覆盖 我用谷歌搜索了这个问题 但找不到合适的解决方案 当我尝试在没有 CMake 的情况下创建
  • vtkRenderer 错误

    我是 vtk 的新手 所以我首先使用 CMake 和 Visual Studio 2017 构建 vtk 8 1 1 并使用默认选项和示例 许多示例运行良好 但其中一些会出现错误 这是 CreateTree 示例 但 HelloWorld
  • VTKCamera焦点和位置的差异

    我正在使用 vtkCamera 并尝试移动它并使其看起来在某个点 例如 如果我想把相机放在 x y z 并让它看看 0 0 0 例如 使用 openGL 中的 gluLookAt 我们会将眼睛坐标设置为 x y z 和中心坐标 0 0 0
  • 我是否缺少在 Ubuntu 9.04 上使用 Python2.6 绑定构建/安装 VTK-5.4 的步骤?

    我使用源代码的 Python 绑定成功构建并安装了 VTK 5 4 然而 当我尝试在 python 中导入 VTK 时 它给出了以下回溯错误 文件 第 1 行 位于 文件 usr local lib python2 6 dist packa
  • 使用vtk和k3d在jupyter笔记本中渲染gltf/glb文件

    我探索了如何在 jupyter 笔记本中内联渲染 gltf glb 文件以保持查看器回调交互性完整的可用方法 我最终使用 vtk 和 k3d 来实现这一目标 我遇到的两个障碍是 如何使用 vtkGLTFReader 从 vtkPolyDat
  • 如何以编程方式在 qml 中渲染 vtk 项目?

    到目前为止 我了解到我们在 QML 中有两个线程 我们的主应用程序线程和我们的 场景图 线程 http doc qt io qt 5 qtquick visualcanvas scenegraph html http doc qt io q
  • 有没有办法使用 Mayavi 填充陀螺仪表面的一侧?

    我正在使用 Mayavi 绘制陀螺仪的等值面 我的问题是我需要通过填充两个生成区域的一侧来获得更坚固的结构 在下面的图片中 您可以看到我生成的等值面的外观以及填充一侧后的外观 我生成的等值面 它应该是什么样子 等值面可以通过以下方程生成 U
  • 如何用VTK存储矢量场? C++、VTKWriter

    比方说 我有一个向量场 u 其分量为 ux uy 和 uz 定义在空间 rx ry 和 rz 中的 非结构化 位置 我想要的只是用 VTK 格式存储这个向量场 即使用 libvtk 中的 vtkwriter 类来存储 Paraview 的可
  • 使用 cmake 将两种解决方案合二为一

    我有两个单独的 Visual Studio 2013 解决方案 我想将它们迁移到一个解决方案中 因为第一个解决方案 使用 Qt 充当第二个解决方案的 GUI 最后 我希望有一个结构如下的单一解决方案 Solution All Build P

随机推荐

  • 一种解决按键开关电平毛刺问题的算法

    一种解决按键开关电平毛刺问题的算法 通过检测按键开关的相应管脚电平状态来判断按键是否按下 xff0c 按键未按下时 xff0c 对应管脚电平的为高 xff0c 按下之后对应管脚电平变为低电平 xff0c 松开之后 xff0c 回复高电平 x
  • 华为鸿蒙系统:基于微内核的全场景分布式OS

    华为鸿蒙系统 xff1a 基于微内核的全场景分布式OS 1 分布式架构首次用于终端OS xff0c 实现跨终端无缝协同体验 2 确定时延引擎和高性能IPC技术实现系统天生流畅 3 基于微内核架构重塑终端设备可信安全 4 通过统一IDE支撑一
  • STM32 通用GPIO模拟I2C实现

    STM32 通用GPIO模拟I2C实现 通用GPIO模拟I2C通信实现样例 1 GPIO初始化 ifdef HW I2C1 硬件I2C初始化 PA8 I2C1 SCL GPIO StructInit amp GPIO InitStructu
  • STM32 定时器实现样例

    STM32 定时器实现样例 1 定时器的初始化2 中断使能和中断优先级设置 1 定时器的初始化 void Tim5 init void TIM TimeBaseInitTypeDef TIM5 TimeBaseStructure NVIC
  • SVN服务器端口号(80)被占用导致无法访问的解决方案

    SVN服务器端口号被占用导致无法访问的解决方案 1 问题现象描述2 解决方法 1 问题现象描述 1 xff09 SVN show log 命令提示如下 xff1a 2 xff09 SVN commit代码时提示 xff1a 以一种访问权限不
  • 电磁波谱和光纤通信使用频段

    电磁波谱和光纤通信使用频段
  • STM32复位类型及判断方法

    STM32复位类型及判断方法 一 系统复位 xff1a 二 电源复位三 备份域复位四 复位的标志位五 复位标志位检索 判断什么原因导致的复位六 STM32软件复位方法 转载连接 xff1a https www cnblogs com per
  • C波段 波长和中心频率对应表

    C波段 波长和中心频率对应表
  • [译]badblocks指令

    原贴 http www linuxfly org post 192 htm 14 12月 译 badblocks指令 大 中 小 2007 12 14 16 40 分类 基础知识 系统命令 by linuxing 硬盘是一个损耗设备 xff
  • SecureCRT 脚本示例

    SecureCRT 脚本示例 language 61 34 VBScript 34 interface 61 34 1 0 34 crt Screen Synchronous 61 True 39 This automatically ge
  • rdesktop使用参数解析

    我自己使用的参数 xff1a rdesktop f z a 16 g workarea x modem u wangkai p wangkai r clipboard PRIMARYCLIPBOARD r disk MyDisk 61 va
  • linux-011中休眠函数以及唤醒函数的分析(sleep_on,wake_up)

    先看一下代码 xff1a void sleep on struct task struct p struct task struct tmp if p return if current 61 61 amp init task task p
  • ubuntu无法打开terminal

    在编译openjdk源码的时候 xff0c 将语言设置为LANG 61 c 关机之后再开机就无法打开terminal 无论采用哪种方式 后来到网上查找答案 xff0c 解决方法如下 1 ctrl 43 alt 43 F1 进入命令行模式 之
  • 51单片机三线串行驱动12864液晶

    以前写12864的液晶程序都是用的并行的方式 xff0c 这种方式焊接起来很麻烦 xff0c 而且占用的IO口比较多 今天尝试使用串行方式来驱动该模块 本程序是基于STC89C52的12864串行模式的程序 xff0c 硬件电路连接只需要5
  • 基于形状的模板匹配

    前段时间一直在做图像模板匹配 需要对旋转模板进行匹配 xff0c 并且对速度精度都有较高的要求 OpenCV里面并没有较好的解决方法 cvMatchTemplate const CvArr image constCvArr templ Cv
  • 相机模型详解

    相机模型 数码相机图像拍摄的过程实际上是一个光学成像的过程 相机的成像过程涉及到四个坐标系 xff1a 世界坐标系 相机坐标系 图像坐标系 像素坐标系 以及这四个坐标系的转换 理想透视模型 针孔成像模型 相机模型是光学成像模型的简化 xff
  • 相机镜头工作原理图解

    本文目录 xff08 一 xff09 机身 xff08 二 xff09 关于镜头一 如何平衡机身与镜头的预算二 镜头的作用三 镜头的组成部分四 关于焦距 什么是焦距 xff1f 为什么焦距很重要 xff1f 五 变焦与定焦镜头六 光圈及最大
  • 【Git】TortoiseGit代码冲突解决方法

    TortoiseGit冲突解决方法 场景一 xff1a 本地相同文件冲突场景二 xff1a 服务端相同文件冲突场景三 xff1a 服务端不同文件冲突场景四 xff1a 服务端文件名冲突小结 场景一 xff1a 本地相同文件冲突 冲突场景 x
  • RTOS系统问答

    RTOS 系统区别 RTOS Real Time Operating System 是专门为实时系统设计的操作系统 实时系统是指需要在规定的时间内响应某些事件或完成某些任务的系统 RTOS 和一般的操作系统相比 xff0c 具有更高的实时性
  • VTK与ITK的详细安装指南

    1 说明 本文来自一个付费下载文档 xff0c 好像是一本图书的第一章的部分内容 感觉比网上很多指南写的要详细 特整理出来和大家分享 xff0c 向原作者表示感谢 xff01 2 获取安装资源 xff08 1 xff09 CMake 安装资