1、2019/10/12,1,计算机图形学是计算机技术、电视显示技术和图形信息处理技术相结合的一门学科。它研究有关对象的图形的计算机表示、生成、处理、视觉真实性实现的基本原理和基本技术。它是计算机领域中发展最迅速的学科之一,已广泛用于科学研究、工业和建筑设计、医学研究、文化教育、地理地质,益智娱乐、商业广告和军事等领域,2019/10/12,2,图形信息与文字信息相比具有直观、形象、含义丰富等优点,有着广泛的应用前景。但是图形的生成、表示、处理、存储和管理却比文字信息复杂得多。,2019/10/12,3,2019/10/12,4,计算机图形学(Computer Graphics)是研究怎样用计算机
2、生成、处理和显示图形的一门新兴学科. 国际标准化组织(ISO)定义为:计算机图形学是研究通过计算机将数据转换为图形,并在专门显示设备上显示的原理、方法和技术的学科。,2019/10/12,5,计算机图形学的研究内容,图形:计算机图形学的研究对象 能在人的视觉系统中产生视觉印象的客观对象 包括自然景物、拍摄到的图片、用数学方法描述的图形等等 构成图形的要素 几何要素:刻画对象的轮廓、形状等 非几何要素:刻画对象的颜色、材质等,结束,2019/10/12,6,计算机中表示图形的方法 点阵表示 枚举出图形中所有的点(强调图形由点构成) 简称为图像(数字图像) 参数表示 由图形的形状参数(方程或分析表
3、达式的系数,线段的端点坐标等)+属性参数(颜色、线型等)来表示图形 简称为图形,2019/10/12,7,计算机图形学的研究内容 图形的输入 如何开发利用图形输入设备及软件将图形输入到计算机中 去,以便作各种处理。 图形的处理 包括对图形进行变换(几何变换,投影变换)和运算(集合运算),着色,形变等 图形的输出如何将图形特定的表示形式转换成图形输出系统便于接受的表示形式,并将图形在显示屏或打印机等输出设备上输出。,2019/10/12,8,计算机图形学的研究内容,.与相关学科的关系,数字图像,数据模型,图像生成(计算机图形学),模型(特征)提取 (计算机视觉,模式识别),模型变换 (计算几何)
4、,图像变换 (图像处理),.发展特点: 交叉、界线模糊、相互渗透,DIGITAL IMAGING:,2019/10/12,9,用计算机生成、处理和显示图形的学科;由几何数据和几何模型,利用计算机进行显示并存储,并可以进行修改、完善以及有关操作的过程.,计算机图形学,2019/10/12,10,计算几何,研究几何模型和数据处理的学科,讨论几何形体的计算机表示、分析和综合,研究如何方便灵活、有效地建立几何形体的数学模型以及在计算机中更好地存贮和管理这些模型数据;,2019/10/12,11,2019/10/12,11,数字图象处理是将图像信号转换为数字格式并利用计算机进行处理的过程:图像获取、图像
5、变换、图像增强、图像复原、图像编码、图像分析、图像识别、图像理解。与计算机图形学的概念容易混淆的是图像处理。计算机图形学的基本含义是使用计算机通过算法和程序在显示设备上构造出图形来。与此相反,图像处理是将客观世界中原来存在的物体的影像处理成新的数字化图像的相关技术,并研究如何从图像中提取二维或三维物体的模型。它所研究的是计算机图形学的逆过程。,2019/10/12,12,计算机视觉和模式识别:对所输入的图象进行分析和识别,找出其中蕴涵的内在联系或抽象模型;如邮政分检设备、地形地貌识别等;,图形学的逆过程,分析和识别输入的图像,并从中提取二维或三维的数据模型(特征)。手写体识别、机器视觉,201
6、9/10/12,13,计算机图形学的研究内容涉及到用计算机对图形数据进行处理的硬件和软件两方面的技术,主要是围绕着生成、表示物体的图形图像的准确性、真实性和实时性的基础算法,大致可分为以下几类:,2019/10/12,14,(1)基于图形设备的基本图形元素的生成算法,如用光栅图形显示器生成直线、圆弧、二次曲线、封闭边界内的图案填充等。,(4)三维几何造型技术,对基本体素的定义、输入及它们之间的布尔运算方法。,(5)三维形体的实时显示,包括投影变换、坐标变换等。,(2)图形元素的几何变换,即对图形的平移、放大和缩小、旋转、镜像等操作。,(3)样条曲线和样条曲面的插值、拟合、拼接、光顺、整体和局部
7、修改等。,2019/10/12,15,(8)科学计算可视化和三维数据场的可视化,将科学计算中大量难以理解的数据通过计算机图形显示出来,从而加深人们对科学过程的理解。例如有限元分析的结果等;应力场、磁场的分布等;各种复杂的运动学和动力学问题的图形仿真等。,(7)山、水、花、草、烟、云等自然景物的模拟生成算法等。,(6)真实感图形的生成算法,包括三维图形的消隐、光照、色彩、阴影、纹理及彩色浓淡图的生成算法。,2019/10/12,16,图形软件发展及软件标准形成,三种类型的计算机图形软件系统:(1)用某种语言写成的子程序包GKS (Graphics Kernel System) PHIGS(Pro
8、grammersHerarchical Iuteractive Graphics system ) 便于移植和推广、但执行速度相对较慢,效率低(2)扩充计算机语言,使其具有图形生成和处理的功能如:Turbo Pascal、Turbo C,AutoLisp, VC等。 简练、紧凑、执行速度快,但不可移植 (3)专用图形系统:效率高,但系统开发量大,可移植性差。(4) MATLAB, Math Works 公司,一种交互式面向对象的程序设计语言,工程计算领域中重要应用软件.,2019/10/12,17,通用的、与设备无关的图形包,图形标准 CGS (Core Graphics System, 核心
9、图形系统, 1977年ACM 提出)GKS (Graphics Kernel System,) (第一个官方标准,ISO,1977) PHIGS(Programmers Herarchical Iuteractive Graphics system,程序员 层次交互式图形系统) 一些非官方图形软件,广泛应用于工业界,成为事实上的标准 DirectX (MS) Xlib(X-Window系统) OpenGL(SGI) Adobe公司Postscript开放式、高效率的发展趋势,2019/10/12,18,图形标准的层次关系,2019/10/12,19,Virtual Reality(虚拟现实、灵
10、境),Virtual Reality 或称虚拟环境(Virtual Environment) 是用计算机技术来生成一个 逼真的三维视觉、听觉、触觉 或嗅觉等感觉世界,让用户可 以从自己的视点出发,利用自 然的技能和某些设备对这一生 成的虚拟世界客体进行浏览和 交互考察。 输入输出设备,2019/10/12,20,规则形体:欧氏几何方法,造型技术,2019/10/12,21,2019/10/12,21,不规则形体: 分形几何方法 粒子系统 纹理映射 实体造型 基于物理的造型 基于图像的造型,2019/10/12,22,真实感图形绘制技术 光照明模型 绘制算法 快速算法 基于图像的绘制,2019/
11、10/12,23,图形绘制管线(Pipeline) 图形绘制管线的主要功能是在给定虚拟相机,三维物体,光源,照明模式,以及纹理等条件,如何生成或绘制一幅二维图象。它是实时绘制的核心。,应用程序,几何,光栅,绘制管线的基本结构,应用程序将需要绘制的几何体(如点、线、矩形等)输入到几何阶段,光栅阶段把几何阶段的对象表示成帧缓存的象素.,2019/10/12,24,模型与视点变换,光照,投影,裁剪,屏幕 映射,几何阶段的基本结构,2019/10/12,25,计算机图形学的相关开发技术 OpenGL (Open Graphics Lib)三维图形处理库、工业标准,三维设计软件 ACISSpatial
12、Technology 公司,三维几何引擎,三维造型和显示 DirectX微软,图形应用程序接口(API),三维游戏 Java3DSUN 公司定义的3D显示接口,网上三维显示 VRML标记语言,网上虚拟现实,2019/10/12,26,OPenGL 科学可视化、计算机动画和虚拟现实是近年来计算机图形学领域的三大热门话题,而这三大热门话题的技术核心都是三维真实感图形显示。当前三维图形显示在军事、航空、航天、地质、游戏、艺术造型等领域都有着广泛的应用。OpenGL是目前比较完善的三维图形标准,它是由SGI公司推出,现在被Microsoft、DEC、HP、SUN等在计算机领域中占主导地位的 大公司所采
13、用,作为三维图形的标准。随着PC性能的不断提高,3D图形图像开发已经不再是图形I作站的专利,尤其是微软在主流操作系统Wndows中全面支持OpenGL以来,使在PC机上使用OpenGL开发高性能的图形图像产品成为一件比较简单的事情,这大大地促进了OpenGL的发展。,2019/10/12,27,OpenGL(Open Graphic Library)开放式图形库,是一个3D图形和模型库。它由Silicon Graphics公司开发,前身是由SGI公司为其图形工作站开发的IRIS GL。OpenGL是业界最为流行也是支持最广泛的一个底层3D技术,几乎所有的显卡厂商都在底层实现了对OpenGL的支
14、持和优化。OpenGL同时也定义了一系列接口用于编程实现三维应用程序,有运行效率高、稳定性强、跨平台等特点,可运行在几乎所有平台,包括Unix、Windows、Linux、OS/2,也可被大多数编程语言调用,如C、 C+ Builder、 VB、VC、 Delphi等。OpenGL并不是编程语言,它更像一个C运行时函数库,提供了一些预包装的功能,是供那些专门设计用来(并进行了优化)显示和操作3D图形的计算机硬件所使用的。OpenGL具有多种用途,从CAD工程到建筑应用程序、到电影中都能用来实现计算机生成的建模程序。OpenGL被设计成独立于硬件,独立于窗口系统的,在运行各种操作系统的各种计算机
15、上都可用,并能在网络环境下以客户/服务器模式工作,是专业图形处理、科学计算等高端应用领域的标准图形库。,2019/10/12,28,OPenGL函数的分类OPenGL是一个与图形硬件无关的应用程序开发接口(API),它包含了近200个函数,使用这些函数可以开发出与现实世界相类似的三维景象。它的函数可分为4类:核心函数、实用函数、辅助函数和专用函数。,2019/10/12,29,核心函数在OpenGL中有115个核心函数,这些函数是最基本的,都以gl开头,它们可以在任何OpenGL平台中使用。用于绘制各种图形、进行场景变换、产生光照效果、进行纹理映射等工作。实用函数核心函数比核心函数高一层次,它
16、们将核心函数进行组织和封装,提供比较简单的函数接口和用法,共有43个,以glu为前缀,可在任何OpenGL平台中使用。辅助函数是一些特例函数,共有31个,以aux为前缀,不能在任何OpenGL平台中使用,一般用于在Windows应用程序中进行窗口管理和输入输出处理以及绘制一些简单的三维图形。,2019/10/12,30,专用函数由6个以wgl为前缀的函数和5个Win32API函数组成,主要用于在Windows环境中使用OpenGL开发应用程序。6个以wgl为前缀的函数用于连接Windows和OpenGL,初始化窗口,使能够在窗口中使用OpenGL。5个Win32API函数用于处理象素存储格式和
17、双缓 存之间的交换。,2019/10/12,31,DirectX 是一组低级“应用程序编程接口(API)”,可以为 Windows 程序提供高性能的硬件加速多媒体支持。DirectX 能增强计算机的多媒体功能,从而使程序可提供逼真的三维图形与令人如醉如痴的音乐与声音效果。DirectX 使程序能够轻松确定计算机的硬件性能,然后设置与之匹配的程序参数。该程序使得多媒体软件程序能够在基于 Windows 的具有 DirectX 兼容硬件与驱动程序的计算机上运行,同时可确保多媒体程序能够充分利用高性能硬件。DirectX 包含一组 API,通过它能访问高性能硬件的高级功能,如三维图形加速芯片和声卡。这些 API 控制低级功能(其中包括2D图形加速)、支持输入设备(如游戏杆、键盘和鼠标)并控制着混音及声音输出,