计算机图形学基础(OpenGL版).doc_第1页
计算机图形学基础(OpenGL版).doc_第2页
计算机图形学基础(OpenGL版).doc_第3页
计算机图形学基础(OpenGL版).doc_第4页
计算机图形学基础(OpenGL版).doc_第5页
免费预览已结束,剩余13页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第1章 绪论第1章 绪 论图形图像是现代社会信息化的重要支柱。计算机图形学便是与图形图像密切联系的一门综合性学科。所有现代科学和工程领域几乎都可以采用计算机图形以加强信息的传递与表达,因此当今的科学家和工程师都需要具备计算机图形学的基本知识。从应用领域来看,计算机图形学在造船、航空航天、汽车、电子、机械、建筑、影视、轻纺、化工等众多领域有着广泛的应用,而这些应用又在不断地推动着计算机图形学的发展,进一步充实和丰富了它的内容。本章将主要讨论计算机图形学的目标与任务、内容体系、应用领域及其发展等方面的内容,使读者对计算机图形学有个整体的认识。1.1 计算机图形学的目标与任务1.1.1 视觉交流是计算机图形学的核心目标视觉交流在人类的生产与生活中发挥着极其重要的作用。生活中,视觉交流广泛存在于电影、游戏、广告图示等行业中。而另一方面,视觉交流对人类生产也有着重要的推动与促进作用。历史证明,人类的视觉在科学发现中发挥过杰出的作用。通常在可视化方面,关键技术的出现就是重大科学发现的前奏。望远镜和显微镜在天文学和生物学发展中的作用就是明证。这些工具放大和扩展了人类眼晴的功能。今天,这个道理仍然成立。人类的视觉交流功能,允许人类对大量抽象的数据进行分析。新的数据开发工具,可以大大拓展我们的视力。人的创造性不仅取决于人的逻辑思维,而且取决于人的形象思维。计算机图形学的核心目标在于创建有效的视觉交流。在科学领域,图形学可以将科学成果通过可视化的方式展示给公众;在娱乐领域,如在PC游戏、手机游戏、3D电影与电影特效中,计算机图形学发挥着越来越重要的作用;在创意或艺术创作、商业广告、产品设计等行业,图形学也起着重要的基础作用。而在科学领域中,这一点是在1987年关于科学计算可视报告中才被重点提出。该报告引用了Richard Hamming在1962年的经典论断:“计算的目的是洞察事物的本质,而不是获得数字。”报告中提到了计算机图形学在帮助人脑从图形图像的角度理解事物本质的重要作用,因为图形图像比单纯数字具有更强的洞察力。视觉交流的一个基本问题是如何通过图形或几何的方式来表示或展示一些问题或信息。不管是在科学领域内还是在领域外,计算机图形学通过图形图像的方式提供了对问题与信息的一个更好的展示与理解方式。我们用可视的图形术语表达问题,通过建立实际的图形图像把问题具体化,最后把图像作为对问题进行表示和深入理解的工具,由此实现对问题的更深刻认识与理解,最终达到最优化的求解方案。如图1.1所示为视觉交流的闭合环描述,这一过程通常可分解为以下三个阶段。图1.1 视觉交流基本问题(1)观察问题/信息:通过观察、思考,明确问题或要传达的信息。(2)问题/信息几何:通过建模表达问题,使问题被更抽象地表示,在此基础上用几何模型表示出问题或信息。(3)几何图像:由几何模型生成图像,将问题或信息可视化。以上过程可能是一个反复循环的过程,不断优化直到问题得到完美解决。1.1.2 计算机图形学的三个基本任务模型-视图-控制器(MVC模式)是一种非常经典的软件架构模式,在UI框架和UI设计思路中扮演着非常重要的角色。MVC是三个单词的首字母缩写,它们是Model(模型)、View(视图)和Controller(控制器)。这个模式认为,程序不论简单或复杂,从结构上看,都可以分成三层:最上面的一层,是直接面向最终用户的“视图层”(View),它是提供给用户的操作界面,是程序的外壳;最底下的一层,是核心的“数据层”(Model),也就是程序需要操作的数据或信息;中间的一层,就是“控制层”(Controller),它负责根据用户从“视图层”输入的指令,选取“数据层”中的数据,然后对其进行相应的操作,产生最终结果。参考MVC模式,可以针对计算机图形学给出下列类似表示:计算机图形学=表示+绘制+交互图1.2 图形学目标与任务计算机图形学核心目标(视觉交流)可以分解为三个基本任务:表示、交互、绘制,即如何在计算机中“交互”地“表示”、“绘制”出丰富多彩的主、客观世界,如图1.2所示。这里的“表示”是如何将主、客观世界放到计算机中去二维、三维对象的表示与建模;而“绘制”是指如何将计算机中的对象用一种直观形象的图形图像方式表现出来二维、三维对象的绘制;“交互”是指通过计算机输入、输出设备,以有效的方式实现“表示”与“绘制”的技术。其中,“表示”是计算机图形学的“数据层”,是物体或对象在计算机中的各种几何表示;“绘制”是计算机图形学的“视图层”,指将图形学的数据显示、展现出来。“表示”是建模、输入,“绘制”是显示、输出。“交互”是计算机图形学的“控制层”,它负责完成有效的对象输入与输出任务,解决与用户的交互问题。1.2 计算机图形学的内容体系根据上述图形学的目标与任务分析,结合本书的章节内容,可以得到本书的计算机图形学内容体系,如图1.3所示。其中,图形学基础模块是学习计算机图形学的一些数学与相关软硬件的基础知识;建模与表示模块是为了解决图形学的表示任务;绘制模块用来解决图形学的绘制任务;交互技术模块对应图形学的交互任务。各知识模块内容简要介绍如下。图1.3 本书的计算机图形学内容体系1基础模块图形学基础主要包括数学以及与之相关软、硬件基础知识。数学基础知识包括向量、矩阵、齐次坐标和几何变换等,是计算机图形学中重要的计算工具,它们被大量地运用到真实感图形生成过程中的法向计算,还有直线、平面及各种曲面的计算,曲线曲面的构造与光顺等。其中向量、矩阵等知识请读者自行查阅相关书籍,本书不作介绍。几何变换知识将在第4章重点介绍。软、硬件基础知识包括常见图形API,如OpenGL、Direct3D等,图形输出设备与输出技术的简单基础知识如光栅显示器基本原理、颜色处理与颜色模型等。这些知识将在第2章中介绍。2建模与表示模块要想实现有效的视觉交流,首先要有对象或信息的几何模型,因此建模是计算机图形学的首要工作。建模与表示模块的主要内容就是研究如何用图形方式表示现实或虚拟世界中的对象与信息,如一座房子、一辆汽车、一个电影角色等。这种表示有时是近似的,如电影中的角色与对象;有时模型需要有一定的精确度控制,如CAD中的模型,要生产制造出它们,必须满足一定的精度要求才行。模型在外部显示上通常以点、线、面、体等各种几何元素及它们的组合来表现,而在计算机内部则是通过坐标、连接关系所对应的几何信息与拓扑信息来表示,当然最终所有的模型信息仍然由二进制数来表示。不管从模型的外部还是模型的内部来看,模型本质上都与几何有关,同时又是由二进制数字表示,因此从某种程度来说,模型应称为数字几何模型。建模与表示模块主要包含几何模型的表示与创建两方面。几何模型的表示方法主要有多边形网格、曲线曲面与细分曲面三种方式。多边形网格方法是通过一些小多边形及其组合来表示物体;曲线曲面方法主要通过数学上NURBS曲线曲面来表示对象;细分曲面则通过反复细化初始的多边形网格,产生一系列网格,来趋向于最终的细分曲面。每个新的分步骤产生一个新的有更多多边形元素并且更光滑的网格。几何模型的创建方法几乎像物体自身的形状那样丰富且富于变化。最主要的创建方法是通过三维建模程序如Maya、3ds Max等来创建所需对象;也可以直接从设备如三维激光扫描仪或三维数字化仪等来获取数据创建物体几何模型;或者通过多张照片、深度照片或者视频来创建。建模与表示模块知识主要集中在本书的第7章介绍。3绘制模块“绘制”一词来自艺术领域,按中文字面理解,“绘”指用图形图像表达,“制”是制作,有制作者的主观因素,也有制作工具的因素。“绘制”更强调制作者通过制作工具来表示或展现自己对物体的理解,如一个画家根据石膏模型进行素描速写将其展现在画布上即为一个简单的绘制过程。在计算机图形学中,绘制主要指将计算机中对象的数字几何模型转换为直观形象的图形或图像形式,是一个数字几何模型的视觉可视化过程。它实质上是综合利用数学、光学、计算机等知识,将数字几何模型的形状、光学特性等,及物体间的相对位置、遮挡关系等信息在计算机屏幕上再现出来。绘制过程通常是由计算机系统的绘制流水线来实现。绘制流水线依托基于光栅的专用软硬件体系结构,它能够快速将物体的数字几何模型转换为计算机屏幕显示的像素集合。一般可分为三个阶段:应用程序,几何处理,像素处理。应用程序阶段一般是通过应用程序给图形系统软、硬件提供物体的数字几何模型信息,这种信息通常以图元的形式提供,如用来描述数字几何模型的点、线或多边形。几何处理阶段是以每个顶点为基础对几何图元进行处理,并完成数字几何模型信息从三维坐标变换为二维屏幕坐标的过程。第5章中的二维观察及第6章中的三维观察处理上述坐标转换问题,第8章中的真实感图形主要处理光照及像素颜色信息。在像素处理阶段,屏幕对象先是被传送到像素处理器进行光栅化,再对每个像素进行着色,然后再输出到帧缓冲器中,最后输出到显示器。第3章主要介绍这方面的内容。动画是图形学的重要内容之一,有学者将其与建模、绘制区分开,这里我们没有详细区分,将其视为绘制内容,在第10章将介绍这部分内容。4交互技术如前所述,交互技术是为了满足有效、高效地完成模型表示、绘制任务,解决与用户的交互问题的需要。因此,需要针对图形对象,研究合适的输入方法、操作方法,也就是友好的人机界面。一个友好的人机用户界面能大大提高图形表示与绘制的易用性和操作效率。交互技术是计算机图形学中相对独立的一部分,主要包括人机交互方式、典型的人机交互技术,如定位技术、菜单技术、拾取技术、定值技术、橡皮筋技术、拖曳技术、网格与捕捉技术等,其技术比较成熟,已形成以WIMP(Windows窗口、Icon图标、Menu菜单及Pointer指示)为特征的图形用户界面。图形用户界面使得计算机软硬件操作的友好性得到巨大改善,很好地推动了计算机的普及应用。第9章将主要介绍交互技术这方面知识。1.3 计算机图形学相关学科与计算机图形学关系非常紧密的学科有数字图像处理、机器视觉、计算几何、计算机辅助几何设计等,它们与计算机图形学之间相互渗透、相互交叉,在很多地方学科边界越来越模糊。在介绍这些学科之间的关系之前,有必要先对图形与图像这两个易混淆的概念作一个简单区分。1.3.1 图形与图像人们生活在一个客观的世界中,大部分的事物都是有“形”的,看得见摸得着,可以描述它们的形状。“形”因此成为人们认识事物和相互交流的一个关键元素。正是因为它的存在,人们在交流时,一谈到某事物概念,就会首先联想到它的形状,如圆形、方形等。图形方式在表达物体信息时具有直观、形象的优势,具有不同于语言和文字的独特功能,同时它还能够清晰地表示出一些语言和文字难以准确描述的信息,如图1.4所示。 图1.4 图形信息表示从图形的发展历史来看,图形是一个不断发展和变化的概念。在早于计算机图形学和计算机辅助设计的时代,图形就是用油墨在纸上绘制出的所有线条,包括各种几何图形,以及由函数式、代数方程所描述的图形,这是人们习惯的图形概念。然而,随着计算机及计算机图形学技术的迅速发展,目前计算机图形处理的范围已远远超出了传统的图形概念,如今的图形已不同于绘制在图纸上的线条图形,它由点、线、面、体等几何要素和明暗、灰度(亮度)、色彩等非几何要素构成,它不仅包括具有形状的几何信息,还包括颜色、材质等非几何信息。例如,考虑一个红色的圆圈这样一幅图形,我们不仅要指出这个圆的数学方程,同时也要指出这个圆的颜色。因此,图形通常可用形状参数和属性参数来表示。形状参数描述其形状的数学方程的系数、线段的起始点及终止点等,它突出图形的数学描述,强调图形的“形”的方面,即几何概念;属性参数则包括明暗、灰度、色彩、线型等非几何属性,强调图形的“图”的要素。无论是早期图纸上的油墨线条,还是如今带有灰度、色彩及形状的图形,从性质上来看,图形都是真实物体或想象物体的可视化抽象显示与表示。不同的是,早期它是简单抽象的表示,而现在它是更加真实的抽象表示。图1.4所给的两个例图有力地证明了这一点。与图形紧密联系的另一个重要概念是图像。从广义上说,图像是对自然界事物的客观反映,它也是一个不断发展的概念。早期英文书籍中一般用picture代表图像,其原意是指各种图片、图画、照片及光学影像,是采用绘画或者拍照的方法获得的人、物、景的模拟。现在普遍采用image代表离散的数字图像,image的含义是“像”,是客观世界通过光学系统产生的视觉映像。计算机只能处理离散的数据,图像数据若需要用计算机进行存储、显示或处理,首先需要对其进行数字化。数字化即为对图像x、y方向的网格化和颜色、灰度信息的量化。因此,计算机图像又称为数字图像,它就是离散化后的图像数据。数字图像的每个基本单元叫做像素,每个像素具有灰度或颜色信息。因此,数字图像强调图像由哪些点组成,并具有灰度或颜色两方面信息。从本质上来说,图像是记录在介质上的客观对象的映像。对于计算机这种介质而言,它就是数字图像。图形与图像两个概念的差异如表1.1所示。表1.1 图形与图像的比较比 较 内 容图 形图 像基本元素矢量元素,如直线、圆和多边形等像素存储数据各个矢量的参数(属性)各个像素的灰度或颜色分量处理方式旋转、扭曲、拉伸等对比度增强、边缘检测等缩放结果不会失真,可以适应不同的分辨率放大时会失真,可看到颗粒状像素其他图形不是主观存在的,是我们根据客观事物而主观形成对客观事物的真实描述实例工程图纸照片应用领域计算机辅助设计图像处理工程图纸是图形,照片是图像,图形关心的是线条及其各种属性,图像关心的是各像素的灰度值,由此人们不难区分两者的差异。同时,两者之间有着紧密的联系。理想的图形只能在几何数学中存在,对计算机而言,所有的图形最终都要通过图像的方式显示或表示。对图形对象进行放大、旋转及平移等变换处理的最终结果也都需要通过图像来显示,这一过程在计算机图形学中称为光栅化或扫描转换。另一方面,图像带有大量信息,其中就包括图形信息。可以通过图像处理的一些技术方法提取图像中的图形信息并将其转换输出为图形,这一过程在图像处理中称为矢量化。如图1.5(a)所示为一个真实矿山钢井架的照片图像,图1.5(b)所示即为一个矿山钢井架三维图形某个环境角度下绘制的图像,在相应的软件中可以对其进行旋转、缩放及平移等操作,从而可以实现对井架三维模型进行全方位、不同角度的观察。对于真实井架或井架图片来说,这种方便的观察是很难达到的。同时,井架三维模型还可以忽略真实场景中的钢井架的一些无关信息,集中抽象地表示钢井架的空间形状信息,并可以把现实井架中的一些不可见部分,如斜撑基础、被封闭包围的立架清晰地显示出来。从这个角度来说,它比图1.5(a)更好地传达了井架的几何信息,正因为如此,从一定程度上来说,图形相对图像来说可以更好地传达物体的几何信息。 (a)井架照片图像 (b)井架三维图形绘制图像图1.5 矿山钢井架1.3.2 相关学科如前所述,计算机中的图像是用数码摄像机或图像扫描仪等手段将图像数字化后,将客观世界中原来存在的景物摄制成适合于计算机存储和处理的数字图像。那么,从狭义上来看,图像处理就是对图像进行增强、去噪、滤波以改善图像的视觉效果,突出感兴趣的内容,或者计算图像的统计特征。广义的图像处理不仅包含图像处理等内容,还包括模式识别,后者是对图像进行理解和分析,从图像中提取有意义的信息,如对图像矢量化,识别图像中的符号,提取图像中所表达的现象的特征,或从图像中提取所关注的景物的二维或三维几何信息的过程。可以说,狭义图像处理所处理的对象为图像数据本身,而模式识别所关注的则是图像所表达的信息特征。从某种意义上说,广义图像处理所包含的模式识别是计算机图形学的一个逆过程。计算几何是一门通过计算机技术求解几何问题的学科,如求任意多边形的面积和周长;任意多面体的体积和表面积;生成特定的几何图形,如最优三角形网等。计算几何所处理的几何数据可以使用计算机图形学技术进行显示,而某些计算机图形的生成和绘制过程需要借助于计算几何的算法来处理图形数据。与图形学相关的学科还有计算机视觉。计算机视觉是研究用计算机来模拟生物微观或宏观视觉功能的科学和技术,它模拟人对客观事物模式的识别过程,是从图像到特征数据、再到对象描述的处理过程。这几门学科之间的关系如图1.6所示。图1.6 图形学与相关学科近年来,随着多媒体、图像数据传输、三维数据场可视化以及虚拟现实等技术的迅速发展,以上几个学科的界限变得模糊起来。例如,在图像处理中需要用计算机图形学中的交互技术和手段输入图形、图像,以及控制相应的过程;在计算机视觉中,也经常采用图形生成技术来帮助合成对象的图像模型。它们之间的这种相互渗透,反过来也促进了学科本身的发展。1.4 计算机图形学的应用领域随着计算机图形学的发展,以及计算机软、硬件性能的提高和成本的下降,计算机图形学的应用领域也越来越广泛,下面是其一些主要的应用领域。1.4.1 计算机辅助设计与制造(CAD/CAM)CAD/CAM是计算机图形学最早也是最主要的一个应用领域,该领域至今仍是工业界最广泛、最活跃的一个领域。在这一领域中,计算机图形学被用来进行土建工程、机械结构和产品的设计,包括设计飞机、汽车、船舶的外形和发电厂、化工厂等的布局以及电子线路、电子器件的结构等。CAD着眼于绘制工程和产品相应结构的精确图形,然而其更常用的是对所设计的系统、产品和工程的相关图形进行交互设计和修改,经过反复的迭代设计,便可利用结果数据输出零件表、材料单、加工流程和工艺卡,或者数据加工代码的指令。在电子工业中,计算机图形学应用到集成电路、印刷电路板、电子线路和网络分析等方面的优势是十分明显的。一个复杂的大规模或超大规模集成电路板图根本不可能用手工设计和绘制,用计算机图形系统不仅能进行设计和画图,而且可以在较短的时间内完成,其结果可以直接送至后续工艺进行加工处理。在飞机工业中,美国波音飞机公司已用有关的CAD系统实现波音飞机的整体设计和模拟,其中包括飞机外形、内部零部件的安装和检验。随着计算机网络的发展,在网络环境下进行异地异构系统的协同设计已经成为CAD领域最热门的课题之一。现代产品设计已不再是一个设计领域内孤立的技术问题,而是综合了产品各个相关领域、相关过程、相关技术资源和相关组织形式的系统化工程。它要求设计团队在合理的组织结构下,采用群体工作方式来协调和综合设计者的专长,并且从设计一开始就考虑产品生命周期的全部因素,从而达到快速响应市场需求的目的。协同设计的出现使企业生产的时空观发生了根本的变化。异地设计、异地制造、异地装配已成为可能,从而为企业在市场竞争中赢得了宝贵的时间。使用CAD技术后,不仅提高了设计效率,缩短了设计周期,改善了设计质量,降低了设计成本,而且可以为后续工序的计算机辅助制造(CAM)建立起CAD数据库,使CAD/CAM联成一体,为生产自动化奠定基础。CAD/CAM是高新技术,是先进的生产力,它已经并将进一步给人类带来巨大的影响和利益。现在,CAD技术的水平已成为衡量一个国家工业技术水平的重要标志。图1.7给出了快速自动成型制造系统的流程图。(a)构思概念设计 (b)CAD建模 (c)快速自动成型 (d)产品生产制成图1.7 快速自动成型制造系统近年来,3D打印技术日渐成熟、普及。3D打印技术可被看作是快速成型制造技术的一个分支或延伸,其正式名称为“增材制造”,这非常恰当地描述了3D打印机的工作原理,如图1.8所示。“增材”是指3D打印通过将原材料沉积或黏合为材料层以构成三维实体的打印方法,“制造”是指3D打印机通过某些可测量、可重复、系统性的过程制造材料层。图1.8 3D打印工作原理一台3D打印机可以小到能放入一个手提袋,也可以大到像一辆微型面包车大小。3D打印机的造价可从几千元到几百万不等,它们共同的特点是按照计算机的指令将原材料按层堆积以形成三维物体。1.4.2 科学计算可视化(Visualization in Scientific Computing)Visualization一词,来自英文的Visual,原意是视觉的、形象的,中文译成“视觉化”可能更为贴切。事实上,将任何抽象的事务、过程变成图形图像的表示都可以称为可视化,如与计算机有关的可视化界面(Windows)、可视化编程(Visual C+)等。但作为学科术语,“可视化”一词正式出现于1987年2月美国国家科学基金会(National Science Foundation,NSF)召开的一个专题研讨会上。研讨会后发表的正式报告给出了科学计算可视化的定义、覆盖领域以及近期和长期研究的方向。这标志着“科学计算可视化”作为一个学科在国际范围内已经成熟。科学计算可视化的基本含义是运用计算机图形学或者一般图形学的原理和方法,将科学与工程计算等产生的大规模数据转换为图形、图像,以直观的形式表示出来。它涉及计算机图形学、图像处理、计算机视觉、计算机辅助设计及图形用户界面等多个研究领域,现今已成为计算机图形学研究的重要应用领域。可视化技术的出现有着深刻的历史背景,这就是社会的巨大需求和技术水平的进步。可视化技术由来已久,早在20世纪初期,人们就已经将图表和统计等原始的可视化技术应用于科学数据分析当中。随着人类社会的飞速发展,人们在科学研究和生产实践中,越来越多地获得大量科学数据。计算机的诞生和普及应用,使得人类社会进入了一个信息时代,它给人类社会提供了全新的科学计算和数据获取手段,使人类社会进入了一个“数据的海洋”,而人们进行科学研究的目的不仅仅是获取数据,而是要通过分析数据去探索自然规律。传统的纸、笔可视化技术与数据分析手段的低效性,已严重制约了科学技术的进步。随着计算机软、硬件性能的不断提高和计算机图形学的蓬勃发展,这些都促使人们将这一新技术应用于科学数据的可视化中。借助航天航空、遥感、加速器、CT(计算机断层扫描)、MRI(核磁共振)、计算机模拟(如核爆炸)等手段,人类获取数据的能力飞速提高,每天产生的数据已经不是大量,而是海量。一项统计表明,人类每天需要处理的数据量在20世纪80年代一般在百万字节数量级,20世纪90年代已经增加1000倍以上,而且增加的趋势还在加强。面对堆积如山的数据,及时解读并获取有用的信息成为人类面临的巨大挑战。传统的数字或字符形式的处理显然无法满足需要。可视化技术,在这个意义上就成了“科学技术之眼”, 它是科学发现和工程设计的工具。1.4.3 虚拟现实(Virtual Reality)虚拟现实是一项综合集成技术,涉及计算机图形学、人机交互技术、传感技术、人工智能等领域,它用计算机生成逼真的三维视、听、嗅等感觉,使人作为参与者通过适当装置,自然地对虚拟世界进行体验和交互。使用者进行位置移动时,计算机可以立即进行复杂的运算,将精确的3D世界影像传回以产生临场感。该技术集成了计算机图形(CG)技术、计算机仿真技术、人工智能、传感技术、显示技术、网络并行处理等技术的最新发展成果,是一种由计算机技术辅助生成的高技术模拟系统。概括地说,虚拟现实是人们通过计算机对复杂数据进行可视化操作与交互的一种全新方式,与传统的人机界面以及流行的视窗操作相比,虚拟现实在技术思想上有了质的飞跃。虚拟现实中的“现实”泛指在物理意义上或功能意义上存在于世界上的任何事物或环境,它可以是实际上可实现的,也可以是实际上难以实现的或根本无法实现的。而“虚拟”指用计算机生成的意思。因此,虚拟现实是指用计算机生成的一种特殊环境,人可以通过使用各种特殊装置将自己“投射”到这个环境中,并操作、控制环境,实现特殊的目的,即人是这种环境的主宰。从技术的角度来说,虚拟现实系统具有下面三个基本特征,即三个I:Immersion- Interaction-Imagination(沉浸-交互-构想),它强调了在虚拟系统中人的主导作用。从过去人只能从计算机系统的外部去观测处理的结果,到人能够沉浸到计算机系统所创建的环境中;从过去人只能通过键盘、鼠标与计算环境中的单维数字信息发生作用,到人能够用多种传感器与多维信息的环境发生交互作用;从过去人只能从以定量计算为主的结果中得到启发从而加深对事物的认识,到人有可能从定性和定量综合集成的环境中得到感知和理性的认识从而深化概念和萌发新意。总之,在未来的虚拟系统中,人们的目的是使这个由计算机及其他传感器所组成的信息处理系统去尽量“满足”人的需要,而不是强迫人去“凑合”使用那些不是很亲切的计算机系统。现在的大部分虚拟现实技术都是关于视觉体验的,这些视觉体验一般通过计算机屏幕、特殊显示设备或立体显示设备获得,不过一些仿真中还包含了其他的感觉处理,比如从音响和耳机中获得声音效果。在一些高级的触觉系统中还包含了触觉信息,也叫做力反馈,在医学和游戏领域有这样的应用。人们与虚拟环境交互要么通过使用标准装置(如一套键盘与鼠标),要么通过仿真装置(如一只有线手套),要么通过情景手臂或全方位踏车。虚拟环境可以和现实世界类似,如飞行仿真和作战训练;也可以和现实世界有明显差异,如虚拟现实游戏等。就目前的实际情况来说,还很难形成一个高逼真的虚拟现实环境,这主要是技术上的限制造成的,这些限制来自计算机处理能力、图像分辨率和通信带宽等。然而,随着时间的推移,处理器、图像和数据通信技术变得更加强大,并具有成本效益,这些限制将最终被克服。1.4.4 动画(Animation)随着计算机图形学技术的迅速发展,它在动画中的应用范围也不断扩大,计算机动画的内涵也在不断扩大。计算机动画发展到今天,主要分为两个阶段(或分为两大类),即计算机辅助动画和计算机生成动画。计算机辅助动画(computer-assisted animation),也叫“二维动画”,计算机生成动画(computer-generated animation),也叫“三维动画”。如图1.9所示是“变形”(Morpher)的图形处理方法示例。图1.9 基于特征的图像变形早期的计算机动画灵感来源于传统的卡通片。传统卡通片的制作过程一般首先要由动画设计师创作出人物、场景的关键画面,而两个关键画面之间的变化过程由其他动画工作者绘制。中间画的张数取决于人物动作变化的幅度及运动规律,要使动作过渡得平滑自然,且全部手工绘制,工作量是巨大的。20世纪60年代制作动画片大闹天宫时,几十位动画工作者花费了近两年的时间才完成。在计算机辅助动画阶段,一般在生成几幅被称做“关键帧”的画面后,由计算机对两幅关键帧进行插值生成若干“中间帧”,连续播放时两个关键帧就被有机地结合起来了,这样大大提高了动画制作的质量和效率。同时还可以利用造型工具创作出关键帧中形象逼真的演员、场景。计算机辅助生成动画的方法多种多样,图1.9所示的为基于特征的图像变形,还有二维形状混合、轴变形方法、三维自由形体变形(Free-form Deformation,FFD)等。20世纪90年代是计算机动画应用辉煌的10年。Disney公司每年都要出一部制作精美的卡通动画片,好莱坞的大片屡屡大量运用计算机生成各种各样精彩绝伦的动画特技效果,广告设计、电脑游戏也频频运用计算机动画。计算机动画也因这些商业应用的大力推动而有了极大的发展。近年来,人们普遍将注意力转向基于物理模型的计算机动画生成方法。这是一种崭新的方法,该方法大量运用弹性力学和流体力学的方程进行计算,力求使动画过程体现出最符合真实世界的运动规律。然而要真正达到真实运动的水平是很难的,比如人的行走或跑步是全身的各个关节协调的结果,要实现很自然的人走路动画,计算方程非常复杂,计算量极大。基于物理模型的计算机动画还有许多内容需要进一步研究。1.5 计算机图形学的发展1.5.1 计算机图形学的发展简史计算机图形学从诞生开始,经历了大概4个典型发展阶段:线框图形学、光栅图形学、真实感图形学及实时图形学。1计算机图形学的诞生(19501960年)1950年,第一台图形显示器作为美国麻省理工学院(MIT)旋风I号(Whirlwind I)计算机的附件诞生了。该显示器用一个类似于示波器的阴极射线管(CRT)来显示一些简单的图形。1958年,美国Calcomp公司由联机的数字记录仪发展成滚筒式绘图仪,GerBer公司把数控机床发展成为平板式绘图仪。在整个20世纪50年代,只有电子管计算机,且用机器语言编程,其主要应用于科学计算,为这些计算机配置的图形设备仅具有输出功能。那时,计算机图形学处于准备和酝酿时期,并被称为“被动式”图形学。到20世纪50年代末期,MIT的林肯实验室在“旋风”计算机上开发了SAGE空中防御体系,第一次使用了具有指挥和控制功能的CRT显示器,操作者可以用笔在屏幕上指出被确定的目标。与此同时,类似的技术在设计和生产过程中也陆续得到了应用,这预示着计算机图形学的诞生。2线框图形学(19601970年)1962年,MIT林肯实验室的Ivan E. Sutherland发表了一篇题为Sketchpad:一个人机交互通信的图形系统的博士论文,他在论文中首次使用了“计算机图形学”(Computer Graphics)这个术语,证明了计算机图形学是一个可行的、有用的研究领域,从而确定了计算机图形学作为一个崭新的科学分支的独立地位。他在论文中所提出的一些基本概念和技术,如交互技术、分层存储符号的数据结构等至今还在广泛应用。1964年,MIT的教授StevenA. Coons提出了被后人称为“超限插值”的新思想,其通过插值4条任意的边界曲线来构造曲面。同在20世纪60年代早期,法国雷诺汽车公司的工程师Pierre Bzier提出了一套被后人称为Bzier曲线、曲面的理论,其成功地被用于几何外形设计,并由此开发出了用于汽车外形设计的UNISURF系统。Coons方法和Bzier方法是计算机辅助几何设计(Computer Aided Geometry Design,CAGD)最早的开创性工作。这一阶段图形学的典型特点是利用直线、曲线等线条来表示物体对象。3光栅图形学(19701980年)20世纪70年代是计算机图形学发展过程中一个重要的历史时期。由于光栅显示器的产生,在20世纪60年代就已萌芽的光栅图形学算法迅速发展起来,区域填充、裁剪、消隐等基本图形概念及其相应算法纷纷诞生,图形学进入了第一个兴盛时期,并开始出现实用的CAD图形系统。这一阶段图形学的特点是充分利用区域填充来表现线框线条不能表现的复杂对象。同时,这一阶段因为通用、与设备无关的图形软件的发展,图形软件功能的标准化问题被提了出来。早在1974年,在美国国家标准化局(ANSI)举行的“与机器无关的图形技术”的工作会议上,提出了计算机图形的标准化和制定有关标准的基本规则。在此会议之后,美国计算机协会(ACM)专门成立了一个图形标准化委员会,开始制定有关标准。该委员会在总结以往多年图形软件工作经验的基础上,于1977年公布了“核心图形系统规范CGS”(Core Graphics System),并于1979年公布了修改后的第二版。1982年,国际标准化组织(ISO)通过了将原西德标准化组织定义设计的计算机图形核心系统GKS(Graphics Kernel System)作为计算机图形软件包的二维国际标准草案,并于1985年公布了GKS的正式文本ISO 9742。同时,ISO在1986年又公布了面向程序员的层次交互图形标准PHIGS(Programmers Hierarchical Interactive Graphics Standard)。该标准向程序员提供了控制图形设备的图形系统的接口。这些标准的制定,为计算机图形学的推广、应用和资源信息共享起了重要作用。4真实感图形学(19801990年)随着图形学的发展,图形表示的更高要求逐渐提上日程,真实感图形学阶段应运而生。事实上,真实感图形学自20世纪70年代就已经萌芽。1970年,Bouknight提出了第一个光反射模型,1971年Gourand提出“漫反射模型插值”的思想,其被称为Gourand明暗处理。1975年,Phong提出了著名的简单光照模型Phong模型。这些可以算是真实感图形学最早的开创性工作。1980年,Whitted提出了一个光透视模型Whitted模型,并第一次给出光线跟踪算法的范例,实现Whitted模型。1984年,美国Cornell大学和日本广岛大学的学者分别将热辐射工程中的辐射度方法引入到计算机图形学中,用辐射度方法成功地模拟了理想漫反射表面间的多重漫反射效果。光线跟踪算法和辐射度算法的提出,标志着真实感图形的显示算法已逐渐成熟。从20世纪80年代中期以来,超大规模集成电路的发展,为图形学的飞速发展奠定了物质基础。计算机运算能力的提高、图形处理速度的加快,使得图形学的各个研究方向得到充分发展。现今图形学已广泛应用于动画、科学计算可视化、CAD/CAM以及影视娱乐等各个领域。5实时图形学(1990年至今)前面已经简要介绍了各种光照明模型及它们在真实感图形学中的一些应用方法,它们都是用数学模型来表示真实世界中的物理模型的,其可以很好地模拟出现实世界中的复杂场景,所生成的真实感图像可以给人高度逼真的感觉。但是,用这些模型生成一幅真实感图像需要较长的时间,尤其对于比较复杂的场景,绘制的时间甚至可以达到数个小时。尽管现在的计算机硬件水平有了很大的提高,而且关于这些真实感图形学算法的研究也有了很大的发展,但是真实感图形的绘制速度仍然不能满足某些需要实时图形显示的任务要求。例如,在某些需要动态模拟、实时交互的科学计算可视化以及虚拟现实系统中,对于图形显示的实时性要求很高,这时就必须采用实时图形学技术。实时真实感图形学技术是在当前图形算法和硬件条件的限制下提出的在一定的时间内完成真实感图形图像绘制的技术。一般来说,它是通过损失一定的图形质量来达到实时绘制真实感图像的目的的,就目前的技术而言,主要是通过降低显示三维场景模型的复杂度来实现,这种技术被称为层次细节(Level of Detail,LOD)显示和简化技术,是当前大多数商业实时真实感图形生成系统中所采用的技术。在最近的几年里,又出现了一种全新思想的真实感图像生成技术基于图像的绘制技术(Image Based Rendering),它利用已有的图像来生成不同视点下的场景真实感图像,生成图像的速度和质量都是以前的技术所不能比拟的,具有很高的应用前景。实时真实感图形学技术是当前计算机图形学领域中的研究热点,它还处在研究阶段,还没有形成非常系统的理论知识,有兴趣的读者可以参阅更深入的相关文献。1.5.2 计算机图形学的发展趋势计算机图形学经过将近60年的发展,已进入了较为成熟的发展期。由于计算机图形学在计算机辅助设计与加工、影视动漫、军事仿真、医学图像处理、气象、地质、财经和电磁等的科学可视化领域的成功应用,特别是在迅猛发展的动漫产业中的应用,带来了可观的经济效益。另一方面,由于这些领域应用的推动,也给计算机图形学的发展提供了新的发展机遇与挑战。从计算机图形学学科发展来看,有以下几个发展趋势。(1)GPU(Graphic Processing Unit)计算发展迅猛基于GPU的图形硬件技术得以迅速发展,现在已经能在一个GPU芯片上采用28nm工艺集成上千个采用SIMD(单指令多数据流)架构的通用计算核心。主流图形硬件商nVidia和AMD以及Intel已推出基于MIMD(多指令、多数据流)计算核心的GPU芯片用于图形加速绘制,以支持DirectX 11以及OpenGL 4.3图形标准。最新的图形学研究表明,采用GPU技术可以充分利用计算指令和数据的并行性,目前已可在单个工作站上实现百倍于基于CPU方法的渲染速度。近年来,GPU正在以大大超过摩尔定律的速度高速发展,这极大地提高了计算机图形处理的速度和质量,它不但促进了图像处理、虚拟现实、计算机仿真等相关应用领域的快速发展,同时也为人们利用GPU进行图形处理以外的通用计算提供了良好的运行平台。图形处理器技术的迅速发展带来的并不只是速度的提高,还由此产生了很多全新的图形硬件技术,使GPU具有流处理、高密集并行运算、可编程流水线等特性,从而极大地拓展了GPU的处理能力和应用范围。正是由于GPU具有高效的并行性和灵活的可编程性等特点,才使越来越多的研究人员和商业组织开始利用GPU完成一些非图形绘制方面的计算,并开创了一个新的研究领域。基于GPU的通用计算(General-Purpose computation on GPU,GPGPU),其主要研究内容是如何利用GPU在图形处理之外的其他领域进行更为广泛的科学计算。目前其已成功应用于运动规划、代数运算、优化计算、偏微分方程、数值求解、流体模拟、数据库应用、频谱分析等非图形应用领域,甚至包括智能信息处理系统和数据挖掘工具等商业化应用。同时,也产生了一些针对GPU开发的通用计算工具包,它们能够基于GPU平台对FFT、BLAS、排序及线性方程组求解等科学计算进行优化实现。(2)研究和谐自然的三维模型建模方法三维模型建模方法是计算机图形学的重要基础,是生成精美的三维场景和逼真动态效果的前提。然而,传统的三维模型方法,由于其主要思想方法来源于CAD中基于参数式调整的形状构造方法,建模效率低而学习门槛高,不易于普及和让非专业用户使用。而随着计算机图形技术的普及和发展,各类用户都提出了高效的三维建模需求,因此研究和谐自然的三维建模方法是发展的一个重要趋势。采用合适的交互手段,来进行三维模型的快速构造,特别是在概念设计和建筑设计领域中的应用已引起了国际同行的广泛关注。由于笔式或草图交互方式非常符合人类原有日常生活中的思考习惯,因此其是研究的重点问题。其难点是如何根据具体的应用领域,与视觉方法相融合,设计合理的交互语汇以及对应的过程式“识别构造”方法。与此相关的一个问题是基于规则的过程式建模方法。由于Google Earth等数字地图信息系统的广泛应用,人们对于地图之上的建筑物信息等存在迫切需求。为此,研究者希望通过激光扫描或者视频等获取方式获得相关信息后,能迅速地重建出相关三维模型信息。然而,单纯的重建方式存在精度低、稳定性差和运算量大等不足,远不能满足实际的需求。因此,最近的研究中,倾向于采用与基于规则的过程式建模方法相结合来尝试高效地构造出三维建筑模型以及相关的树木等结构化场景。三维建模方法中的另一主要问题是研究合适的曲面表达方法,以适于各类图形学的应用。在CAD中的主流方法是采用NURBS(非均匀有理B样条)方法,然而此类方法无法很好地解决非正规情况下的曲面拼合,不太适合于图形学。为此,细分曲面方法,作为一种离散迭代的曲面构造方法,由于其构造过程朴素简单以及实现容易,成为一个方兴未艾的研究热点,而且极有可能逐步取代NURBS方法。其需要解决的主要问题有: 奇异点处的C连续性的有效构造方法; 与GPU图形硬件相结合的曲面处理方法。(3)利用日益增长的计算性能,实现具有高度物理真实的动态仿真高度物理真实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论