VTK简介

1、简介

Vtk,(visualization toolkit)是一个开源的免费软件系统,主要用于三维计算机图形学、图像处理和可视化。Vtk是在面向对象原理的基础上设计和实现的,它的内核是用C++构建的,包含有大约250,000行代码,2000多个类,还包含有几个转换界面,因此也可以自由的通过Java,Tcl/Tk和Python各种语言使用vtk。

2、特点

它以用户使用的方便性和灵活性为主要原则,具有如下的特点 [2] :
1: 具有强大的三维图形功能。Visualization Toolkit 既支持基于体素Voxel-basedrendering 的体绘制Volume Rendering又保留了传统的面绘制,从而在极大的改善可视化效果的同时又可以充分利用现有的图形库和图形硬件。
2: Visualization Toolkit 的体系结构使其具有非常好的流streaming和高速缓存caching 的能力,在处理大量的数据时不必考虑内存资源的限制。
3: Visualization Toolkit 能够更好的支持基于网络的工具比如Java 和VRML 。随着Web 和Internet 技术的发展VisualizationToolkit 有着很好的发展前景
4: 能够支持多种着色如OpenGL 等。
5: Visualization Toolkit 具有设备无关性,其代码具有良好的可移植性。同时,官方也给出了各个编译器的技术文档与案例、教程。
6: VTK应用程序使用Filter(过滤器)操作数据,每个过滤器检查其接受的数据并产生输出数据。多个Filter与数据源组成一个数据流网络。可配置的网络将原始数据转换为更易理解的模式。
6: Visualization Toolkit 中定义了许多宏,这些宏极大的简化了编程工作并且加强了一致的对象行为
vtk网格
vtk网格
7: Visualization Toolkit 具有更丰富的数据类型,支持对多种数据类型进行处理。其核心数据模型能够表示几乎所有与物理科学相关的现实世界问题,适合涉及有限差分和有限元解决方案的医学成像和工程工作。
8: 既可以工作于Windows 操作系统又可以工作于Unix 操作系统极大的方便了用户。

3、历史

VTK最早是作为Prentice Hall出版的"The Visualization Toolkit: An Object-Oriented Approach to 3DGraphics"一书的附件释出,该书及其软件是由GE研发部 Corporate R&D的三位研究人员:Will Schroeder、Ken Martin与Bill Lorensen用其闲暇时间合作,在获得GE公司的许可下完成的(故该软件的授权完全是由这三位决定),由于其开放源码式的授权,该书一上市后,VTK 很快地建立了其使用及开发者社群,同时,GE与其他数间公司也开始提供对VTK的支援。 Will Schroeder和Ken Martin在1998年时离开GE,创立了Kitware公司。
有了Kitware的资金挹注,VTK社群快速地成长,其在学术研究及商业应用的领域受到重用,例如Slicer 生物医学计算软件使用VTK作为其核心,许多讨论研究VTK的IEEE论文出现。VTK也是许多大型研究机构如Sandia, Los Alamosn及Livermore国家实验室与Kitware的合作基础。这些研究中心使用VTK来作为视觉化资料的基础处理工具。 VTK亦是新创的美国国家卫生研究院所规划,作为开发未来计算工具之基石的美国国家医学影像计算合作联盟(National Alliance for Medical Image Computing, NA-MIC)的关键计算工具。

4、应用

VTK是一个开放源码、自由获取的软件系统,全世界的数以千计的研究人员和开发人员用它来进行3D计算机图形,图像处理,可视化。VTK包含一个c++类库,众多的翻译接口层,包括Tcl/Tk,Java,Python。 Visualization Toolkit 是一个用于可视化应用程序构造与运行的支撑环境,它是在三维函数库OpenGL 的基础上采用面向对象的设计方法发展起来的,它将我们在可视化开发过程中会经常遇到的细节屏蔽起来,并将一些常用的算法封装起来。比如 Visualization Toolkit 将我们在表面重建中比较常见的MarchingCubes 算法封装起来,以类的形式给我们以支持,这样我们在对三维规则点阵数据进行表面重建时就不必再重复编写MarchingCubes 算法的代码,而直接使用Visualization Toolkit 中已经提供的vtkMarchingCubes 类。 Visualization Toolkit 是给从事可视化应用程序开发工作的研究人员提供直接的技术支持的一个强大的可视化开发工具。

5、应用领域

通过VTK将科学实验数据如建筑学、气象学、医学、生物学或者航空航天学,对体、面、光源等等的逼真渲染,从而帮助人们理解那些采取错综复杂而又往往规模庞大的数字呈现形式的科学概念或结果。美国计算机科学家布鲁斯·麦考梅克在其1987年关于科学可视化的定义之中,首次阐述了科学可视化的目标和范围:“利用计算机图形学来创建视觉图像,帮助人们理解科学技术概念或结果的那些错综复杂而又往往规模庞大的数字表现形式”。
核医学成像:心脏SPECT图像(短轴视图)与心脏三维模型的融合
将仪器采集的实验数据通过计算机模拟成像,有助于发现医学问题。在航空航天方面,模拟飞行器轨道实验、风洞实验等,通过计算机模拟减少实际实验次数,可以降低成本,并可以多次实验找出问题。

参考:百度百科-vtk

参考:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

落花逐流水

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

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

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

打赏作者

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

抵扣说明:

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

余额充值