000:VTK的安装(VTK 编译 + 运行第一个例子)

 VTK 医学图像处理---VTK安装

目录

简介:

1 安装前准备 

2 VTK的编译与安装

3 在自己的项目中配置和使用VTK

4 第一个例子-显示DICOM图像

总结


简介:

      主要包括四个部分:

  1. 安装前准备(需要下载和安装什么软件以及为什么);
  2. VTK编译与安装(编译过程中的一些选项到底是否勾选,已经为什么勾选);
  3. 在项目中配置/使用VTK (配置有多种方式,选择适合自己的方式);
  4. 运行VTK第一个例子(显示一张医学图像)。

1 安装前准备 

    在安装前的准备工作(以Windows系统为例)主要有以下三个部分:

第一部分:安装Visual Studio 2022/2019/2017/2015均可,其中2022等数字表示年份,特别注意,Visual Studio可以在微软的官网(链接:下载 Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com))下载,不要去乱七八糟的网站下载,下载时选择社区版本(社区版免费)即可,网站上关于如何安装Visual Studio的资料比较多(在 Visual Studio 中安装 C 和 C++ 支持 | Microsoft Learn),这里就不详细介绍了,安装过程中一定要勾选 Desktop development with c++选项,如下图所示:

      安装完成后,可以新建立一个控制台程序测试下,过程如下:启动Visual Studio 2022  ->  创建新项目  ->选择C++ 控制台应用 ->点击 “下一步” 输入名称后,点击创建,创建完成,进行编译运行即可。

第二部分:下载Cmake,下载最新版本的Cmake,下载地址Download CMake,在DOWNLOAD页面Binary distributions:中选择适合的版本下载,这里可以选择非安装版本的CMake,解压就可以运行,如下图:

点击下载即可,下载后,可以根据自己需要,放置到文件夹中,解压后在bin文件夹内,可以看到cmake-gui.exe应用程序,后面我们将用到该应用程序。

第三部分:下载VTK源码, 在VTK官网(VTK - The Visualization Toolkit)下载页面(Download)下载合适的版本,目前最新版是9.3.1,我们下载8.2版本为例,如下图:

  下载完成后,放到自己想保持的文件夹内,解压,保持的路径尽量不要有中文、空格或数字

小结:安装Visual Studio 过程中,一定要选择Desktop development with c++选项,这样才会安装C++的编译环境;下载和解压Cmake和VTK时,保存和解压后的文件夹路径不要有中文、空格、数字或下划线等特殊字符,预防后面构建工程时报错;VTK解压后时源代码,我们想要使用Visual Studio 对源代码进行编译,就要构建适合Visual Studio的项目,这个构建的过程时有CMake软件来完成的,构建好VTK的Vsual Studio项目后,就可以使用Visual Studio的C++编译器进行编译了,这就时安装和编译VTK的过程。

2 VTK的编译与安装

目的:使用Cmake 将VTK源代码组织成Visual Studio项目(VTK支持多种平台,通过Cmake来组织不同平台下的项目管理),然后使用Visual Studio打开项目,将VTK的源代码编译为可调用的动态库(头文件、lib 和 dll 文件)。

网上关于使用CMake生成VTK项目的介绍有很多,比较详细的有详细图文讲解CMake编译VTK,包含详细的编译环境版本_vtk编译-CSDN博客,本不想再详细介绍的,但还是有些差异,如上面勾选了QT和VTK的例子,这里我们将使用最小的模块配置方式(不必要的都不勾选,加快编译过程),所以还是详细介绍下:

点击 Finish,然后CMake会输出项目进展,警告和错误会以红色字体输出,这个过程需要一定的时间。完成后入下图所示:

接下来,我们只修改一项,如下图所示,这里的路径可以根据自己的需要来修改,这个路径中,会保存编译好的VTK库,后面我们只需要这个文件夹内的内容。

然后点击   Configure, 内容框中无红色后,点击Generate

关闭CMake,打开 E:/VTKProject/vtkBin  文件夹

双击打开VTK.sln , 点击菜单中的< 生 成>   接着点击  生成解决方案,或直接按下快捷键F7

等待编译完成(此过程需要一定的时间),完成后,右键单击INSTALL,

完成后,在安装目录  E:\VTKProject\vtkInstall 中将会有生成好的头文件,lib文件和DLL文件,头文件在Include文件夹内,lib文件在lib文件夹内,DLL在 bin文件夹内

