1.计算机图形学概述
一、什么是计算机图形学?
计算机图形学就是研究如何在计算机中表示图形以及利用计算机进行图形的计算、处理和显示的相关原理与算法。
IEEE定义:Computer graphics is the art or science of producing graphical images with the aid of computer
二、计算机图形学研究的对象时什么?
如何在计算机中表示图形,以及利用计算机进行图形的计算,处理和显示的相关原理与算法,构成了计算机图形学的主要研究内容。
图形硬件:研究图形要有基本的支撑硬件,包括图形加速卡,显示器、图形输出设备等。
在计算机上生成一幅表示物体的图形,有三个步骤:
1.造型技术
在计算机中建立所要生成图形的物理的模型,即给出表示该物体的几何数据和拓扑关系。
2.光照模型
用一些简单的数学模型来近似,代替那些物理学模型,为模拟物体表面的光照物理现象的数学模型叫光照模型。
3.绘制(渲染)技术
选择适当的绘制算法把场景画出来,就是讲模型真实性的显示在屏幕上。
计算机屏幕是有像素构成,像素作为构成图形的基本单位。为了在屏幕上显示一幅图形,就必须研究在那些像素上生成图形,就必须有一套针对光栅显示器生成图形的算法。
围绕着生成、表示物体图形的准确性--》真实性--》实时性,算法可发至分为以下几类:
基本图形元素生成算法 自然景物的生成
图形的变换和剪裁 计算机动画技术
自由曲线和曲面生成算法 虚拟现实技术
几何造型技术 交互式三维图形处理
真实感图形的生成算法 热点问题探讨
三、计算机图形学发展简史
五十年代:
1950年,第一台图形显示器作为美国麻省理工学院 (MIT)旋风I号(Whirlwind I)计算机的附件诞生1958年,美国Calcomp公司由联机的数字记录仪发展成 滚筒式绘图仪50年代末期,MIT的林肯实验室在“旋风”计算机上开发SAGE空中防御体系。
六十年代:
1963年,MIT林肯实验室的I.E.Sutherland发表了一篇题为《Sketchpad: "A Man Machine Graphical Communication System”》 “Sketchpad:一个人机交互通信的图形系统”的博士论文。
这篇博士论文提出了图形学一些最基本的概念、原理和想法,第一次提出了graphics这个词。Sutherland被公认为开创交互式图形技术的奠基人,被称为“计算机图形学” 之父”。并于1988年获“图灵奖”。
1962年,雷诺汽车公司的工程师Pierre Bézier 提出 Bézier曲线、曲面的理论,而成为CAGD的先驱。
1964年MIT的教授Steven A. Coons提出了超限插值的新思想,通过插值四条任意的边界曲线来构造曲面。
七十年代:
光栅显示器出现了。光栅显示器屏幕是由像素组成的。
在这样一个基本的前提下,必须发展大量、配套的图形算 法来帮助在光栅显示器上显示、处理图形。在这个期间, 很多大量的算法就诞生了。如区域填充、裁剪、消隐等基本图形概念、及其相应算法。
图形软件标准化:大量图形系统出现以后,计算机本身也有配置问题。不同厂商生产的显卡要兼容,这就提出了图形标 准化问题。
70年代对图形学来说是个非常了不起的年代,大量的概念、 算法出现了,真实感图形(像照片一样逼真的图形学)和 几何造型技术这个时候也开始出现了。
1975年,Phong提出了著名的简单光照模型- Phong模型 (标志着真实感图形的出现和实用化,到现在为止, Phong模型还被大量的采用)。
八十年代:
Phong模型只能刻画物体表面的明暗,但不能模拟透明 效果,比如玻璃杯、窗户做不出来。
1980年Whitted提出了一个光透视模型-Whitted模型。 第一次提出了光线跟踪算法的范例。光线跟踪是图形学当中最重要、最著名的算法之一。
1984年,美国Cornell大学的Greenberg和日本广岛大学的 Nishita分别将热辐射工程中的辐射度方法引入到计算机 图形学中,实现了另一种三维真实感图形绘制技术。
和倾向于只在一个表面上模拟一次光的反射的直接光照算 法(例如光线跟踪)不同,像辐射度算法这样的全局光照算法模拟光在一个场景里的多次反射,通常会导致更柔和更自然的影子和反射。
九十年代:
80年代真实感图形基本上成熟了。图形硬件和各个分 支均在这个时期飞速发展。 到了90年代,图像学就 开始了大量的应用。
四、应用领域
1、人机交互和图形用户界面 2、计算机辅助设计与制造(CAD/CAM)
3、真实感图形绘制与自然景物仿真 4、计算机游戏、电影、动漫
5、计算机艺术 四、计算机图形学的应用领域 6、计算机仿真
7、科学计算可视化 8、虚拟现实
9、地理信息系统(GIS) 10、农业领域的应用
五、计算机图形处理系统的构造
一个交互式计算机图形 系统应具有计算 、存储 、对话 、输入 和输出 等 5个方面的功能。
(1)图形软件
图形软件又分为图形应用数据结构、图形应用软件和图形、支撑软件三部分:
图形应用数据结构:实际上对应一组图形数据文件,其中 存放着欲生成的图形对象的全部描述信息。
图形应用软件:是解决某种应用问题的图形软件,是 图形系统中的核心部分,包括了各种图形生成和处理 技术,是图形技术在各种不同应用中的抽象。如 pohotshop、3Dmax等。
图形支撑软件:大多数图形应用程序是建立在一定的 图形支撑软件上。图形支撑软件需具有规范接口。
图形软件标准:
由国际标准化组织ISO讨论和批准的通用的、与设备无关 的图形包:
GKS (Graphics Kernel System) (第一个官方标准,1977)
PHIGS (Programmer's Hierarchical Interactive Graphics System) (1986年公布的计算机图形系统标准)
事实上的标准:DirectX (MS),OpenGL(SGI),Adobe公司Postscript
(2)图形硬件
图形硬件包括图形计算机系统和图形设备两类。 图形计算机系统的硬件性能与一般计算机系统相比,要求主机性能更高、速度更快、存储容量更 大,外设种类更齐全。