基金项目:国家高技术发展计划(“863”计划)资助项
目(2009AA01Z423)
0 引 言
“可视化”一词源于英文“Visualization”,词义是:“将不可见的、不能表达的或抽象的一些东西,转变为可以看到的或者大脑可以想象的图形图像”。早在20世
纪初,人们已经将表格和统计图等原始的可视化技术应用到了科学数据分析中。1986年10月,在美国国家科学基金会的“图形、图像处理和工作站”讨论会上,提出了“科学计算可视化”(VisualizationinScientificCom-putation,ViSC)
[1-2]
概念,从此“可视化技术”被正式提
出。现代可视化技术的概念更为宽泛,指的是以计算机图形技术为基础,通过计算机生成对人体视觉刺激的图像,以便于人们接受、理解原始数据、信息的技术方法
[3]
。它作为一门交叉学科涵盖了许多研究领域,包
括:计算机图形学、计算机视觉、计算机辅助设计、几何学、感知心理学和人机交互等技术[3-4]。
可视化技术在发展过程中逐步衍化为四类,很多文章都有过介绍[5-8],但仍不够全面。本文依据文献常用
的可视化分类方法
[8]
,分别对4种可视化技术的背景、
技术特点、研究方向、发展趋势和应用领域进行了详细阐述,最后从各个角度进行了系统总结,为深入研究相关的可视化技术做了铺垫。1 可视化技术分类
可视化技术从科学计算可视化起步,最初的应用仅针对科学计算和工程测量数据,经过发展,应用范围逐渐扩大,又细分为多种门类。各个研究组织和个人对可视化技术的划分各不相同,Benshneiderman,EdHChi,DanielKeim等人都提出过不同的划分[9-11]。目前,比较主流且易于使人理解的划分方法是依据所处理数据的抽象层次划分为种:科学计算可视化、数据可视化(DataVisualization)、信息可视化(InformationVisualization)和知识可视化(KnowledgeVisualization)[8]
。1.1 科学计算可视化
1980年代,科学数据大量产生,由于缺乏有效的辅助工具和手段,90%以上的数据都白白浪费,严重影响了科学发现与科学交流。1987年,美国国家自然科学基金会在华盛顿召开了“科学计算可视化”首次专题讨论会,认为“将图形和图像技术应用于科学计算是一个
全新领域”,指出“科学家们不仅需要分析由计算机得出的计算数据,而且需要了解在计算过程中数据变化的情
况,这些都需要借助于计算机图形学及图像处理技术”[12]。会后发表了第一篇科学计算可视化报告———VisualizationInScientificComputing[1]
。
科学计算可视化是用计算机图形图像处理技术,将科学计算过程中产生的数据及计算结果转换为图形或图像在屏幕上显示出来并进行交互处理的理论、方法和技术[7,13]
。它所处理的数据主要是科学计算所获得的海量数据集,它将图形生成技术、图像处理技术和人机交互技术有机地结合在一起,实现从复杂的多维数据中产生图形,通过图形图像来分析由计算机算出的数据,了解在计算过程中数据的变化规律[13]。图1通过Vis5D软件将空气流动的计算数据用可视化方法直观地展现,可以清晰地看到空气的流动走向[14]。
图1 科学计算可视化示例
科学计算可视化主要研究将离散的数据转换为图形信息的理论、方法以及应用系统的构成[15]
,其中涉及
到很多算法、技术
[2,15]
。当前比较主流的技术有4种:
等值线(ContourRendering)、面绘制(SurfaceRender-ing)、体绘制(VolumeRendering)和流场显示(FluidDisplay)。
科学计算可视化近些年的进步很大,但是很多研究还有待于提高与完善
[16]
:首先是算法和数据结构的改
进研究,这方面一些小的进步就可以使系统成像速度显著提高;其次,随着计算机硬件和网络技术的进步,分布式计算环境的组建已经变得非常普遍,分布式环境下的并行绘制技术的研究也是以后一个值得关注的方向。
随着科学技术的发展,科学计算可视化的含义大大扩展,它不仅包括了科学计算数据可视化,而且包括工程计算数据的可视化以及实验、测量数据的可视化。当前科学计算可视化应用较广的领域为[12]:虚拟风洞实验、医疗领域的计算机断层扫描(CT)、核磁共振(MRI)、地质勘探、气象学、分子模型构造、计算流体动力学和有限元分析等。
1.2 数据可视化
数据可视化是指大型数据库或数据仓库中数据的可视化[7,17-18]
,它是可视化技术在非空间数据领域的应用,使人们以更直观的方式看到数据及其结构关系,不再局限于通过关系数据来观察和分析数据信息[19]。
数据可视化技术凭借计算机的巨大处理能力、计算机图形图像学基本算法以及可视化算法,把海量的数据转换为静态或动态图形图像呈现在人们面前,并允许通过交互手段控制数据的抽取和画面的显示,使隐含于数据之中不可见的现象成为可见,为人们分析、理解数据、形成概念、找出规律提供了强有力的手段[18]。图2是Dundas数据可视化工具用图表、标尺、地图等形式展示的市场销售数据[20],通过图形显示,数据有了直观的表达,数据之间的对比关系一目了然。
图2 数据可视化示例
数据可视化涉及几种主流技术[5]
:
(1)基于几何的技术,以几何画法或几何投影的方式来表现数据库中的数据(例如,传统的折线图和柱状图),是目前最为常用的技术,比较有特点的是平行坐标
法(ParallelCoordinates)[21]
;
(2)面向像素的技术,将每一个数据项的数据值对应于一个带颜色的屏幕像素,对于不同的数据属性以不同的窗口分别表示,德国慕尼黑大学用这种技术实现了VisDB系统[22];
(3)基于图标的技术,基本思想是用一个简单图标的各个部分来表示n维数据属性,枝形图法(StickFig-ures)[23]
最有代表性;
(4)基于层次的可视化技术,主要针对数据库系统中具有层次结构的数据信息,将n维数据空间划分为若干子空间,对这些子空间仍以层次结构的方式组织并以
图形表示出来,树图(Treemap)[24]
技术是其代表。
数据可视化还有其他的技术方法,如3D技术、基于图形的技术等[5]
。
数据可视化技术目前尚不成熟,有两个发展趋势[5]:一是数据可视化和数据挖掘技术结合,使得数据可视化系统更加智能化;二是数据可视化技术中人机交互的设计还有待完善。数据可视化技术的应用非常广泛,特别在商务、金融领域有广阔的应用空间[25]。1.3 信息可视化
“信息可视化”这个术语第一次出现在1989年Ro-bertson,Card和Mackinlay发表的《用于交互性用户界面的认知协处理器》中[26]。其定义为“使用计算机支撑的、交互性的、对抽象数据的可视表示法,以增强人们对抽象信息的认知”。2000年JimFoley在关于计算机图形学的“十大尚未解决的关键问题”[27]中,将“信息可视化”列为第三位。
信息可视化表现了数据之间的相互关系和发展趋势。大量数据背后隐藏着许多重要的信息,人们希望能够对其进行更高层次的分析,以便更好地利用这些数据。硬件系统的图形处理性能已能满足在用户界面中探索3D和动画的需求,为了充分利用这些性能,新的软件结构必须支持复杂的异步交互智能体(多智能体问
题),并且,还应支持流畅的交互动画(动画问题)[28]。
信息可视化更关心的是认知能力的提高,即如何把非空
间抽象信息映射为人们易于理解的可视化形式[29]。图3是RetailAnalyzer工具用圆(颜色、大小)在电子地图上描绘所在区域的店铺销售业绩信息
[30]
,销售额对
比一目了然,系统还提供了丰富的人机交互功能。
图3 信息可视化示例
信息可视化的主流技术很多,大体上有三类:
(1)视图展示
扩展轮廓技术[31]
,是利用可扩展树查看多层次信
息的技术;Focus+Context技术[31]
,是一种放大显示画面中某块小的局部区域的透镜技术,放大区域的周围退到背景显示,但仍然可见
[28]
;双曲树(Hyperbolictree)
技术
[31-32]
,也是一种Focus+Context技术,它将更多的
可视化空间用于显示层次结构中当前被关注的部分,而
同时又把整个层次结构显示出来;鱼眼视图(Fish-eye)[33],把人们感兴趣的焦点区域放大显示,把焦点周
围的信息逐渐变小,同时保持整体视图的可见性[34]
,同样属于Focus+Context技术;锥形图(ConeTrees)技术[31,35],是利用三维图形技术对层次结构进行可视化处理的方法,层次结构的顶部放置在可视化空间的顶端,每个椎体的顶点表示该层结构的顶点,其子节点均匀排列在该椎体的底部。
(2)视图变换
视点控制技术,通过放大可视化结构或改变视点,使得细节可见[28];overview+detail技术,同时使用overview和detail两个窗口,overview窗口提供detail视图的context(信息),并且充当改变details视图的控制部件,detail窗口用于选定区域的放大或聚焦
[30]
。
(3)人机交互
Details-on-demand技术,在纵览整体信息的情况下,交互式地选择一部分数据来显示其详细信息
[36]
;
Brushing技术,是位置探查形式,当光标经过一个位置时,在其他相关标记上产生可视化效果[31]。信息可视化是重点研究人、计算机表示的信息以及它们相互影响的技术,因此交互技术在信息可视化研究里显得尤为重要[37]。
信息可视化研究方向主要有:可视化变量研究、可视化模型研究、符号系统研究、空间信息与信息传输研究、心理学和认知科学研究、虚拟现实研究[38]
。信息可视化技术的发展趋势是与分析科学更加紧密地结合,由以结构为中心的可视化向潜在现象的动态属性可视化发展,由“以任务为中心”向“以用户为中心”转变[39]
。
信息可视化应用的领域涉及到人们日常生活的方方面面,包括:如人口普查、健康状况统计、现金交易、销售业绩、财务预算、股市走向、网络安全监管等。1.4 知识可视化
知识可视化曾被称为领域可视化(DomainVisual-ization)[40]
、主题领域可视化(SubjectDomainVisual-ization)、知识域可视化(KnowledgeDomainVisualiza-tion),指的是对基于领域内容的结构进行的可视化[41]。
Eppler和Burkard认为知识可视化是在科学计算可视化、数据可视化、信息可视化基础上发展起来的新兴研究领域[42]
,应用视觉表征手段,促进群体知识的传
播和创新,研究视觉表征在提高群体之间知识传播和创新中的作用,目标在于传输见解(insights)、经验(expe-riences)、态度(attitudes)、价值观(values)、期望(ex-pectations)、观点(perspectives)、意见(opinions)和预
|