在此,编译完成,编译过程中,如果出现问题,通过查看输出的信息,就可以解决,也可以根据输出信息,通过网络检索来找解决方法。

3 在自己的项目中配置和使用VTK

目的:将生成的动态度(头文件、lib 和 dll 文件),添加到自己的项目中,然后调用VTK的类来实现自己想要的效果。

接下来在自己的项目中配置VTK环境,创建一个新的C++控制台程序,右键项目名称,在弹窗框中,选择最下面的 属性,打开属性对话框。

在属性对话框中,在配置选项中,选择所有配置,然后再配置属性中,选择C/C++,单击常规,在“附加包含目录中”,添加VTK头文件(刚才INSTALL生成文件所在路径,这里是E:\VTKProject\vtkInstall\include\vtk-8.2中,其中E:\VTKProject\vtkInstall 是在CMake 中设置的CMake_INSTALL_PREFIX 一直),include\vtk-8.2是INSTALL过程中自动创建的,添加后为

在 链接器,选项中添加lib文件的路径和lib文件,

在附加库目录中添加路径:E:\VTKProject\vtkInstall\lib\,注意根据自己的实际路径来设置,路径一定要到lib文件所在目录下,

示例:

由于lib文件比较多,全部手动录入很麻烦,可以自己vtk lib文件根目录下,创建一个文本文件,然后再文本文件中输入:

DIR *.lib /B >LIBLIST.TXT

保存后,关闭,然后将该文件的后缀txt,修改为bat,修改完成后双击运行,在文件夹内会多一个LIBLIST.TXT文件,打开里面就是全部的vtk lib文件名,直接拷贝到上面图中的设置里面即可。

4 第一个例子-显示DICOM图像

目的:显示一张DICOM图像,测试用的DICOM文件可在CSDN下载:【免费】VTK-医学图像处理博文中需要的DICOM测试数据资源-CSDN文库

创建一个新的C++控制台程序,安装第3部分的内容,在项目属性中配置好VTK的库,删除VS自动生成的代码,然后复制下面所有的代码到自己的项目中,保存。

#include <vtkNew.h>
#include <vtkDICOMImageReader.h>
#include <vtkImageViewer2.h>
#include <vtkRenderWindow.h>
#include <vtkRenderWindowInteractor.h>
#include <vtkRenderer.h>

void main()
{
	// 读取指定文件夹"D:\\234"内的所有DICOM文件.
	vtkNew<vtkDICOMImageReader> reader;
	reader->SetDirectoryName("D:\\DicomFiles");
	reader->Update();

	// 创建一个交互对象,用了处理鼠标和键盘事件
	vtkNew<vtkRenderWindowInteractor> renderWindowInteractor;

	// 显示DICOM数据
	vtkNew<vtkImageViewer2> imageViewer;
	imageViewer->SetInputConnection(reader->GetOutputPort());
	imageViewer->SetupInteractor(renderWindowInteractor);

	// 初始化渲染和相机
	imageViewer->Render();
	imageViewer->GetRenderer()->ResetCamera();
	/* 指定窗口的比较颜色为灰色(.2,.2,.2)*/
	imageViewer->GetRenderer()->SetBackground(.2,.2,.2);  
	/* 设置窗体的大小为宽800,高800*/
	imageViewer->GetRenderWindow()->SetSize(800, 800);
	/* 设置窗口的标题*/
	imageViewer->GetRenderWindow()->SetWindowName("Read DICOM Series");
	imageViewer->Render();
	renderWindowInteractor->Start();
}

单击 本地Windows调试器,启动项目。

运行结果:

操作: 鼠标左键按下移动---调节窗宽窗位;

            鼠标中键按下移动---移动图像; 

            鼠标右键按下移动----缩放图像;

            中间滚轮上下滚动----缩放图像;

            按下CTRL键 + 鼠标左键按下移动----旋转图像

           按下SHIFT键+ 鼠标左键按下移动----移动图像; 

可以自己操作测试下。

总结

        目的是将VTK的源代码编译成动态度(不熟悉动态库的可以检索下),也就是把VTK的源代码编译成头文件、lib文件和dll文件,以后我们需要使用VTK的时候,直接使用编译好的头文件、lib文件和dll文件就可以了(当然,你也可以将VTK的源代码全部添加的自己的项目中来使用,按照自己的需要来修改源代码,但非必要不建议这样使用)。

       下节,我们将详细介绍

             1-配置VTK库的几种方式以及每种方式的优缺点;

             2-学习VTK的方法(资料 + 学习路线)。

