vtk教程第一章介绍
可视化-“2:用视觉术语解释或将其转化为视觉形式的行为或过程”,《韦伯斯特第九部新大学词典》收录。
1.1什么是可视化
想象是我们日常生活的一部分。从天气图到娱乐行业令人兴奋的计算机图形,可视化的例子比比皆是。但是什么是可视化呢?非正式地说,可视化是将数据或信息转换成图片。可视化涉及到人类主要的感觉器官,视觉,以及人类大脑的处理能力。
结果是一个简单而有效的媒介来交流复杂和/或大量的信息。
术语
不同的术语被用来描述可视化。科学可视化是计算机科学领域的正式名称,它包括用户界面、数据表示和处理算法、视觉表示和其他感官表示,如声音或触觉
[McCormick87]。术语数据可视化是用于描述可视化的另一个短语。数据可视化通常被解释为比科学可视化更通用,因为它意味着对数据源的处理超越了科学和工程。这些数据源包括财务、营销或业务数据。此外,术语数据可视化足够广泛
可视化将数字转化为图像。
介绍包括统计方法和其他标准数据分析技术的应用
[Rosenblum94]。另一个最近出现的术语是信息可视化。该领域致力于可视化抽象信息,如万维网上的超文本文档、计算机上的目录/文件结构或抽象数据结构[InfoVis95]。信息可视化研究人员面临的一个主要挑战是开发有意义地组织和表示数据的坐标系统、转换方法或结构。
对可视化技术进行分类的另一种方法是检查数据存在的上下文。如果数据本质上是时空的(最多三个空间坐标和时间维度),则通常使用科学可视化方法。如果数据存在于高维空间或抽象空间,则使用来自信息可视化的方法。这种区别很重要,因为人类的知觉系统与时空关系高度协调。在这个坐标系中表示的数据本质上是可以理解的,几乎不需要解释。抽象数据的可视化通常需要对所查看的内容进行广泛的解释。这并不是说科学可视化和信息可视化之间没有重叠——通常信息可视化过程的第一步是将抽象数据投射到时空域,然后使用科学可视化的方法来查看结果。投影过程可能相当复杂,涉及统计图形学、数据挖掘、人工智能等方法
在本文中,我们使用术语数据可视化,而不是更具体的术语科学可视化或信息可视化。我们认为科学可视化对该领域的描述过于狭隘,因为可视化技术已经超越了科学领域,进入了商业、社会科学、人口统计和一般信息管理领域。
我们还认为,术语数据可视化已经足够广泛,可以包含术语信息可视化。
可视化的例子
也许可视化的最好定义是一个例子。在许多情况下,可视化正在影响人们的生活,并完成几年前无法想象的壮举。一个最好的例子就是它在现代医学中的应用。
计算机成像技术已成为现代医学实践中重要的诊断工具这些技术包括x射线计算机断层扫描(CT)和磁共振成像(MRI)。这些技术使用采样或数据采集过程来捕获有关活体患者内部解剖结构的信息。这些信息以切片平面或患者横断面图像的形式呈现,类似于传统的x光摄影。
CT成像使用许多铅笔薄的x射线来获取数据,而MRI结合了大磁场和脉冲无线电波。利用复杂的数学技术来重建切片平面。通常,许多这样紧密间隔的切片被收集在一起,形成一个数据卷,以完成研究。
从成像系统获得的切片是代表x射线衰减(CT)或核自旋磁化弛豫(MRI)的一系列数字[Krestel90]。在任何给定的切片上,这些数字都以矩阵或规则数组的形式排列。数据量很大,大到不可能理解原始形式的数据。然而,通过给这些数字分配一个灰度值,然后在计算机屏幕上显示数据,结构就出现了。这.结构源于人类视觉系统与数据的空间组织和我们所选择的灰度值的相互作用。计算机表示的一系列数字,我们看到的是人体的横截面:皮肤、骨骼和肌肉。当我们将这些技术扩展到三维空间时,可能会有更令人印象深刻的结果。图像切片可以被收集成卷,卷可以被处理以揭示完整的解剖结构。使用现代技术,我们可以看到一个活着的病人的整个大脑、骨骼系统和血管系统,而不需要介入手术。这种能力已经彻底改变了现代医学诊断,并且随着成像和可视化技术的成熟,其重要性将会增加。
可视化的另一个日常应用是在娱乐行业。电影和电视制作人经常使用计算机图形和可视化技术来创造我们无法在我们的物理身体中访问的整个世界。在这些情况下,我们正在想象其他世界,或者我们认为存在的过去世界。像《侏罗纪》这样的电影很难看
《公园》和《玩具总动员》,而不会对可怕的雷克斯暴龙有更深的欣赏,也不会被《玩具总动员》中英勇的巴斯光年所吸引。
变形是另一种在娱乐行业中广泛使用的流行可视化技术。变形是将一个物体平滑地混合到另一个物体中。一个常见的应用是在两个面孔之间变形。变形也被有效地用于说明从一年到下一年的汽车设计变化。虽然这看起来像是一个深奥的应用程序,但可视化技术通常用于显示每日天气报告。使用等高线或等高线来显示恒定温度、降雨和气压的区域已经成为日常生活中的标准工具。
天气报告。
许多可视化的早期应用是在工程和科学领域。从一开始,计算机就被用作模拟物理过程的工具,如弹道轨迹、流体流动和结构力学。随着计算机模拟规模的增长,有必要将计算结果转换成图片。数据的数量超过了人类吸收和理解它的能力。事实上,图片是如此重要,以至于早期的可视化是通过手动绘制数据来创建的。今天,我们可以利用这一点。但是,无论采用何种技术,可视化的应用都是相同的:显示模拟、实验、测量数据和幻想的结果;并利用这些图片进行交流、理解和娱乐。
1.2为什么是天眼?
在当今的计算机世界中,可视化是理解信息洪流的必要工具。卫星、超级计算机、激光数字化系统和数字数据采集系统以惊人的速度获取、生成和传输数据。地球轨道卫星(EOS)每天传输数tb的数据. 激光扫描系统在15秒扫描中生成超过500,000个点[Waters91]。超级计算机模拟整个地球的天气模式[Chen93]。在1995年的前四个月里,纽约证券交易所平均每天处理3.33亿笔交易[纽约时报]。如果没有可视化,这些数据中的大部分将隐藏在计算机磁盘和磁带中。可视化为我们提取隐藏在数据中的重要信息提供了一些希望。
可视化还有另一个重要的元素:它利用了人类视觉系统的自然能力。我们的视觉系统是我们身体复杂而强大的一部分。我们几乎在做任何事情时都使用和依赖它。考虑到我们祖先所处的环境
进化出某些感官来帮助它们生存,这并不奇怪。正如我们之前在2D MRI扫描的例子中所描述的,视觉表示更容易处理。我们不仅拥有强大的2D视觉能力,还擅长将不同视角和其他视觉线索整合到3D物体或情节的心理图像中。这导致了交互式可视化,在那里我们可以操纵我们的视点。围绕物体旋转有助于更好地理解。同样地,我们有识别图像中时间变化的天赋。对于一个由数百帧组成的动画,我们有一种不可思议的能力来识别趋势并发现快速变化的区域。
随着计算机的引入和产生大量数据的能力,可视化提供了一种技术,可以充分利用我们高度发达的视觉感官。当然,其他技术,如统计分析、人工智能、数学滤波和抽样理论将在大规模数据处理中发挥作用。然而,由于可视化直接涉及视觉系统和人脑,它仍然是一种无与伦比的理解和交流数据的技术。
可视化也提供了显著的财务优势。在当今竞争激烈的市场中,计算机模拟与可视化相结合可以降低产品成本,缩短产品上市时间。产品设计的一大成本是创建和测试设计原型所需的费用和时间。目前的设计方法试图消除这些物理原型,用数字等价物取而代之。这种数字原型需要能够创建和操作产品几何形状,在各种操作条件下模拟设计,开发制造技术,演示产品维护和服务程序,甚至在产品制造之前培训操作员正确使用产品。可视化在每种情况下都发挥了作用。CAD系统已经被常规用于产品几何建模和设计制造程序。
可视化使我们能够查看几何图形,并看到特殊的特征,如表面曲率。
例如,有限元、有限差分和边界元等分析技术被用于模拟产品性能;可视化是用来查看结果的。
最近,人类工效学和人体测量学正在使用计算机技术与可视化相结合进行分析[MDHMS]。
三维图形和可视化被用于创建训练序列。这些通常被合并到超文本文档或World中
万维网(WWW)页面。图形和可视化的另一个实际应用是飞行模拟器。与驾驶真正的飞机相比,这已被证明是一种有效的训练方法,节省了大量的成本。
1.3成像、计算机图形学和可视化
人们对成像、计算机图形学和可视化之间的区别存在混淆。我们提供这些定义。
•成像,或图像处理,是对2D图片或图像的研究。这包括转换(例如,旋转、缩放、剪切)、从图像中提取信息、分析和增强图像的技术。
图1-1可视化流程来自不同来源的数据被反复转换,以提取、派生和增强信息。结果数据被映射到图形系统以供显示。
计算机图形学是用计算机创建图像的过程。这包括2D绘制技术以及更复杂的3D绘图(或渲染)技术。可视化是将数据作为图像(或其他感官形式)进行探索、转换和查看的过程,以获得对数据的理解和洞察。
根据这些定义,我们看到这些领域之间有重叠。计算机图形学的输出是图像,而可视化的输出通常是使用计算机图形学产生的。
有时可视化数据是图像的形式,或者我们希望使用来自计算机图形的逼真渲染技术来可视化物体几何。一般来说,我们从三个方面来区分可视化与计算机图形学和图像处理。
1. 数据的维数为三维或更大。许多知名的方法可用于二维或更小的数据;可视化应用于高维数据时效果最好。
2. 可视化与数据转换有关。也就是说,信息被反复创建和修改,以增强数据的含义。
3.可视化自然是交互式的,包括人类直接在创建、转换和查看数据的过程中。
另一种观点认为,可视化是一种包含探索和理解数据过程的活动。这包括成像和计算机图形学,以及数据处理和过滤,用户界面方法学,计算技术和软件设计。该过程如图1 - 1所示。
如图所示,我们看到可视化过程关注的是数据。第一步是从某个源获取数据。接下来,通过各种方法对数据进行转换,然后如图1-1所示的可视化过程。来自不同来源的数据被反复转换,以提取、派生和增强信息。结果数据被映射到图形系统以供显示。数据转换地图显示计算方法-有限元-有限差分-边界元-数值分析测量数据- CT、MRI、超声-卫星-激光数字化仪-股票/金融6介绍映射到适合呈现给用户的形式。最后,呈现或显示数据,完成整个过程。通常,随着对数据的更好理解或新模型的开发,这个过程会重复进行。有时可视化的结果可以直接控制数据的生成。这通常被称为分析转向。分析导向是可视化的一个重要目标,因为它增强了整个过程的交互性。
1.4数据可视化的起源
可视化作为一门正式学科的起源可以追溯到1987年NSF的科学计算可视化报告[McCormick87]。该报告创造了科学可视化这个术语。从那时起,该领域迅速发展,主要会议,如IEEE可视化,变得很成熟。许多大型计算机图形学会议,例如ACM SIGGRAPH,将其程序的很大一部分用于可视化技术。
当然,在1987年的报告引用[Tufte83]之前,数据可视化技术已经存在了很多年。第一批从业者认识到将数据表示为图像的价值。早期的图形数据表示是在18世纪随着统计图形学的出现而产生的。直到数字计算机的出现和计算机图形学领域的发展,可视化才成为一门可行的学科。数据可视化和图形的未来似乎是爆炸性的。
就在几十年前,数据可视化领域还不存在,计算机图形学被视为更正式的计算机科学学科的一个分支。随着技术的发明和计算机能力的增强,工程师、科学家和其他研究人员开始使用图形来理解和交流数据。与此同时,正在开发用户界面工具。这些力量现在已经汇聚到我们期望计算机适应人类的地步,而不是相反。因此,计算机图形学和数据可视化是进入计算机的窗口,更重要的是,进入计算机操作的数据。现在,通过可视化窗口,我们可以从数据中提取信息,并分析、理解和管理比以往任何时候都更复杂的系统。北卡罗来纳大学教堂山分校计算机科学凯南教授、IEEE约翰·冯·诺伊曼奖章获得者弗雷德·布鲁克斯博士用另一种方式表示。
在ACM SIGGRAPH ' 94的颁奖典礼上,Brooks博士表示,与人工智能(AI)相比,计算机图形学和可视化提供了“智能放大”(IA)。除了围绕这个问题的更深层次的哲学问题(例如,人类先于计算机),这是一个实用主义的观察。虽然人工智能的长期目标是开发可以在某些应用中取代人类的计算机系统,但这一领域缺乏真正的进展,导致一些研究人员将计算机的作用视为人类的放大器和助手。从这个角度来看,计算机图形学和可视化起着重要的作用,因为可以说最有效的人机界面是可视化的。最近在计算机能力和内存方面的进步只是加速了这一趋势,因为人与计算机之间的接口常常是有效应用计算机的障碍。
1.5本书的目的
目前已有定义和描述数据可视化的文本,其中许多使用案例研究来说明技术和典型应用。有些提供了算法或可视化系统架构的高级描述。详细的描述留给学术期刊或会议论文集。这些文本缺少的是一种练习可视化的方法。在本文中,我们的目标是超越描述,并提供工具来了解可视化并将其应用到您自己的应用领域。简而言之,这本书有四个目的。
1. 详细描述可视化算法和架构。
2. 展示数据可视化在广泛案例研究中的应用。
3.为数据可视化应用于实际问题提供了一个工作架构和软件设计。
4. 提供打包在c++类库中的有效软件工具。我们还为解释语言Tcl、Python和Java提供了语言绑定。总的来说,我们将文本和软件称为可视化工具包,简称VTK。我们希望您可以通过本文了解可视化的基本概念,然后使计算机代码适用于您自己的应用程序和数据。
1.6本书不是什么
本书的目的不是提供关于数据可视化的严谨的学术论文。我们也不打算包括对可视化技术的详尽调查。我们的目标是在数据可视化的正式学科与实际应用之间架起桥梁,并为这一新兴技术提供坚实的技术概述。在许多情况下,我们建议您参考所包含的软件以了解实现细节。你也可以参考适当的参考资料以获得进一步的信息。
1.7目标受众
我们的主要受众是创建、分析、量化和/或处理数据的计算机用户。我们假设有最低水平的编程技能。如果你能编写简单的计算机代码来导入数据,并且知道如何运行计算机程序,你可以使用本书附带的软件来练习数据可视化。
当我们写这本书的时候,我们也想到了计算机图形学和可视化入门课程的教育者和学生。在更高级的课程中,这篇文章可能不够严谨,不能作为单独的参考。在这些情况下,本书将很好地作为配套文本,并且该软件非常适合作为编程项目和课堂练习的基础。其他学科的教育者和学生可能也会发现文本和软件是展示结果的有价值的工具。
数值分析、计算机科学、商业模拟、化学、动态系统和工程模拟等课程通常需要创建大量数据的大型编程项目。这里提供的软件工具很容易学习,很容易适应不同的数据源。学生可以将该软件集成到他们的工作中,以显示和分析他们的结果。
1.8如何使用本书
你可以采取一些方法来有效地利用这本书。具体的方法取决于您的技能水平和目标。有三种可能的路径:新手。如果你缺乏图形、可视化或面向对象原则的基本知识,那么你就是一个新手。
如果你不熟悉面向对象的原理,可以从第2章开始阅读;如果你不熟悉计算机图形学,可以从第3章开始阅读;如果你不熟悉可视化,可以从第4章开始阅读。继续阅读第12章的应用研究。然后,您可以转到CD-ROM并尝试一些编程示例。在您熟悉基础知识并计划开发自己的应用程序之前,不要再详细讨论算法和数据表示。
黑客。如果你能轻松地编写自己的代码并编辑他人的代码,那么你就是一名黑客。复习第3章、第4章和第12章的例子。在这一点上,您将需要获得本文的配套软件指南(VTK用户指南)或熟悉http://www.vtk.org上的编程资源。然后从CD-ROM中检索例子并开始练习。
研究员/教育家。如果你开发计算机图形和/或可视化算法,或者如果你积极参与使用和评估这些系统,你就是一名研究人员。如果你在课程中涉及计算机图形和/或可视化方面,那么你就是一名教育工作者。从第2章、第3章和第4章开始。从文本中选择适当的算法并检查相关的源代码。如果您希望扩展系统,我们建议您获取本文的配套软件指南(VTK用户指南)或熟悉http://www.vtk.org上的编程资源。
1.9软件注意事项和示例代码
在写这本书时,我们试图在实践和理论之间取得平衡。我们不希望这本书成为用户手册,但我们确实希望算法表示和软件实现之间有很强的对应关系。(注:推荐Kitware, Inc. http://www.kitware.com出版的VTK用户指南作为本书的配套文本。)基于这一理念,我们采用了以下方法:应用程序与设计。
这本书的重点是可视化技术在现实世界问题中的应用。我们很少关注软件设计问题。其中一些重要的设计问题包括:内存管理、派生新类、浅对象与深对象复制、单继承与多继承以及到其他图形库的接口。软件问题包括在Kitware, Inc.
出版的配套文本《VTK用户指南》中。理论与实施。只要有可能,我们就将数据可视化的理论与我们的实现分离开来。我们认为,如果理论部分独立于软件问题和术语,那么本书作为参考工具将是最好的。在每一章的末尾都有单独的实现或特定于实现的示例部分。前面的部分是免费实现的。
文档。本文包含理解软件体系结构所必需的文档,包括对象图和浓缩的对象描述。关于对象方法和数据成员的更广泛的文档嵌入在软件中(在.h头文件中),并在CD-ROM或http://www.vtk.org上联机。特别是,Doxygen生成的手册页包含类关系、方法和其他属性的详细描述。我们在这篇文章中使用了许多惯例。导入的计算机代码用打字机字体表示,外部程序和计算机文件也是如此。为了避免与其他c++类库冲突,VTK中的所有类名都以“VTK”前缀开始。方法与添加了“()”后缀的变量不同。(其他约定请参见VTK用户指南。)本文中的所有图像都是使用可视化工具包软件和在附带的CD-ROM或网站http://www.vtk.org上找到的数据创建的。此外,每个图像都有源代码(有时是c++,有时是Tcl脚本)。我们决定不使用其他研究人员的图像,因为我们希望您能够通过我们展示的每个示例来练习可视化。每个计算机生成的图像都表示原始文件。以.cxx结尾的文件是c++代码,以. Tcl结尾的文件是Tcl脚本。希望这些示例可以作为您创建自己的应用程序的起点。要找到示例代码,您需要在以下三个区域之一进行搜索。
标准的VTK发行版包括一个VTK/Examples目录,在这个目录中可以找到许多文档良好的示例。VTK测试目录VTK/*/ testing,例如,VTK/Graphics/ testing / Tcl,包含本文中使用的一些示例代码。这些示例使用了VTKData分发版中的数据。最后,一个单独的软件发行版,vtk教科书发行版,包含标准VTK发行版中不存在的示例和数据。VTK、VTKData和vtk教科书发行版可以在附带的CD-ROM和/或网站http://www.vtk.org上找到。
1.10逐章概述
第二章:面向对象设计本章讨论了开发大型和/或复杂软件系统的一些问题,并描述了面向对象设计如何解决这些问题。本章定义了面向对象建模和设计中使用的关键术语,并通过一个真实世界的示例进行工作。本章最后简要介绍了一些面向对象的语言以及与面向对象可视化相关的一些问题。
第三章:计算机图形学入门计算机图形学是我们创建可视化效果的手段。本章从应用的角度介绍计算机图形学的基本概念。常见的图形介绍实体,如相机、灯光和几何原语,以及一些控制照明和图像生成的基础物理方程。与当前可用的图形硬件相关的问题被提出,因为它们影响我们如何以及我们选择渲染什么。介绍了与数据交互的方法。
第四章:可视化管道这一章解释了我们将原始数据转换为图形系统可以呈现的有意义的表示的方法。我们将介绍可视化管道的概念,它类似于软件工程中的数据流图。讨论了进程对象和数据对象之间的区别,以及如何解决性能和内存使用之间的问题。我们将解释管道网络拓扑结构在执行顺序、结果缓存和引用计数方面的优势。
第5章:基本数据表示应用可视化的各个领域产生了许多类型的数据。本章描述了我们用来表示和访问这些数据的数据对象。引入了一种灵活的设计,程序员可以使用一个一致的接口与大多数任何类型的数据进行交互。介绍了数据的三个高级组件(结构、单元格和数据属性),并讨论了它们的特定子类和组件。
第6章:基本算法前一章讨论的是数据对象,这一章介绍的是过程对象。这些对象包含转换和操作数据的算法。本章将介绍常用的等高线提取、标量生成、颜色映射和矢量场显示等技术。本章的重点是让读者对更常见和重要的可视化算法有一个基本的了解。
第七章:高级计算机图形学这一章涵盖了计算机图形学的高级主题。本章首先介绍了透明度和纹理映射,这是本章主要内容的两个重要主题:体绘制。体绘制是一种查看3D对象内部的强大技术,用于可视化体数据。我们以其他高级主题作为本章的结尾,如立体渲染、特殊相机效果和3D小部件。
第八章:高级数据表示数据对象的一部分功能是存储数据。关于数据表示的第一章讨论了数据对象的这一方面。本章主要介绍基本的几何和拓扑访问方法,以及由各种数据对象实现的计算操作。本章涵盖了数据集的坐标变换、插值函数、导数公式、拓扑邻接运算和几何运算(如线交和搜索)等方法。
第九章:高级算法这一章是基本算法的延续,涵盖了更复杂或应用较少的算法。标量算法(如分割立方体)与矢量算法(如流带)一起被覆盖。讨论了大量的建模算法,包括三角形条带生成、多边形抽取、特征提取和隐式建模。最后,我们将介绍一些利用纹理映射的可视化算法。
第10章:图像处理虽然3D图形和可视化是本书的重点,但图像处理是预处理和操作数据的重要工具。在本章中,我们将重点介绍几种重要的图像处理算法,以及如何使用流数据表示来处理大型数据集。
第11章:Web上的可视化Web是共享可视化的最佳场所之一。在本章中,我们将向您展示如何编写基于java的可视化应用程序,以及如何创建VRML(虚拟现实建模语言)数据文件以包含在您自己的Web内容中。
第12章:应用在本章中,我们通过一系列来自不同应用领域的案例研究,将前面的章节联系在一起。对于每一种情况,我们简要地描述了应用程序,以及我们期望通过使用可视化获得哪些信息。然后,我们将遍历设计和生成的源代码,以演示本文前面描述的工具的使用。
1.11法律考虑
我们不保证,明示或暗示,包含在本文中的计算机代码是没有错误或将满足您的任何特定应用程序的要求。不要在任何编码错误可能导致人身伤害或财产损失的应用程序中使用此代码。如果您确实以这种方式使用代码,风险由您自己承担。
作者和出版商不承担因您使用此代码而造成的直接或间接损害的所有责任。本文所包含的计算机代码是受版权保护的。我们允许您出于任何目的使用、复制和分发本软件。但是,您不能修改和重新分发软件。这里介绍的一些算法是专利软件的实现。如果您计划将本软件用于商业目的,请确保遵守适用的专利法。
光盘上的某些数据可免费分发或使用(须适当承认)。
有关详细信息,请参阅本地README文件或其他文档。本文使用了多个注册商标。UNIX是UNIX系统实验室的商标。Sun工作站和XGL是Sun微系统公司的商标。微软、MS、MS- dos和Windows是微软公司的商标。X窗口系统是麻省理工学院的商标。Starbase和HP是惠普公司的商标。Silicon Graphics和OpenGL是Silicon Graphics, Inc.的商标。麦金塔是苹果电脑的商标。RenderMan是皮克斯的一个商标。
1.12书目注释
有许多可视化文本可用。参考文献部分列出的前六个文本是很好的一般参考文献([Nielson90]、[Patrikalakis91]、[Brodlie92]、[Wolff93]、[Rosenblum94]和[Gallagher95])。如果你有计算机背景,Gallagher [Gallagher95]尤其有价值。Wolff and Yaeger [Wolff93]包含许多美丽的图像,面向Apple Macintosh用户。文本包括一个光盘,图像和软件。
你可能还想学习更多关于计算机图形和成像的知识。Foley和van Dam [FoleyVanDam90]是计算机图形学的基本参考。另一个推荐的文本是[BurgerGillies89]。关于计算机图像的建议参考书是[Pavlidis82]和[Wolberg90]。
Tufte [Tufte83] [Tufte90]的两篇文章尤其令人印象深刻。不仅图形做得很好,而且数据可视化的基本哲学是明确的。他还描述了好的和坏的可视化技术的本质。
另一篇有趣的文章来自提供医疗成像系统的大公司Siemens [Krestel90]。本文介绍了成像技术的基本概念,包括MRI和CT。本文仅适用于具有较强数学背景的用户。MRI的数学概述可从[SmithRanallo89]获得。
要了解更多关于使用可视化工具包编程的知识,我们推荐阅读文本《VTK用户指南[UsersGuide]》。本文有一个广泛的示例套件以及软件内部的描述。编程资源包括API的详细描述,VTK文件格式和类描述。
1.13参考资料
[陈志强,李志强,等。科学可视化技术与应用。Springer-Verlag,柏林,1992年。
[BurgerGillies89] P. Burger和D. Gillies。交互式计算机图形功能、过程和设备级方法。Addison-Wesley出版公司,Reading, MA, 1989。
[陈鹏程]。“一个气候模拟案例研究。”在《可视化学报》93年。第397-401页,IEEE计算机协会出版社,洛斯阿拉米托斯,加利福尼亚州,1993年。
[刘志刚,李志刚,李志刚,等。计算机图形学原理与实践(2d版)。Addison-Wesley, Reading, MA, 1990。1.13文献13 [Gallagher95] R. S. Gallagher (ed)。科学与工程分析的计算机可视化图形技术。佛罗里达州博卡拉顿CRC出版社,1995年。
[Krestel90]李国强(编)。医学诊断成像系统“,”西门子公司,慕尼黑,1990年。InfoVis95首届信息可视化研讨会。IEEE计算机协会出版社,Los Alamitos, CA, 1995。
[麦考密克87]李志强,李志强。“科学计算中的可视化”国家科学基金会图形、图像处理和工作站顾问团报告,1987年。
[MDHMS]麦道人类建模系统参考手册。报告MDC 93K0281。麦道公司,人为因素技术,2.1版,1993年7月。
[中国日报网][刊]。科学计算中的可视化。IEEE计算机协会出版社,Los Alamitos, CA, 1990。
《纽约时报》1995年5月2日,星期二,《纽约时报》商业日。
[帕特里卡拉基斯(编者)。物理现象的科学可视化。Springer-Verlag,柏林,1991年。
[帕夫利迪斯82]潘立迪。图形和图像处理“,”计算机科学出版社,罗克维尔,马里兰州,1982年。
[刘志强,刘志强,等。科学可视化的进展和挑战。Harcourt Brace & Company,伦敦,1994年。[SmithRanallo89]李国强。基本MRI的非数学方法。医学物理出版公司,麦迪逊,威斯康辛州,1989。
[杜德华,李志强,李志强,等。定量信息的可视化显示。图形出版社,柴郡,康涅狄格州,1990年。
[丛丛草]王志强。展望信息。图形出版社,柴郡,康涅狄格州,1990年。
[用户指南]W. Schroeder主编的VTK用户指南。Kitware, Inc. http://www.kitware.com。
[沃特斯91]李国强。“使用扫描数据建模和动画人脸。”可视化与计算机动画“,”2:123 - 128, 1991。
[中国日报网]数字图像翘曲。IEEE计算机协会出版社,Los Alamitos, CA, 1990。
[Wolff93]李国强。自然现象的可视化。TELOS,斯普林格-维拉格,加利福尼亚州圣克拉拉,1993年。
本书为英文翻译而来,供学习vtk.js的人参考。
vtk教程第一章介绍相关推荐
- 乐行学院RabbitMQ学习教程 第一章 RabbitMQ介绍(可供技术选型时使用)
乐行学院RabbitMQ学习教程 第一章 RabbitMQ介绍 RabbitMQ介绍 1.RabbitMQ技术简介 2.RabbitMQ其他扩展插件 2.1监控工具rabbitmq-managemen ...
- matlab里面atn是什么意思,matlab教程第一章
<matlab教程第一章>由会员分享,可在线阅读,更多相关<matlab教程第一章(63页珍藏版)>请在人人文库网上搜索. 1.第1章 矩阵及其基本运算MATLAB,即&quo ...
- Etcd教程 — 第一章 Etcd简介、Etcd单机安装
Etcd教程 - 第一章 一.Etcd介绍 1.1 介绍 1.2 etcd特点 二. Etcd单机安装 2.1 安装方式 2.1.1 yum install etcd 2.1.2 通过系统工具安装et ...
- javascript进阶教程第一章案例实战
javascript进阶教程第一章案例实战 一.学习任务 通过几个案例练习回顾学过的知识 通过练习积累JS的使用技巧 二.实例 练习1:删除确认提示框 实例描述: 防止用户小心单击了"删除& ...
- 第一章 介绍-机器学习老师板书-斯坦福吴恩达教授
第一章 介绍 1.1 欢迎 1.2 什么是机器学习 1.3 监督学习 1.4 无监督学习 1.1 欢迎 1.2 什么是机器学习 1.3 监督学习 1.4 无监督学习
- 北大青鸟c语言课后答案,北大青鸟C语言教程--第一章 C语言基础.ppt
<北大青鸟C语言教程--第一章 C语言基础.ppt>由会员分享,可在线阅读,更多相关<北大青鸟C语言教程--第一章 C语言基础.ppt(20页珍藏版)>请在人人文库网上搜索. ...
- 乐行学院Redis5学习教程 第一章redis5的安装
乐行学院Redis5学习教程 第一章redis5的安装 1.安装虚拟机 2.centeros下载 3.vmware安装centeros 4.vmware安装centeros设置IP 5.安装redis ...
- 【002】SPARC V8 体系结构第一章介绍
SPARC V8 体系结构第一章介绍 原文来源 英文原文 1.1. SPARC Attributes 1.2. SPARC System Components 1.3. SPARC Complianc ...
- laravel教程 第一章安装laravel
#laravel教程# ##第一章 安装laravel## ###前言 ### 有很多人,都在纠结于自己学什么框架,用什么框架.在这里我想告诉你,框架都是死的,但是人是活的,只要你明白的框架的基本原理 ...
最新文章
- three.ar.js_我们如何通过AR.js使产品吉祥物栩栩如生
- 解决Incorrect integer value: ‘‘ for column问题
- webView的属性
- 跨链Cosmos(1) 网络拓扑
- 解决Java Web项目无法读取配置文件问题
- R7-3 极坐标->直角坐标 (10 分)
- WPF中播放Flash动画
- 帆软报表,报错:sql注入攻击问题
- 电脑打开任务管理器的方法有哪几种
- [转] openssl dgst命令完成SHA256哈希校验和RSA数字签名
- 关于使用UIWebView加载HTTPS站点
- 如何一键查询物流信息并筛选出未签收单号
- 【游戏理论】游戏与游戏开发
- python免费教程发布页
- Excel合并多个文件
- 「LOJ6198」谢特-SA+可持久化Trie+启发式分裂
- python支持wps_python启动办公软件进程(word、excel、ppt、以及wps的et、wps、wpp)
- vue无法加载文件C:\Users\Administrator\AppData\Roaming\npm\vue.ps1因为在此系统上禁止运行脚本……解决办法
- MySQL窗口函数简介
- win10运行安卓模拟器蓝屏崩溃