新-第6章-真实感图形生成技术_第1页
新-第6章-真实感图形生成技术_第2页
新-第6章-真实感图形生成技术_第3页
新-第6章-真实感图形生成技术_第4页
新-第6章-真实感图形生成技术_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

计算机图形学ComputerGraphics6.1概述一、真实感图形定义真实感图形的显示是使用计算机产生同照片同样的黑白图像或彩色图像。计算机图形学研究目的最终是用计算机生成图形,具有真实感使物体和自然界中物体相似,包括颜色、纹理、明暗等。第六章真实感图形生成技术第六章真实感图形生成技术6.1概述6.2简单光照模型6.3明暗处理方法6.4阴影生成方法6.5整体光照模型6.6纹理处理方法6.7图形颜色和颜色模型二、真实感图形应用 1、产品外形设计 2、飞行驾驶模拟训练 3、动画制作、城市规划、医学气象等三、真实感图形特点 1、反映物体表面颜色和亮度 2、表现物体质感 3、能通过光照下物体的阴影,改善场景的深度感和层次感 4、能模拟透明物体的透明效果和镜面物体的镜像效果四、影响真实感图形因素 1、物体本身形状 2、物体表面特征:材质、感光度,纹理等 3、照射物体光源 4、物体与光源相对位置 5、物体周围环境6.2简单光照模型一个物体表面为什么会出现明暗、颜色等,主要由于物体发光达到人眼的结果。

光照在物体表面上有三种情况: 1、反射光:光通过物体表面被反射; 2、透视光:对于透明物体光穿过该物体而从另端射出; 3、光被物体吸收而变成热。我们视觉效果是反射光和透视光。第六章真实感图形生成技术6.2简单光照模型6.2.1环境反射光6.2.2漫反射光6.2.3镜面反射光6.2.3Phong光照模型下面讨论不包含透射光的简单光照模型。假设物体不透明,那么物体表面呈现的颜色仅由其反射光决定,通常人们把反射光考虑成三个分量的组合,这三个分量分别是: 环境反射 漫反射 镜面反射6.2.1环境反射光环境反射光是由于邻近物体所造成的光多次反射所产生的,其光亮度可表示为:

Ie=IaKa式中Ie----物体对环境光反射亮度;

Ia----环境光亮度;

Ka----物体表面对环境光反射系数(0≤Ka≤l)。6.2.2漫反射光漫反射光是由特定光源在物体表面反射光中那些向空间各方向均匀反射出去的光。设物体表面在P点法线为N,从P点指向光源的向量为L,两者夹角为θ。于是,点P处漫反射光的强度为:

Id=Ip

kdcosθ式中Id

——表面漫反射光的亮度;

Ip

——入射光的光亮度;

kd——漫射系数0≤Kd≤l;θ——入射光线与法线间夹角,0≤θ≤π/2。当物体表面垂直于入射光方向时(N、L方向一致)看上去最亮。当θ越来越大,接近900时,则看上去越来越暗。6.2.3镜面反射光上面讨论漫反射是一个粗糙无光泽表面,如粉笔。如果一个点光源照射到一个抛光的金属球时,在球上形成一块特别亮的区域,呈现所谓“高光”。它是光源在金属球面上产生的镜面反射光。对于一个理想的镜面,入射到表面上的光严格地遵守光的反射定律朝一个方向——镜面反射方向反射出去;对于一般光滑表面,由于表面具有一定粗糙度,其表面实际上是由许多朝向不同微小表面组成,其镜面反射光散布在反射方向周围。B.T.Phong1975年提出来用余弦函数的幂次来模拟镜面反射光的空间分布,可表示为:

Is=IpKscosnφIs——观察者接收到镜面反射光亮度;Ip——入射光的亮度;φ——镜面反射方向和视线方向的夹角;n——镜面反射光的会聚系数(与物体表面光滑度有关)一般取1~2000;Ks——镜面反射系统(与材料性质和入射光波长有关)。表面越光滑,其镜面反射光会聚程度较高,n值较大。与漫反射不同,镜面反射光与物体颜色无关。6.2.4Phong光照模型综上所述,从视点观察到物体表面上任一点亮度I应为环境光、漫反射光、镜面反射光的总和,即:

I=Ie+Id+Is

即:I=IeKa+Ip(Kdcosθ+Kscosnφ)当光源不只一个,而是有m个光源,则上式可写为:

这就是简单光照模型。令L为入射光方向单位矢量,N为表面法线单位矢量,R为反射光方向单位矢量,V为视线方向单位矢量,如图,则余弦函数可用矢量点积来表示,即(L·N)=cosθ(R·V)=cosφ即

I=IaKa+Ip[Kd(L·N)+Ks(R·V)n]对于彩色显示,可把光源分成红、绿、蓝(R·G·B)三基色光,对每一基色分别用相应算式来计算,即

Ir

=IaKar+Ip[Kdr(L·N)+Ks(R·V)n]

Ig