### 回答1: vtk8.0.0编译好的库是一个用于可视化和图像处理的开源软件库。这个库是基于C++语言开发的,可以在各种操作系统和各种编译器上使用。在这种情况下,我们假设您是在Windows操作系统上使用Qt 5.9、Visual Studio 2015和PCL 1.8.1来编译和使用vtk8.0.0库。 首先,您需要确保您安装了Qt 5.9,这是一个跨平台的应用程序和UI开发框架。您可以从Qt的官方网站上下载并安装最新版本的Qt 5.9。 接下来,您需要安装Visual Studio 2015,这是一个强大的集成开发环境(IDE),用于编写和调试C++代码。您可以从微软官方网站上下载并安装Visual Studio 2015。 然后,您需要安装PCL 1.8.1,这是一个用于点云处理的开源库。您可以从PCL的官方网站上下载并安装最新版本的PCL 1.8.1。 最后,您需要将vtk8.0.0库与Qt 5.9、Visual Studio 2015和PCL 1.8.1集成在一起。首先,在Visual Studio 2015的项目设置中添加vtk8.0.0的头文件路径和库文件路径。然后,在您的项目代码中包含vtk的头文件,并链接vtk的库文件。 在编译和构建您的项目时,您需要确保选择正确的编译配置,以便使用Qt 5.9、Visual Studio 2015和PCL 1.8.1进行构建。 以上是使用vtk8.0.0库的一般步骤。根据您的具体项目需求,您可能需要进一步的配置和调整。希望这些信息对您有所帮助! ### 回答2: vtk8.0.0编译好的库适用于Qt5.9,VS2015,PCL1.8.1和VTK8.0版本。 首先,vtk8.0.0编译好的库是指已经经过编译,并可用于开发的库文件。该库文件中包含了VTKVisualization Toolkit,可视化工具包)的功能和特性,可以用于构建和展示3D图像、可视化数据等。 Qt5.9是一个跨平台应用程序开发框架,可以用于创建图形界面和进行应用程序开发。vtk8.0.0编译好的库与Qt5.9兼容,因此可以在Qt应用程序中使用该库实现丰富的3D可视化功能。 VS2015是一个开发环境,适用于Windows操作系统。vtk8.0.0编译好的库是基于VS2015编译的,所以可以在该环境下使用该库进行开发。 PCL1.8.1是点云库(Point Cloud Library)的一个版本。vtk8.0.0编译好的库与PCL1.8.1兼容,可以使用该库来处理和可视化点云数据。 综上所述,vtk8.0.0编译好的库适用于Qt5.9,VS2015,PCL1.8.1和VTK8.0版本,可以在这些环境中使用vtk编译好的库开发和展示3D可视化功能。 ### 回答3: vtk8.0.0 编译好的库是基于以下工具和版本编译的:qt5.9、vs2015、pcl1.8.1以及vtk8.0。 vtk8.0.0是Visualization Toolkit的一个版本,它是一个开源的跨平台的3D图像处理和可视化库。它提供了丰富的功能和工具,用于处理和分析3D数据,并通过高质量的图形输出显示结果。 编译库使用的Qt版本为5.9。Qt是一个跨平台的应用程序开发框架,它提供了一套易于使用的工具和类库,用于开发图形用户界面应用程序。Qt 5.9的使用可以为vtk8.0.0库提供更强的功能和更好的用户体验。 在编译过程中,使用了VS2015作为集成开发环境(IDE)。VS2015是由微软开发的一个功能强大的集成开发环境,用于开发Windows平台上的应用程序。它提供了丰富的开发工具和调试功能,可以方便地进行代码编写和调试。 此外,编译还使用了pcl1.8.1。PCL(Point Cloud Library)是一个开源的用于点云处理的库,它提供了一系列的算法和工具,用于处理和分析点云数据。PCL 1.8.1提供了vtk8.0.0库所需的点云处理功能和支持。 综上所述,vtk8.0.0编译好的库是基于qt5.9、vs2015、pcl1.8.1和vtk8.0的。使用这些工具和库,可以轻松地进行3D图像处理和可视化开发,并获得高质量的结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

伍心

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值