《计算机图形学与图形处理技术》由会员分享,可在线阅读,更多相关《计算机图形学与图形处理技术(56页珍藏版)》请在金锄头文库上搜索。
1、第第7 7章计算机图形学与图形处理技术章计算机图形学与图形处理技术 7.1 计算机图形学概论 u7.1.1 计算机图形学研究的主要内容图形的应用已经有数千年的历史。早在两千多年前,就出图形的应用已经有数千年的历史。早在两千多年前,就出现了欧几里德几何,后来又出现立体几何、解析几何和样现了欧几里德几何,后来又出现立体几何、解析几何和样条几何,广泛用于数学和建筑学,对科学和教育事业起了条几何,广泛用于数学和建筑学,对科学和教育事业起了很大作用。很大作用。 如何在计算机中表示图形、以及利用计算机进行图形的计如何在计算机中表示图形、以及利用计算机进行图形的计算、处理和显示的相关原理与算法,构成了计算机
2、图形学算、处理和显示的相关原理与算法,构成了计算机图形学的主要研究内容。图形通常由点、线、面、体等几何元素的主要研究内容。图形通常由点、线、面、体等几何元素和灰度、色彩、线型、线宽等非几何属性组成。从处理技和灰度、色彩、线型、线宽等非几何属性组成。从处理技术上来看,图形主要分为两类,一类是基于线条信息表示术上来看,图形主要分为两类,一类是基于线条信息表示的,用于刻画物体形状的点、线、面、体等几何要素。如的,用于刻画物体形状的点、线、面、体等几何要素。如工程图、等高线地图、曲面的线框图等,另一类是反映物工程图、等高线地图、曲面的线框图等,另一类是反映物体表面属性或材质的灰度颜色等非几何要素。它侧
3、重于根体表面属性或材质的灰度颜色等非几何要素。它侧重于根据给定的物体描述模型、光照及摄像机来生成真实感图形。据给定的物体描述模型、光照及摄像机来生成真实感图形。 计算机图形学的研究内容非常广泛,如图形硬件、计算机图形学的研究内容非常广泛,如图形硬件、图形标准、图形交互技术、光栅图形生成算法、图形标准、图形交互技术、光栅图形生成算法、曲线曲面造型、实体造型、真实感图形计算与显曲线曲面造型、实体造型、真实感图形计算与显示算法,以及科学计算可视化、计算机动画、自示算法,以及科学计算可视化、计算机动画、自然景物仿真、虚拟现实等。然景物仿真、虚拟现实等。u7.1.2 计算机图形处理的基本概念计算机图形处
4、理是指利用由计算机图形处理是指利用由概念或数学描述所表概念或数学描述所表示物体的示物体的几何数据或几何模型,用计算机进行显几何数据或几何模型,用计算机进行显示并存储,并可以进行修改、完善以及有关操作示并存储,并可以进行修改、完善以及有关操作的过程。图形处理包括的主要内容有的过程。图形处理包括的主要内容有: : 几何变换,如平移、旋转、缩放、透视和投影等几何变换,如平移、旋转、缩放、透视和投影等 曲线和曲面拟合曲线和曲面拟合 建模或造型建模或造型 隐线隐面消除隐线隐面消除 阴暗处理阴暗处理 纹理产生纹理产生 着色着色 图形处理技术主要应用领域在计算机辅助设计和制造、图形处理技术主要应用领域在计算
5、机辅助设计和制造、计算机教育、计算机艺术、计算机模拟、计算机可视化、计算机教育、计算机艺术、计算机模拟、计算机可视化、计算机动画和虚拟现实。计算机动画和虚拟现实。CADCAD是图形学的主要应用领域之是图形学的主要应用领域之一。一。 u7.1.3 计算机图形系统的组成与功能计算机图形系统的组成计算机图形系统的组成计算机图形系统应由硬件设备和相应的图形软件系统计算机图形系统应由硬件设备和相应的图形软件系统两部分组成。两部分组成。 高质量的计算机图形离不开高性能的计算机图形硬件高质量的计算机图形离不开高性能的计算机图形硬件设备。例如,国际上广泛使用的设备。例如,国际上广泛使用的Sun SPARCSu
6、n SPARC系列工作站、系列工作站、HPHP系列工作站,便是性能优异的专用图形系统。系列工作站,便是性能优异的专用图形系统。 图形系统硬件通常由图形处理器,图形输出设备和输图形系统硬件通常由图形处理器,图形输出设备和输入设备构成。图形处理器是图形系统结构的重要部件,入设备构成。图形处理器是图形系统结构的重要部件,是连接计算机和显示终端的纽带。图形处理器具有存是连接计算机和显示终端的纽带。图形处理器具有存储和处理图形的功能,而且能完成大部分图形函数计储和处理图形的功能,而且能完成大部分图形函数计算,这样就大大减轻了算,这样就大大减轻了CPUCPU的负担,提高了系统显示能的负担,提高了系统显示能
7、力和显示速度。力和显示速度。 最常用的图形输入设备就是基本的计算机输入设最常用的图形输入设备就是基本的计算机输入设备键盘和鼠标。人们一般通过一些图形软件由键备键盘和鼠标。人们一般通过一些图形软件由键盘和鼠标直接在屏幕上定位和输入图形,如人们盘和鼠标直接在屏幕上定位和输入图形,如人们常用的常用的CADCAD系统就是用鼠标和键盘命令生产各种工系统就是用鼠标和键盘命令生产各种工程图的。此外还有跟踪球、空间球、数据手套、程图的。此外还有跟踪球、空间球、数据手套、光笔、触摸屏等输入设备。跟踪球和空间球都是光笔、触摸屏等输入设备。跟踪球和空间球都是根据球在不同方向受到的推或拉的压力来实现定根据球在不同方向
8、受到的推或拉的压力来实现定位和选择。数据手套则是通过传感器和天线来获位和选择。数据手套则是通过传感器和天线来获得和发送手指的位置和方向的信息。这几种输入得和发送手指的位置和方向的信息。这几种输入设备在虚拟现实场景的构造和漫游中特别有用。设备在虚拟现实场景的构造和漫游中特别有用。光笔是一种检测光的装置,它直接在屏幕上操作,光笔是一种检测光的装置,它直接在屏幕上操作,拾取位置。拾取位置。 随着计算机系统、图形输入随着计算机系统、图形输入/ /输出设备的发展,计算机图输出设备的发展,计算机图形软件也不断更新和完善,目前发展了许多支持计算机图形软件也不断更新和完善,目前发展了许多支持计算机图形技术的软
9、件系统。如各种子程序包、图形函数库、甚至形技术的软件系统。如各种子程序包、图形函数库、甚至是专用的图形系统。随着图形系统的发展,提出了图形软是专用的图形系统。随着图形系统的发展,提出了图形软件标准化的问题。为实现程序的可移植性,开发出了面向件标准化的问题。为实现程序的可移植性,开发出了面向设备的驱动程序包或面向用户的图形生成及管理程序包。设备的驱动程序包或面向用户的图形生成及管理程序包。图图形系形系统统的的设计设计和研制是和研制是计计算机科学和工程算机科学和工程领领域的重要内域的重要内容。作容。作为为一个一个图图形系形系统统,至少,至少应应具有具有计计算、存算、存储储、输输入、入、输输出、出、
10、对话对话等五个方面的基本功能。等五个方面的基本功能。 计算功能计算功能能能实现设计过实现设计过程中所需的程中所需的计计算、算、变换变换、分析等功能,、分析等功能,如:如:图图元生成、坐元生成、坐标变换标变换等;等; 存存储储功能功能 能存放(形体的)几何数据、形体能存放(形体的)几何数据、形体间间的关系,并可的关系,并可对对数据数据实时检实时检索、索、维护维护; 输入功能输入功能 可输入形体的几何参数及各种命令。可输入形体的几何参数及各种命令。 输出功能输出功能 可显示过程中当前状态,修改后的结果,并可硬可显示过程中当前状态,修改后的结果,并可硬拷贝及输出。拷贝及输出。 对话功能对话功能 可通
11、过图形显示器及其他人可通过图形显示器及其他人机交互设备直接机交互设备直接进行人进行人机通信。用户通过显示器观察设计结机通信。用户通过显示器观察设计结果和图形,用选择拾取设备,对不满意部分作出果和图形,用选择拾取设备,对不满意部分作出修改。系统还可追溯以前的工作步骤,对用户操修改。系统还可追溯以前的工作步骤,对用户操作执行的错误给予必要的提示和跟踪。作执行的错误给予必要的提示和跟踪。以上五种功能是一个以上五种功能是一个图图形系形系统统所具所具备备的最基本功的最基本功能,至于每种功能中有哪些能力,能,至于每种功能中有哪些能力,则则因不同系因不同系统统而异。而异。 7.2 计算机图形学的发展与应用u
12、7.2.1 计算机图形学的发展计算机图形学的研究最早起源于美国麻省理工学院。从计算机图形学的研究最早起源于美国麻省理工学院。从2020世纪世纪5050年代初到年代初到6060年代中期,麻省理工学院(年代中期,麻省理工学院(MITMIT)积极积极从事现代计算机辅助设计制造技术的开拓性研究。计算从事现代计算机辅助设计制造技术的开拓性研究。计算机图形机图形( (Computer Graphics)Computer Graphics)这个术语是在这个术语是在19621962年美国麻年美国麻省理工学院林肯实验室的省理工学院林肯实验室的Ivan E.sutherlandIvan E.sutherland发
13、表的一篇发表的一篇题为题为“Sketchpad:Sketchpad:一个人一机通信的图形系统一个人一机通信的图形系统”的博士论的博士论文中首次使用。它证明了交互式计算机图形学是一个可行文中首次使用。它证明了交互式计算机图形学是一个可行的、有用的研究领域,从而确立了计算机图形学作为一个的、有用的研究领域,从而确立了计算机图形学作为一个崭新的学科分支的独立地位。崭新的学科分支的独立地位。 19641964年,孔斯年,孔斯( (S.Coons)S.Coons)提出了用小块曲面片组合提出了用小块曲面片组合表示自由曲面,使曲面片边界上达到任意高阶连表示自由曲面,使曲面片边界上达到任意高阶连续的理论方法,
14、称孔斯曲面。此方法受到了工业续的理论方法,称孔斯曲面。此方法受到了工业界和学术界的极大重视。法国雷诺公司的贝赛尔界和学术界的极大重视。法国雷诺公司的贝赛尔( (P.Bezier)P.Bezier)也提出了也提出了BezierBezier曲线和曲面,并将其曲线和曲面,并将其成功地用于几何外形设计,开发了用于汽车外形成功地用于几何外形设计,开发了用于汽车外形设计的设计的UNISURFUNISURF系统。他们被称为计算机辅助几何系统。他们被称为计算机辅助几何设计的奠基人。设计的奠基人。 19641964年,年,IBMIBM公司推出了第一台交互式光笔输入公司推出了第一台交互式光笔输入显示器的设计方案,
15、以后经过改进,成为显示器的设计方案,以后经过改进,成为IBM IBM 22502250显示器。它预示着交互式计算机图形学的诞显示器。它预示着交互式计算机图形学的诞生。洛克希德飞机公司利用生。洛克希德飞机公司利用IBM 2250IBM 2250开发了开发了CADCAD绘绘图加工系统,从图加工系统,从19741974年起向外界转让,成为年起向外界转让,成为IBMIBM主主机上目前应用最广的机上目前应用最广的CADCADCAMCAM软件。软件。 DAC-1, 世界上首个用于汽车发动机设计的CAD系统,1959年由IBM开发世界上第一台光笔交互式图形显示器IBM2250 20 20世纪世纪7070年代
16、,计算机图形学另外两个重要进展年代,计算机图形学另外两个重要进展是真实感图形学和实体造型技术的产生。是真实感图形学和实体造型技术的产生。19801980年年提出了光透视模型和光线跟踪算法,标志着真实提出了光透视模型和光线跟踪算法,标志着真实感图形的显示算法已逐渐成熟。感图形的显示算法已逐渐成熟。 u7.2.2 计算机图形学的应用领域随着计算机图形学不断发展,它的应用范围也日随着计算机图形学不断发展,它的应用范围也日趋广泛。目前计算机图形学应用领域主要有:趋广泛。目前计算机图形学应用领域主要有: 计算机辅助设计与制造计算机辅助设计与制造(CAD/CAMCAD/CAM)CAD/CAMCAD/CAM
17、是计算机图形学在工业界最广泛、最活跃的应是计算机图形学在工业界最广泛、最活跃的应用领域。目前,计算机图形学被广泛用来进行建筑工用领域。目前,计算机图形学被广泛用来进行建筑工程设计、机械结构和产品的设计。包括设计飞机、汽程设计、机械结构和产品的设计。包括设计飞机、汽车、船舶的外形和发电厂、化工厂等的布局以及电子车、船舶的外形和发电厂、化工厂等的布局以及电子线路、电子器件等。在电子工业中,计算机图形学应线路、电子器件等。在电子工业中,计算机图形学应用到集成电路、印刷电路板、电子线路和网络分析等用到集成电路、印刷电路板、电子线路和网络分析等方面的优势是十分明显的。一个复杂的大规模或超大方面的优势是十
18、分明显的。一个复杂的大规模或超大规模集成电路版图根本不可能用手工设计和绘制,用规模集成电路版图根本不可能用手工设计和绘制,用计算机图形系统不仅能进行设计和画图,而且可以在计算机图形系统不仅能进行设计和画图,而且可以在较短的时间内完成,把其结果直接送至后续工艺进行较短的时间内完成,把其结果直接送至后续工艺进行加工处理。在飞机工业中,美国波音飞机公司已用有加工处理。在飞机工业中,美国波音飞机公司已用有关的关的CADCAD系统实现波音系统实现波音777777飞机的整体设计和模拟,其飞机的整体设计和模拟,其中包括飞机外型、内部零部件的安装和检验。中包括飞机外型、内部零部件的安装和检验。 CAD CAD
19、领域另一个非常重要的研究领域是基于工程图领域另一个非常重要的研究领域是基于工程图纸的三维形体重建。三维形体重建就是从二维信纸的三维形体重建。三维形体重建就是从二维信息中提取三维信息,通过对这些信息进行分类、息中提取三维信息,通过对这些信息进行分类、综合等一系列处理,在三维空间中重新构造出二综合等一系列处理,在三维空间中重新构造出二维信息所对应的三维形体,恢复形体的点、线、维信息所对应的三维形体,恢复形体的点、线、面及其拓扑关系,从而实现形体的重建。面及其拓扑关系,从而实现形体的重建。图形化的用户接口图形化的用户接口 目前正在研究下一代用户界面,开发面向主流应用目前正在研究下一代用户界面,开发面
20、向主流应用的自然、高效多通道的用户界面。研究多通道语的自然、高效多通道的用户界面。研究多通道语义模型、多通道整合算法及其软件结构和界面范义模型、多通道整合算法及其软件结构和界面范式是当前用户界面和接口方面研究的主流方向,式是当前用户界面和接口方面研究的主流方向,而图形学在其中起主导作用。而图形学在其中起主导作用。地形地貌和自然资源图地形地貌和自然资源图科学计算可视化科学计算可视化科学技术的迅猛发展,数据量的与日俱增使得人科学技术的迅猛发展,数据量的与日俱增使得人们对数据的分析和处理变得越来越难,人们无法们对数据的分析和处理变得越来越难,人们无法从数据海洋中得到最有用的数据,找到数据的变从数据海
21、洋中得到最有用的数据,找到数据的变化规律,提取最本质的特征。但是如果能将这些化规律,提取最本质的特征。但是如果能将这些数据用图形的形式表示出来,情况就不一样了,数据用图形的形式表示出来,情况就不一样了,事物的发展趋势和本质特征将会很清楚地呈现在事物的发展趋势和本质特征将会很清楚地呈现在人们面前。人们面前。 5. 5. 计算机动画和艺术计算机动画和艺术 三维动画电影精灵鼠小弟 计算机创作的静物风格作品 图6-7 计算机动画与艺术创作 7.3 7.3 图形与图像的区别与联系图形与图像的区别与联系 应当指出,从历史上来看图形和图像有着较大应当指出,从历史上来看图形和图像有着较大不同,不能混为一谈。直
22、到目前为止,计算机图不同,不能混为一谈。直到目前为止,计算机图形学和数字图像处理还是作为两门课程分别讲授形学和数字图像处理还是作为两门课程分别讲授的。的。 计算机图形学是指将点、线、面、曲面等实体计算机图形学是指将点、线、面、曲面等实体生成物体的模型存放在计算机里,并可进行修改、生成物体的模型存放在计算机里,并可进行修改、处理、操作和显示的一门学科。图形含有几何属处理、操作和显示的一门学科。图形含有几何属性,或者说更强调场景的几何表示,是由场景的性,或者说更强调场景的几何表示,是由场景的几何模型和景物的物理属性共同组成的。几何模型和景物的物理属性共同组成的。 数字图像处理技术是对计算机外部辅助
23、设备数字图像处理技术是对计算机外部辅助设备(如扫描仪、数码相机或视频采集装置等)输入(如扫描仪、数码相机或视频采集装置等)输入的图像像素数据进行数字化处理、变换、压缩和的图像像素数据进行数字化处理、变换、压缩和传输的一门计算机技术。就存储方式而言,图像传输的一门计算机技术。就存储方式而言,图像纯指计算机内以位图纯指计算机内以位图( (Bitmap)Bitmap)形式存在的灰度或形式存在的灰度或彩色信息图形的几何属性,应用面非常广。彩色信息图形的几何属性,应用面非常广。图形与图像的主要区别有:图形与图像的主要区别有:数据来源不同数据来源不同 图像数据来自客观世界;图形数据来自主观世界。图像数据来
24、自客观世界;图形数据来自主观世界。 处理方法不同处理方法不同 图像处理方法包括几何修正、图像变换、图像增图像处理方法包括几何修正、图像变换、图像增强、图像分割、图像理解、图像识别等;图形处强、图像分割、图像理解、图像识别等;图形处理方法包括几何变换、开窗和裁剪、隐藏线和隐理方法包括几何变换、开窗和裁剪、隐藏线和隐藏面消除、曲线和曲面拟合、明暗处理、纹理产藏面消除、曲线和曲面拟合、明暗处理、纹理产生等。生等。 理论基础不同理论基础不同 图像处理理论主要用到数字信号处理、概率与统图像处理理论主要用到数字信号处理、概率与统计、模糊数学等;计算机图形学理论主要用到仿计、模糊数学等;计算机图形学理论主要
25、用到仿射与透视变换、样条几何、计算几何、分形理论射与透视变换、样条几何、计算几何、分形理论等。等。 图形与图像的对比与区别 图形(Graphics)图像(Image)数据量很少 数据量很大有结构,便于编辑修改无结构,不便于编辑修改能准确表示3D景物,易于生成所需的不同视图3D景物的信息巳部分丢失,很难生成不同的视图生成视图需要复杂的计算生成视图不需要复杂的计算自然景物的表示很困难自然景物的表示不困难国际标准:GKS,PHIGS,OpenGL,WMF,VRML;CGM,STEP,国际标准:JBIG,JPEG,TIFF编辑软件(绘图软件): AutoCAD,CorelDRAW编 辑 软 件 (图
26、像 处 理 软 件 ):Photoshop,Photostyler 随着图形图像技术的发展,两者之间相互随着图形图像技术的发展,两者之间相互交叉、交叉、相互渗透,其界相互渗透,其界线线也也越来越越来越模糊模糊,计算机图形与,计算机图形与图像处理之间的联系与转换如下图所示:图像处理之间的联系与转换如下图所示:图图形学的逆形学的逆过过程是分析和程是分析和识别输识别输入的入的图图像并从中像并从中提取二提取二维维或三或三维维的数据模型(特征)。例如手写的数据模型(特征)。例如手写体体识别识别、机器、机器视觉视觉。模型。模型变换变换是采用是采用CAGD CAGD (Computer Aided Geom
27、etric DesignComputer Aided Geometric Design)技技术术,CAGDCAGD技技术术适用于适用于几何形体在计算机中的表示,分几何形体在计算机中的表示,分析、研究怎样灵活方便地建立几何形体的数学模析、研究怎样灵活方便地建立几何形体的数学模型,提高算法效率,研究曲线、曲面的表示、生型,提高算法效率,研究曲线、曲面的表示、生成、拼接、数据拟合,如何在计算机内更好地存成、拼接、数据拟合,如何在计算机内更好地存储和管理这些模型等。储和管理这些模型等。 二维矢量绘图与编辑矢量图形对象与绘图工具1.1.矢量图形对象矢量图形对象2.2.绘图工具绘图工具 图6-8 矢量绘图
28、软件提供的工具箱 交互式工具是矢量绘图软件中的一个非常重要的功能,交互式工具是矢量绘图软件中的一个非常重要的功能,通过通过 一系列的交互工具的使用,可以创建出令人惊叹的效一系列的交互工具的使用,可以创建出令人惊叹的效果。果。使使 用用“调和工具调和工具”,可以将两个对象通过调和平滑的组,可以将两个对象通过调和平滑的组合在一合在一 起,在矢量图形对象之间产生形状、颜色的连续变化起,在矢量图形对象之间产生形状、颜色的连续变化 (图(图a a)。交互式变形工具可以同时对多个矢量对象进)。交互式变形工具可以同时对多个矢量对象进行变行变 形(图形(图b b)。)。(a)交互式调和工具效果(b)交互式变形
29、工具效果(注意变形前后两个图形的不同)图 交互式工具的使用 智能绘图工具自动对涂鸦的线条进行识别、判断并组智能绘图工具自动对涂鸦的线条进行识别、判断并组织成织成 最接近的几何形状,如图最接近的几何形状,如图6-106-10所示。所示。图 智能绘图工具能将手绘草图 转换成最接近的几何形状路径与锚点开放路径:路径有两个明显的端点(锚点),中间开放路径:路径有两个明显的端点(锚点),中间有任意数目的定位点。有任意数目的定位点。闭合路径:路径是连续的,没有终点和起始点。闭闭合路径:路径是连续的,没有终点和起始点。闭合路径对象是可以填充的,而开放路径对象则不能合路径对象是可以填充的,而开放路径对象则不能
30、填充。填充。复合路径:由两个或多个开放或闭合路径组成。复合路径:由两个或多个开放或闭合路径组成。 图 路径及其绘图实例曲线编辑图 由两个Bazzier曲线段连接而成的曲线,拖动方向线可改变曲线的弯曲形状填充与渐变 图 渐变与图案填充效果 图 渐变网格应用示意图及作品矢量字体图 用矢量绘图软件设计的美术字体三维造型图 用Adobe Illustrator CS矢量绘图软件设计的三维图形7.4真实感图形技术什么是真实感图形什么是真实感图形计算机真实感图形是一种光栅图形。光栅图形显示器的屏幕由一系列计算机真实感图形是一种光栅图形。光栅图形显示器的屏幕由一系列显示单元组成,每一个显示单元称为一个像素。
31、生成一幅真实感图形显示单元组成,每一个显示单元称为一个像素。生成一幅真实感图形时,我们必须逐个像素地计算画面上相应景物表面区域的颜色。显然,时,我们必须逐个像素地计算画面上相应景物表面区域的颜色。显然,在计算可见景物表面区域的颜色时,不但要考虑光源对该区域入射光在计算可见景物表面区域的颜色时,不但要考虑光源对该区域入射光的光亮度,而且还要考虑该表面区域对光源的朝向,表面的材料和反的光亮度,而且还要考虑该表面区域对光源的朝向,表面的材料和反射性质等。简言之,这种计算必须基于一定的光学物理模型,我们将射性质等。简言之,这种计算必须基于一定的光学物理模型,我们将其称之为光照明模型。基于场景几何和光照
32、模型生成一幅真实感图形其称之为光照明模型。基于场景几何和光照模型生成一幅真实感图形的过程称之为绘制。由于光栅图形屏幕通常包含数十万甚至上百万像的过程称之为绘制。由于光栅图形屏幕通常包含数十万甚至上百万像素,因此,如何开发利用景物的空间连贯性和图像空间连贯性,提高素,因此,如何开发利用景物的空间连贯性和图像空间连贯性,提高绘制算法的效率是真实感图形技术研究的重点。绘制算法的效率是真实感图形技术研究的重点。 真实感图形是一种计算机图形生成技术,它首先在计算机中构造出所真实感图形是一种计算机图形生成技术,它首先在计算机中构造出所需场景的几何模型,然后根据假定的光照条件,计算画面上可见的各需场景的几何
33、模型,然后根据假定的光照条件,计算画面上可见的各景物表面的光亮度,使观者产生如临其境,如见其物的视觉效果。随景物表面的光亮度,使观者产生如临其境,如见其物的视觉效果。随着计算机图形学和计算机本身的发展,真实感图形学在我们日常的工着计算机图形学和计算机本身的发展,真实感图形学在我们日常的工作、学习和生活中已经有了非常广泛的应用。作、学习和生活中已经有了非常广泛的应用。 u7.4.1 真实感图形生成步骤用计算机在图形设备上生成连续色调的真实感图用计算机在图形设备上生成连续色调的真实感图形,必须完成下面四个基本的任务:形,必须完成下面四个基本的任务: 三维造型或建模。三维造型或建模。用数学方法建立所
34、需三维场景的几用数学方法建立所需三维场景的几何描述,并将它们输入到计算机中。这一部分的工作何描述,并将它们输入到计算机中。这一部分的工作通常是由三维立体造型系统或曲面造型系统完成的。通常是由三维立体造型系统或曲面造型系统完成的。场景的几何描述直接影响了图形的复杂性和图形绘制场景的几何描述直接影响了图形的复杂性和图形绘制的计算开销。的计算开销。将三维几何描述转换为二维透视图。这可通过对场景将三维几何描述转换为二维透视图。这可通过对场景的透视变换来完成。的透视变换来完成。 确定场景中的所有可见面。这需要使用隐藏面消除算确定场景中的所有可见面。这需要使用隐藏面消除算法将视野之外或被其他物体遮挡的不可
35、见面消去。法将视野之外或被其他物体遮挡的不可见面消去。 根据基于光学物理的光照明模型计算可见面投射到观根据基于光学物理的光照明模型计算可见面投射到观察者眼中的光亮度大小和色彩组成,并将它转换成适察者眼中的光亮度大小和色彩组成,并将它转换成适合图形设备的颜色值,从而确定投影画面上每一像素合图形设备的颜色值,从而确定投影画面上每一像素的颜色,最终生成图形。的颜色,最终生成图形。 u7.4.2 三维几何造型方法几何造型技术是一项研究在计算机中如何表达物几何造型技术是一项研究在计算机中如何表达物体模型形状的技术。它从诞生到现在,仅仅经历体模型形状的技术。它从诞生到现在,仅仅经历了三十多年的发展历史,由
36、于几何造型技术研究了三十多年的发展历史,由于几何造型技术研究的迅速发展和计算机硬件性能的大幅度提高,已的迅速发展和计算机硬件性能的大幅度提高,已经出现了许多以几何造型作为核心的实用化系统,经出现了许多以几何造型作为核心的实用化系统,在航空航天、汽车、造船、机械、建筑和电子等在航空航天、汽车、造船、机械、建筑和电子等行业得到了广泛的应用。行业得到了广泛的应用。 在几何造型系统中,描述物体的三维模型有三种,在几何造型系统中,描述物体的三维模型有三种,即线框模型、表面模型和实体模型。即线框模型、表面模型和实体模型。 线框模型是计算机图形学和线框模型是计算机图形学和CAD/CAMCAD/CAM领域最早
37、用来领域最早用来表示物体的模型,表示物体的模型,是历史最久的建模方法,它建是历史最久的建模方法,它建立在牢固的数学基础上,线框模型所描述的物体立在牢固的数学基础上,线框模型所描述的物体的几何信息都是可知的,控制的灵活性最高,在的几何信息都是可知的,控制的灵活性最高,在需要精确描述的场合(如需要精确描述的场合(如CADCAD)有其他方法无法替有其他方法无法替代的作用。代的作用。计算机绘图是这种模型的一个重要应计算机绘图是这种模型的一个重要应用。用。 表面模型在线框模型的基础上,增加了物体表面的信息。它用面的集合来表示物体,而用环来定义面的边界。三维表面模型表示三维物体的信息并不完整,但它能够表达
38、复杂的曲面,在几何造型中具有重要的地位。对于支持曲面的三维实体模型,表面模型是它的基础。实体模型是最高级的模型,它能完整表示物体的所有形状信息,可以无歧义地确定一个点是在物体外部、内部或表面上,这种模型能够进一步满足物理计算、有限元分析等应用的要求。 图 三维实体模型的表示u7.4.3 消隐算法人不能一眼看到一个三维物体的全部表面。从一人不能一眼看到一个三维物体的全部表面。从一个视点去观察一个三维物体,必然只能看到该物个视点去观察一个三维物体,必然只能看到该物体表面上的部分点、线、面,而其余部分则被体表面上的部分点、线、面,而其余部分则被 这这些可见部分遮挡住。如果观察的是若干个三维物些可见部
39、分遮挡住。如果观察的是若干个三维物体,则物体之间还可能彼此遮挡而部分不可见。体,则物体之间还可能彼此遮挡而部分不可见。因此,如果想有真实感地显示三维物体,必须在因此,如果想有真实感地显示三维物体,必须在视点确定之后,将对象表面上不可见的点、线、视点确定之后,将对象表面上不可见的点、线、面消去。执行这一功能的算法,称为消隐算法。面消去。执行这一功能的算法,称为消隐算法。消隐算法是将物体的表面分解为一组空间多边形,消隐算法是将物体的表面分解为一组空间多边形,研究多边形之间的遮挡关系。从应用的角度看,研究多边形之间的遮挡关系。从应用的角度看,有两类消隐问题:线消隐(有两类消隐问题:线消隐(Hidde
40、n-lineHidden-line),),它用它用于线框图;面消隐(于线框图;面消隐(Hidden-surfaceHidden-surface),),它用于它用于表面填色。表面填色。u消隐算法大致可以分为:物体空间法、图像空间消隐算法大致可以分为:物体空间法、图像空间法和排列优先法。法和排列优先法。这三种算法是根据由多面体构成一个物体,从某这三种算法是根据由多面体构成一个物体,从某个视点来看,判断出哪个部分是可视的判断基准个视点来看,判断出哪个部分是可视的判断基准来进行分类的。来进行分类的。物体空间法是在其整个空间内判断其可视性的方物体空间法是在其整个空间内判断其可视性的方法。法。图像空间法是
41、利用物体投影的投影面来进行可视图像空间法是利用物体投影的投影面来进行可视判断的方法判断的方法排列优先发是对构成物体的多面体或构成多面体排列优先发是对构成物体的多面体或构成多面体的多边形,根据从视点比较容易看到的优先顺序的多边形,根据从视点比较容易看到的优先顺序进行排列,将优先顺序高的面所遮挡的面消去的进行排列,将优先顺序高的面所遮挡的面消去的方法。方法。 (a)线框图 (b)从右上往下看 (C)从左下住上看 图 线框模型具有二义性 线框图 线消隐 面消隐 图 线消隐与面消隐 经线消隐处理的三维线框图 经面消隐处理的三维填色图 u7.4.4 光照模型当光照射到物体表面当光照射到物体表面时时,光,
42、光线线可能被吸收、反射和透射。可能被吸收、反射和透射。被物体吸收的部分被物体吸收的部分转转化化为热为热。反射、透射的光。反射、透射的光进进入人的入人的视视觉觉系系统统,使我,使我们们能看能看见见物体。物体。为为模模拟这拟这一一现现象,我象,我们们建立建立一些数学模型来替代复一些数学模型来替代复杂杂的物理模型。的物理模型。这这些模型就称些模型就称为为光光照明模型或者明暗效照明模型或者明暗效应应模型。模型。在真实感图形学中,为了模在真实感图形学中,为了模拟现实世界中的场景,我们一般需要知道这个场景的光照拟现实世界中的场景,我们一般需要知道这个场景的光照明效果的物理模型,然后我们用一个数学模型来表示
43、它,明效果的物理模型,然后我们用一个数学模型来表示它,通过计算这种数学模型可以得到计算机模拟出来的真实感通过计算这种数学模型可以得到计算机模拟出来的真实感效果。效果。三三维维形体的形体的图图形形经过经过消消隐隐后,再后,再进进行光照行光照处处理,可理,可以以进进一步提高一步提高图图形的真形的真实实感。感。照射到物体上的光线,不仅有从光源直接射来的,也有经照射到物体上的光线,不仅有从光源直接射来的,也有经过其他物体反射或折射来的。局部光照模型只能处理直接过其他物体反射或折射来的。局部光照模型只能处理直接光照,为了对环境中物体之间的各种反射、折射光进行精光照,为了对环境中物体之间的各种反射、折射光
44、进行精确模拟,需要使用整体光照模型确模拟,需要使用整体光照模型 (a)采用局部光照模型 绘制的三维球体 (b)采用整体光照模型 绘制的三维球体 图 局部光照模型和整体光照模型示例 表现场景整体照明效果的一个重要方面是透明现象的表现场景整体照明效果的一个重要方面是透明现象的模拟。下图模拟了场景中透明物体的整体照明效果。模拟。下图模拟了场景中透明物体的整体照明效果。图 用整体照明模型模拟的物体透明效果 在计算机图形学中,物体表面的细节称为纹理。一般只在计算机图形学中,物体表面的细节称为纹理。一般只考虑两种类型的纹理。一种是在光滑表面上绘制一定的花考虑两种类型的纹理。一种是在光滑表面上绘制一定的花纹
45、或图案,当花纹绘制后,表面仍然光滑如初,一般这一纹或图案,当花纹绘制后,表面仍然光滑如初,一般这一过程可用一映射函数来描述。另一种是使物体表面出现凹过程可用一映射函数来描述。另一种是使物体表面出现凹凸不平的感觉。这一过程则可用一个扰动函数来描述。表凸不平的感觉。这一过程则可用一个扰动函数来描述。表面纹理(面纹理(TextureTexture)的描绘用于表示细微的凹凸不平的物的描绘用于表示细微的凹凸不平的物体表面,如布纹、植物和水果的表皮等等。由于将这种细体表面,如布纹、植物和水果的表皮等等。由于将这种细微的表面凹凸表达为数据结构既很困难,又无必要(通常微的表面凹凸表达为数据结构既很困难,又无必
46、要(通常只是为了逼真的视觉效果),因此通常用一种特殊的算法只是为了逼真的视觉效果),因此通常用一种特殊的算法来模拟它,将纹理逼真地显示出来,满足视觉感官的需要。来模拟它,将纹理逼真地显示出来,满足视觉感官的需要。图 采用纹理映射生成的物体表面阴影的生成 阴影是现实生活中一个很常见的光照现象,它是由于光源阴影是现实生活中一个很常见的光照现象,它是由于光源被物体遮挡而在该物体后面产生的较暗的区域。在真实感被物体遮挡而在该物体后面产生的较暗的区域。在真实感图形学中,通过阴影可以提供物体位置和方向信息,从而图形学中,通过阴影可以提供物体位置和方向信息,从而可以反映出物体之间的相互关系,增加图形图像的立
47、体效可以反映出物体之间的相互关系,增加图形图像的立体效果和真实感。当我们知道了物体的阴影区域以后,就可以果和真实感。当我们知道了物体的阴影区域以后,就可以用简单光照明模型中计算光强。对于物体表面的多边形,用简单光照明模型中计算光强。对于物体表面的多边形,如果在阴影区域内部,那么该多边形的光强就只有环境光如果在阴影区域内部,那么该多边形的光强就只有环境光那一项,否则就用正常的模型计算光强。通过这种方便的那一项,否则就用正常的模型计算光强。通过这种方便的方法,就可以把阴影引入简单光照明模型中,使产生的真方法,就可以把阴影引入简单光照明模型中,使产生的真实感图形更有层次感。实感图形更有层次感。 图
48、光照模型中的阴影表示2.2.光线跟踪光透射光线跟踪光透射光线跟踪(光线跟踪(Ray-traceRay-trace)是一种真实感地显示物体的)是一种真实感地显示物体的方法,最基本的光线跟踪算法是跟踪镜面反射和折方法,最基本的光线跟踪算法是跟踪镜面反射和折射。从光源发出的光遇到物体的表面,发生反射和射。从光源发出的光遇到物体的表面,发生反射和折射,光就改变方向,沿着反射方向和折射方向继折射,光就改变方向,沿着反射方向和折射方向继续前进,直到遇到新的物体,这是光线跟踪算法的续前进,直到遇到新的物体,这是光线跟踪算法的基础。基础。下图显示了一个光线跟踪的例子下图显示了一个光线跟踪的例子 图 光线跟踪示
49、例 对于透明或半透明的物体,在光线与物体表面相交时,对于透明或半透明的物体,在光线与物体表面相交时,一般会产生反射与折射,经折射后的光线将穿过物体一般会产生反射与折射,经折射后的光线将穿过物体而在物体的另一个面射出,形成透射光。由于透明物而在物体的另一个面射出,形成透射光。由于透明物体可以透射光,因而我们可以透过这种材料看到后面体可以透射光,因而我们可以透过这种材料看到后面的物体,由于光的折射通常会改变光的方向,要在真的物体,由于光的折射通常会改变光的方向,要在真实感图形学中模拟折射,需要较大的计算量。下图是实感图形学中模拟折射,需要较大的计算量。下图是计算机生成的透明物体的光线跟踪与光透射场
50、景。计算机生成的透明物体的光线跟踪与光透射场景。图 用光线跟踪与光透射模型生成的三维透明物体场景u7.4.5 实时真实感图形学技术 前面介绍的光照明模型及它们在真实感图形学中前面介绍的光照明模型及它们在真实感图形学中的一些应用方法,它们都是用数学模型来表示真的一些应用方法,它们都是用数学模型来表示真实世界中的物理模型,可以很好的模拟出现实世实世界中的物理模型,可以很好的模拟出现实世界中的复杂场景,所生成的真实感图像可以给人界中的复杂场景,所生成的真实感图像可以给人以高度逼真的感觉。但是,用这些模型生成一幅以高度逼真的感觉。但是,用这些模型生成一幅真实感图像需要较长的时间,尤其对于比较复杂真实感
51、图像需要较长的时间,尤其对于比较复杂的场景,绘制的时间甚至可以达到数个小时。尽的场景,绘制的时间甚至可以达到数个小时。尽管现在的计算机硬件水平有了很大的提高,而且管现在的计算机硬件水平有了很大的提高,而且对于这些真实感图形学算法的研究也有了很大的对于这些真实感图形学算法的研究也有了很大的发展,但是,真实感图形的绘制速度仍然不能满发展,但是,真实感图形的绘制速度仍然不能满足某些需要实时图形显示的任务要求。例如在某足某些需要实时图形显示的任务要求。例如在某些需要动态模拟、实时交互的科学计算可视化以些需要动态模拟、实时交互的科学计算可视化以及虚拟现实系统中,它们对于生成真实感图形学及虚拟现实系统中,
52、它们对于生成真实感图形学的实时性要求很高,就必须采用实时真实感图形的实时性要求很高,就必须采用实时真实感图形学技术。学技术。 实时真实感图形学技术是在当前图形算法和硬件条件的实时真实感图形学技术是在当前图形算法和硬件条件的限制下提出的在一定的时间内完成真实感图形图像绘制的限制下提出的在一定的时间内完成真实感图形图像绘制的技术。一般来说,它是通过损失一定的图形质量来达到实技术。一般来说,它是通过损失一定的图形质量来达到实时绘制真实感图像的目的,就目前的技术而言,主要是通时绘制真实感图像的目的,就目前的技术而言,主要是通过降低显示三维场景模型的复杂度来实现,这种技术被称过降低显示三维场景模型的复杂
53、度来实现,这种技术被称为层次细节(为层次细节(LODLOD:Level of DetailLevel of Detail)显示和简化技术,显示和简化技术,是当前大多数商业实时真实感图形生成系统中所采用的技是当前大多数商业实时真实感图形生成系统中所采用的技术。术。u7.5.1 矢量图客观世界中,图可分为二类。一类是可见的图像,客观世界中,图可分为二类。一类是可见的图像,例如照片、图纸和人们创作的各种美术作品等,例如照片、图纸和人们创作的各种美术作品等,对于这一类图,只能靠使用扫描仪、数字照相机对于这一类图,只能靠使用扫描仪、数字照相机或摄像机进行数字化输入后,才能由计算机进行或摄像机进行数字化输
54、入后,才能由计算机进行间接处理。另一类是可用数学公式或模型描述的间接处理。另一类是可用数学公式或模型描述的图形,这一类图可由计算机直接进行创作与处理。图形,这一类图可由计算机直接进行创作与处理。由此对应的图文件有两种,一种是存储图形信息由此对应的图文件有两种,一种是存储图形信息的矢量图文件,另一种是存储图像信息的位图文的矢量图文件,另一种是存储图像信息的位图文件。件。 矢量图形特点是精度高、灵活性大,并且用它们设计出矢量图形特点是精度高、灵活性大,并且用它们设计出来的作品可以任意放大、缩小而不变形失真。它不会像一来的作品可以任意放大、缩小而不变形失真。它不会像一些位图处理软件那样,在进行高倍放
55、大后图像会不可避免些位图处理软件那样,在进行高倍放大后图像会不可避免地方块化。用矢量图制作的作品可以在任意输出设备上输地方块化。用矢量图制作的作品可以在任意输出设备上输出而不用考虑其分辨率。矢量图在计算机中的存储格式大出而不用考虑其分辨率。矢量图在计算机中的存储格式大都不固定,要视各个软件的特点由开发者自定。相对于位都不固定,要视各个软件的特点由开发者自定。相对于位图来讲,矢量图占用的存储空间较小。但在屏幕每次显示图来讲,矢量图占用的存储空间较小。但在屏幕每次显示时,它都需要经过重新计算,故显示速度没有图像快。时,它都需要经过重新计算,故显示速度没有图像快。u7.5.2 AutoCAD Aut
56、oCADAutoCAD是是AutodeskAutodesk公司的主导产品。目前在公司的主导产品。目前在CAD/CAE/CAMCAD/CAE/CAM工业领域内,该公司是拥有全球用户工业领域内,该公司是拥有全球用户量最多的软件供应商,也是全球规模最大的基于量最多的软件供应商,也是全球规模最大的基于PCPC平台平台的的CADCAD和动画及可视化软件企业。和动画及可视化软件企业。AutodeskAutodesk公司的软件产品已被广泛地应用于机械设计、建公司的软件产品已被广泛地应用于机械设计、建筑设计、影视制作、视频游戏开发以及筑设计、影视制作、视频游戏开发以及WebWeb网的数网的数据开发等重大领域。
57、据开发等重大领域。 AutoCADAutoCAD是当今最流行的矢量图绘图软件,它在二是当今最流行的矢量图绘图软件,它在二维和三维绘图领域拥有广泛的用户群。维和三维绘图领域拥有广泛的用户群。AutoCADAutoCAD有有强大的二维功能,如绘图、编辑、剖面线和图案强大的二维功能,如绘图、编辑、剖面线和图案绘制、尺寸标注以及二次开发等功能,同时具有绘制、尺寸标注以及二次开发等功能,同时具有三维造型功能。三维造型功能。AutoCADAutoCAD提供提供AutoLISPAutoLISP、ADSADS、ARXARX作为二次开发的工具。在许多实际应用领域作为二次开发的工具。在许多实际应用领域( (如机如
58、机械、建筑、电子械、建筑、电子) )中,一些软件开发商中,一些软件开发商在在AutoCADAutoCAD的基础上已开发出许多符合实际应用的软件。的基础上已开发出许多符合实际应用的软件。 目前,目前,AutodeskAutodesk公司已经发布公司已经发布AutoCAD2002AutoCAD2002。AutoCAD2002AutoCAD2002是一个功能全面、使用方便、容易掌是一个功能全面、使用方便、容易掌握的绘图辅助设计软。握的绘图辅助设计软。AutoCAD2002AutoCAD2002将二维绘图和将二维绘图和和三维造型功能和谐地统一在一起。和三维造型功能和谐地统一在一起。AutoCAD200
59、2AutoCAD2002支持的三维建模功能包括三维视支持的三维建模功能包括三维视图操作、视窗布置、坐标系统的设置、线框模型图操作、视窗布置、坐标系统的设置、线框模型- -表面模型表面模型- -实体模型的建立和编辑、透视图的生成、实体模型的建立和编辑、透视图的生成、三维模型的渲染、图纸空间应用及与其他三维建三维模型的渲染、图纸空间应用及与其他三维建模软件的数据交换。为我们提供了一个精彩的三模软件的数据交换。为我们提供了一个精彩的三维世界。维世界。 u7.5.3 绘图软件CorelDRAW CorelDRAW CorelDRAW是由是由CorelCorel公司开发的一套在公司开发的一套在Windo
60、wsWindows环境下的桌面绘图软件,它的直观的用户环境下的桌面绘图软件,它的直观的用户界面使用户便于学习与使用。界面使用户便于学习与使用。 CorelDRAWCorelDRAW是基于矢量结构的程序,可用于印刷媒是基于矢量结构的程序,可用于印刷媒体制作。面向对象的绘图程序有两个优点:高精体制作。面向对象的绘图程序有两个优点:高精度和灵活性。矢量坐标满足数学方程式,用它来度和灵活性。矢量坐标满足数学方程式,用它来定义对象可以进行与输出设备和分辨率无关的操定义对象可以进行与输出设备和分辨率无关的操作。贝塞尔曲线(作。贝塞尔曲线(Bezier CurvesBezier Curves)在尺寸上是无在尺寸上是无限伸缩的,这使得在不损失质量的情况下,可以限伸缩的,这使得在不损失质量的情况下,可以灵活地缩小或放大作品。灵活地缩小或放大作品。图 AutoCAD 2006软件设计界面图 用CorelDRAW软件创作的作品 图 用Adobe Illustrator软件创作的作品