=IaKag+Ip[Kdg(L·N)+Ks(R·V)n]Ib=IaKab+Ip[Kdb(L·N)+Ks(R·V)n]上式中镜面反射光一项对三个式子都是一样。6.3.1概述明暗处理就是使物体表面光强度强弱表现。上一节介绍了简单照明模型,只要知道物体表面某一点的法线就可以算出该点反射光强度。对于表面是弯曲的形体,计算出曲面每一点法线,然后再按照模型来计算每一点明暗程度,计算工作量太大。6.3明暗处理方法因此,用平面多面体来逼近弯曲表面形体。对于平面多边形来说,由于它的每个表面都是平面,而在同一平面上,任一点法线都是一样,因此,只要用一个固定的强度值来表示面上所有点(即整个面)的明暗程度就可以了,这样使得计算工作大为简化。6.3.1概述

为了不使光强度急剧变化,我们用下面两种方法。6.3明暗处理方法1、哥罗德(Gouraud)强度插值法

2、冯(Phong)法向插值法6.3.2哥罗德(Gouraud)强度插值法

1、计算多边形每个顶点法向量求出与该顶点相邻的多面体各面的法向平均值,作为该顶点法向。如图P点法向量为:

Np=(N1+N2+N3)/3其中N1、N2、N3分别是以P为公共顶点的三个面的外法向;Np是P点外法向。2、计算各个顶点的光亮度I1,I2,…Im

6.3.2哥罗德(Gouraud)强度插值法3、用插值方法计算出多边形上任一点的光强度,如图:4、用扫描线方法沿水平方向插值来计算出多边形内部各点的光亮度值,例如点R的光亮度可以用下式计算:利用哥罗德法思路简明,计算方便,但对于镜面反射处理不理想,我们可用下面方法处理。6.3.3冯(Phong)法向插值法

我们上面介绍方法是以光强度进行插值,但对于镜面反射光亮度往往不理想,而Phong法是以法向进行插值,其原理和上面一样,所不同的是在上面插值公式中用N代替I即可,N是一个矢量,I是标量,所以法向插值计算量大一些,但产生效果好,比较真实,能显示出镜面特亮区域。6.4阴影生成方法第六章真实感图形生成技术6.4阴影生成方法6.4.1概述6.4.2自身阴影生成方法6.4.3投射阴影生成方法6.4.1概述1、定义:阴影是指景物中没有被光源直接照射的暗区。

在场景中阴影显示出来,可增强图形立体感,使得计算机生成画面更具有真实感。2、阴影分类(1)自身阴影(2)投射阴影投射阴影又分为:本影和半影1、本影物体影子中间全黑的轮廓分明部分是本影。本影是没有被光源照射部分。2、半影本影周围半明半暗部分是半影,半影是一部分被光源照射,一部分未被光源照射。本影计算复杂,一般只考虑半影计算。6.4.2自身阴影生成方法生成过程如下:(l)首先将视点置于光源位置,以光线照射方向作为观察方向,对在光照模型下的物体实施消隐算法,判别出在光照模型下的物体的“隐藏面”并在数据文件中加以标识;(2)然后按实际的视点位置和观察方向,对物体实施消隐算法,生成真正消隐后的立体图形;(3)检索数据文件,核查消隐后生成的图形中,是否包含有在光照模型下的“隐藏面”。如有,则加以阴影符号标识这些面。6.4.3投射阴影生成方法1、影域多面体方法2、Z缓冲器方法3、光线跟踪法6.4.3投射阴影生成方法1、影域多面体方法基本思想:先求出景物空间中光线被该物体轮廓多边形所遮挡的区域,即影域多面体。然后再判断其后物体是否在该影域内,若在影域内为阴影。这个算法与扫描线算法相结合就容易实现。6.4.3投射阴影生成方法2、Z缓冲器方法由于阴影是光线照射不到面观察者却可见到的区域,换句话说,阴影是相对于光源不可见而观察点却可见到的区域。所以在画面中生成阴影的过程基本上相当于二次消隐,一次是对光源消隐,另一次是对视点消隐,Z缓冲器算法就是基于这个原理。

该法的优点:能处理任意复杂的景物,可以较方便地在光滑曲面上生成阴影,且计算量小,程序简单;缺点:阴影缓冲器的存储耗费较大。6.4.3投射阴影生成方法3、光线跟踪法要判断某点是否在阴影内,从该点的光源发一条射线,若与物体不相交,则说明不在阴影内,若与物体相交,说明在阴影内。这种方法比较易于实现,且可以生成十分真实的阴影,但计算工作量较大。6.5整体光照模型和光线跟踪算法前面介绍了简单光照模型,所考虑条件是对于不透明物体,若是透明物体,简单光照模型公式就不适合了。我们先考虑透明性物体简单模型。6.5.1透明性简单模型条件:1、透明体不应折射

