APP下载

计算机图形技术在数据计算方面的应用

2010-11-25罗俊松

制造业自动化 2010年12期
关键词:图形学数据挖掘可视化

唐 云,罗俊松

TANG Yun, LUO Jun-song

(成都理工大学 信息工程学院,成都 610059)

0 引言

现代的数据可视化(Data Visualization)技术指的是运用计算机图形学和图像处理技术,将数据转换为图形或图像在屏幕上显示出来,并进行交互处理的理论方法和技术。它涉及计算机图形学、图像处理、计算机辅助设计、计算机视觉及人机交互技术等多个领域。数据可视化概念首先来自科学计算可视化,近年来,随着网络技术和电子商务的发展,出现了信息可视化(Information Visualization),成为数据可视化的新的热点。数据可视化的基本含义是“使之可见”,因此,数据挖掘的许多活动都可以认为是一种可视化,即利用可视化技术进行信息传输、数据挖掘和知识发现,最终实现决策支持。从这种观点出发,数据挖掘与数据可视化息息相关,也正是在这些功能上,数据可视化与数据挖掘具有最大的重叠。

1 交互式计算机图形学

计算机图形学(Computer Graphics)是计算机应用领域中的一个重要研究方向。国际标准化组织ISO将计算机图形学定义为:研究用计算机进行数据和图形之间相互转化的方法和技术。由于交互技术在计算机图形学中的普遍使用和重要性,因此人们也常把计算机图形学称为交互式计算机图形学。

交互式图形系统是在交互软件的支持下,由操作人员通过交互式绘图设备和计算机进行对话。

进行交互式绘图需要相应的软件和硬件,硬件主要由主机和输入、输出设备组成,而软件主要由应用模型、应用程序和图形系统组成。交互式图形系统的硬件部分不在本文的考察范围内,这里简单介绍交互式图形系统的软件组成部分。1)应用模型:应用模型为显示的图形提供数据或所描述的对象,它保存着构造图形的一个或多个对象的全部描述信息。这些信息为交互绘图提供支持。2)应用程序:是交互式图形系统的核心,它从应用模型中取得图形对象的各种数据,并对这些数据进行变化处理,再使用图形系统生成该对象图形,在输出设备上输出。3)图形系统:包括一些图形子程序,可以提供各种图形功能,驱动特定的输出设备,并产生图形。

目前常用的计算机图形处理语言有DirectX、OpenGL、VRML以及Java3D。由于OPENGL的跨平台特性,许多人利用OpenGL编写三维应用程序,不过对于一个非计算专业的人员来说,利用OpenGL编写出复杂的三维应用程序是比较困难的,与其他的计算机图形处理语言相比Java3D有其自身的特色。Java3D是在OpenGL三维图形库的基础上发展起来的,Java3D API是高层次的面向对象,基于场景图的编程接口,能实现对3D图形数据的高性能处理,对图形的平移、旋转、拾取、删除等操作的优化处理,能处理更丰富的三维组合图形和复杂的图形模型。Java在互联网上几乎随处可见,而它在3D图形上正显示出更大的威力。使用Java的重要理由之一是它的平台无关性,它的平台无关性来自于Java只需部分编译。负责编译Java程序的是Java Virtual Machine (JVM),不同的平台有它自己的JVM,处理与平台相关的功能。因此,只要支持JVM,就能运行Java小程序。两种最有名的浏览器Netscape和IE都支持JVM,所以用Java制作的3D图形几乎可以在所有的互联网浏览器上显示。Java 3D再一次体现了Java语言的“一次书写,随处运行”的优点,使得Java3D能够运行于多种平台,能够更方便地应用最新的三准图形加速技术。

Java3D采用树形的场景图结构,易于实时处理特殊三维效果的显示,Java3D API的低层图形结构综合了其他低层API( Direct3D, OpenGL,Quick-Draw3D)的优点,其高层结构结合了场景图(SceneGraph)模型,开发者只需集中精力于场景图中的各个对象和组成元素,不必花费时间和精力来设计具体的几何形体和描绘代码。要建立三维的应用,实际上是构造一个特定的场景图,定义所需要的形体(shape3D),给出形体的外观(Appearance)和几何(Geometry)信息,再将它们通过变换节点(Trans-form Group)移到合适的位置(变换节点包含平移变换、旋转变换(Tranaform3D))等操作,将变换节点添加到分支节点(Branch Group),分支节点添加到虚拟世界(Virtual Universe)的局部坐标系里(Locale)。

2 数据挖掘与可视化技术

数据挖掘是从大量的数据中提取或“挖掘”知识。广义的观点是,数据挖掘是从存放在数据库、数据仓库或其他信息库中的大量数据中挖掘有意义的知识的过程。数据挖掘被视为数据管理与分析技术自然进化的产物。可视化在数据挖掘中是一个多面手,能使人在视觉上理解多维数据中的复杂模式,通过观察数据在多重维数和多重图形窗体中的存在形态,可以直观、迅速地揭示数据趋势,帮助验证数据挖掘模型的可信度。目前可视化技术运用于数据挖掘,一般是作为表示工具,如生成最初的视图,解析复杂结构的数据和显示分析结果,而分析方法本身并不包括可视化。一个更强的可视化数据挖掘策略依赖于将可视化与分析过程紧密结合起来,形成一个统一强大的可视化数据挖掘工具。人类可视地参与到分析过程中以实现决策支持依然是一个主要的挑战:以基于可视化的人类决策代替一个分析过程中的某一数学步骤,当决策不再能自动生成时,以可视化支持人类来处理决策。