2、无漫透视,光通过透明体时不产生模糊变形6.5整体光照模型6.5.1透明性简单模型如图,A是透明体,Pt是视线穿过透明体与背后物体B的交点。此时由P点光到达观察者光强度为:I=(l-t)Ic十tIt0≤t≤1Ic为P点光亮度,t为透明系数,t=0时对应不透明面.t=1为透明面,Ic和It可用前面介绍的Phong模型计算。这种方法无法模拟光通过透明介质时产生折射现象,须用下面介绍的整体光照明模型。6.5.2整体光照模型景物表面某点P向观察点辐射的光亮度由三部分组成,依下式求出。

I=I1十IsKs+ItKt式中,

I1——光源直接照射引起的反射光亮度,按照Phong模型来计算

Is——在镜面反射方向上其它物体向点P轴射的光亮度;

It——在折射方向上其它物体向点P辐射的光亮度;

Ks——景物表面的反射系数;

Kt——景物的透射系数。

Is、It的确定要求助于光线跟踪算法。

6.5.3光线跟踪算法如何求象素点P亮度,由三部分组成:1、光源直接照射及环境光所产生局部光亮度。2、反射方向②来的光对A的作用。3、透射方向③来的光对A点的作用。A点光强度为:IA=I1A+IsAKsA+ItAKtA

为了求IsA和ItA,必须求IB和IC:IB=I1B+IsBKsB+ItBKtBIC=I1C+IsCKsC+ItCKtCIsC可由连续跟踪内反射光线6求得,ItC=背景光。最后,用IsA=IB;ItC=IC代入求A点光强度公式,即可求得A点光强度。跟踪光线结束条件

跟踪光线未碰到任何物体;跟踪光线碰到了场景背景;跟踪光线在经过许多次反射和折射以后,光线对于视点的光强贡献小于某个设定值;跟踪光线反射或折射次数(即跟踪深度)大于某个设定值;

6.5.4辐射度算法

辐射度算法的原理是任何击中一个表面的光都被反射回场景之中,是任何光线,不仅仅是直接从光源射出的光线,因此辐射度算法比上述光线跟踪算法要复杂些,同时它的效果也要好得多,可以生成高真实感的光照效果图(如下彩图)。

基本原则辐射度算法的基本原则就是摒除对物体和光源的划分,认为所有的东西都是潜在的光源,任何可见的东西不是辐射光线,就是反射光线,或者两者都是,只要它是一个光的来源,它即为一个光源。总之,一切周围能看到的东西都是光源,这样,当我们考虑场景中的某一部分应接受多少光强时,就必须把所有的可见物体发出的光线都累加进去。

6.6纹理处理方法6.6.1概述纹理:物体表面的细节,分颜色纹理和几何纹理。颜色纹理:指光滑表面上附加花纹和图案;几何纹理:景物表面微观上呈现的起伏不平;颜色纹理用纹理映射来处理,几何纹理用扰动函数来描述。颜色纹理几何纹理

6.6.2纹理映射纹理映射将平面图案->景物表面图案->屏幕空间如图,实际上是坐标间转换。设花纹在(u,w)坐标系中,景物表面在(θ,Φ)中,即:θ=f(u,w),Φ=g(u,w)或相反u=r(θ,Φ),w=s(θ,Φ)一般映射函数为线性函数,即θ=Au十BΦ=Cw+D式中A,B,C,D可由两个坐标系中已知点之间关系获得6.6.2纹理映射(a)(b)(c)将(a)中所示图案映射到图(b)中所示球面片上,球面片位于第一卦限内,图案是由相交直线组成的简单二维网格,球面片的参数表示为:

x=sinθsinΦ0≤θ≤π/2y=cosΦπ/4≤Φ≤π/2z=cosθsinΦ取线性映射函数,

θ=Au十B,Φ=Cw+D假定四边形图案的四角映射到四边形曲面片四角片,即u=0,w=0,在θ=0,Φ=π/2u=1,w=0,在θ=π/2,Φ=π/2u=0,w=1,在θ=0,Φ=π/4u=1,w=1,在θ=π/2,Φ=π/4可解得

A=π/2,B=0,C=一π/4,D=π/2故由uw空间在θΦ空间的线性映射函数为:

θ=u·π/2,Φ=π/2-w·π/4由θΦ空间至uw空间的逆映射为:

u=θ/(π/2)w=(π/2-Φ)/(π/4)

将uw空间中的一条直线映射到θΦ空间,然后换算到XYZ坐标系,运算结果如表6.1所示。

表6.1空间直线换算表6.6.3扰动映射扰动:就是在表面每一点上沿其表面法向方向附加一个新的向量,这一向量比较小,不影响原表面的大致形状,但对其表面该点处的法向产生较大扰动作用,结果使曲面变得非常粗糙,通过恰当选择扰动函数,可使生成图形具有不同的皱折纹理效果。

6.7图形颜色和颜色模型一个真实感图形离不开颜色,所以说真实感图形与颜色有密切关系,但对于颜色

温馨提示

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

评论

0/150

提交评论