可视化的基本思想就是使用图形和图像来表征数据,将隐藏在大量数据中的信息以相对直观、易于领会的图像方式表达出来,从而加快获取信息的速度。可视化离不开图形,计算机图形学是数据挖掘可视化的基本工具。数据可视化是对大型数据库或数据仓库中的数据的可视化,是数据分析过程中必不可少的一个阶段。在数据可视化方面,目前的研究方向主要是将关系数据库或数据仓库中的数据从不同的抽象层次将属性、维度进行联合之后,以不同的呈现形式展现给用户,称为“前端展示”。国内相继开展了数据可视化技术方面的研究,并取得了一些成绩。将数据的各个属性值以多维数据的形式表示,可以从不同的维度观察数据,从而对数据进行更深入的观察和分析。

2.1 数据挖掘中可视化技术的提出

由于数据库的日益庞大和计算机硬件处理能力的飞速发展,需要存储和表现于最终用户之前的信息也不断增长。然而,无论数据库有多大,或是计算机有多快,最终,信息必须流经一个最紧的瓶颈:人脑吸收和处理新信息的能力所能达到的速度。数据的庞大是压倒一切的,人类的视觉系统和大脑不足以满足人类以数据本身的形式来工作的要求,因此,迫切需要提供可视化的工具。利用可视化技术和新型计算机的处理能力使人脑吸收和处理新信息变得简单,从而解决这个问题。并且,使用可视化技术在很多时候还可以发现用其他方式都无法发现的规律、模式。例如,假设把一个数据仓库想象为一座待挖掘的数据山,那么,把它可视化为一座真正的山将更加有助于得到想得到的知识。

在数据挖掘算法所生成的大量模式中,最终只有十分少量的信息能够以文字的形式解释和评估。因而使用可视化技术作为服务于计算机与用户之间的沟通纽带,为用户提供关于数据和知识的直观信息。这虽然不是数据挖掘系统中必不可少的,却是极其重要的一步。并且,传统的挖掘过程不可见、不直观,用户无法干预挖掘过程,对用户来说好像一个黑箱子,使用户对系统得出的结论持怀疑态度。使用适当的可视化技术,帮助用户更紧密地与整个挖掘过程相结合,解决挖掘系统中存在的一些问题。

2.2 数据可视化方法

可视化的目的就是要充分利用人类对于可视化形式下模型和结构的获取能力,并对这个结果进行分析解释。数据可视化的方法有许多,如几何方法、基于图标的方法、面向像素的方法、等级方法、图表方法及上述方法的综合运用。常用的可视化图表类型有:面积图、柱形图、立方体、圆环图、拟合曲线图、散点图、折线图、帕雷托图、雷达图等;其他常用的多维图表类型包括:轮廓图、直方图、误差图、威斯丁豪斯图和箱式图等。

2.3 数据挖掘中可视化技术的作用

传统的数据挖掘过程是以机器为中心的,而新的吸纳了可视化技术的数据挖掘过程是以人为中心的。以人为中心的数据挖掘过程将数据挖掘与可视化技术完美结合,提高了整个数据挖掘过程的灵活性、有效性、与用户的交互性。可视化技术在数据挖掘中可以起到以下作用:

1)通过提供对数据和知识的可视化,可以利用人类的模式识别能力评估和提高挖掘出的结果模式的有效性。

2)利用可视化技术建立用户与数据挖掘系统交互的良好沟通通道,使用户能够使用自己丰富的行业知识来规整、约束挖掘过程,改善挖掘结果。

3 数据挖掘可视化模型(DVM)

为了实现可视化图形的多样性以及数据集的独立性,可采用面向对象技术,为可视化图形和数据集建立两种不同的对象。数据集对象负责从数据源获取数据,然后驱动可视化对象进行显示;可视化图形对象为用户提供显示交互和查询交互的方法,用户可以使用这些方法来选择和改变用于可视化的数据集。这样就形成了一种“用户可视化图形对象数据对象”的机制,按照这种机制,可以建立DVM模型。

模型中用户可以通过交互式显示和交互式查询方法得到相应的结果。即终端用户可以在可视化类中定义相应的查询语句,通过查询处理器获取相应的数据形成该数据对象,同时通过数据驱动,采取相应的可视化技术将查询处理的结果可视化。此外,终端用户也可以直接通过查询语句获取结果。

4 结论

可视化技术在数据挖掘中有着广泛的应用,随着它的不断发展形成了可视化数据挖掘。数据挖掘事先并不知道会挖掘出什么结果,也不知道挖掘模型会得到什么样的挖掘结果,可视化为分析大量的复杂的数据提供了帮助,数据挖掘和可视化的结合能够大大提高决策的速度和效率。可视化的发展离不开交互式计算机图形学,其中JAVA 3D因其较强的可移植性能运用于多种平台,,有效地解决了传统可视化程序的局限性,近年来运用的愈加广泛了。

[1] 丁爱玲.计算机图形学[M].西安电子科技大学出版社,2005.

[2] Jiawei Han,Micheline Kamber著.范明,孟小峰,等译.数据掘概念与技术[M].北京:机械工业出版社,2001.

[3] Tom Soukup,Ian Davidson著,朱建秋,蔡伟杰,译,可视化数据挖掘[M].北京:电子工业出版社,2004.

猜你喜欢

图形学数据挖掘可视化
基于CiteSpace的足三里穴研究可视化分析
思维可视化
探讨人工智能与数据挖掘发展趋势
数据挖掘技术在打击倒卖OBU逃费中的应用浅析
基于CGAL和OpenGL的海底地形三维可视化
“融评”:党媒评论的可视化创新
突出实践需求的GIS专业《计算机图形学》课程优化改革
高级数据挖掘与应用国际学术会议
高级数据挖掘与应用国际学术会议
第7届国际图象图形学学术会议