第四讲投影变换.ppt
2023/2/15,1,第四讲 投影变换 Projections,从三维图形到二维图形的变换,2023/2/15,2,投影的定义,概念:把n 维空间中定义的点变换到小于n 维的空间中的变换,3D物体的平面投影:过投影中心向物体上的各点发出射线(投影线)投影线与投影平面相交交点构成物体的投影,2023/2/15,3,投影分类,投影中心与投影平面的距离是 有限的 无限的,平行投影,透视投影,2023/2/15,4,两种投影方式的比较,共同点:投影中心落在无穷远点的透视投影即变为平行投影 不同点:透视投影的结果看起来真实感强透视投影不能忠实体现物体的形状及尺寸距离、角度、平行关系发生在投影前后发生变化,2023/2/15,5,平面几何投影的分类,投影平面&投影方向,投影平面&投影中心,2023/2/15,6,透视投影,定义:投影中心与投影平面距离为有限远(此时投影线汇聚于投影中心)特点:真实感强近大远小平行线经投影后汇聚于一点灭点:任何一束不平行于投影平面的平行线的透视投影(或其延长线)将汇聚于一点,称为灭点。,2023/2/15,7,续:,主灭点由平行于坐标轴的平行线对应的灭点称为主灭点分类:一点透视;两点透视;三点透视投影,2023/2/15,8,例:一点透视投影,立方体投影到垂直于z 坐标轴的投影平面上,2023/2/15,9,x,y,z,1,1,1,A,B,C,D,E,F,G,H,立方体的1点透视投影,(a)立方体,x,y,0.5,1.0,1.5,0.5,1.0,1.5,A,B,C,D,H,F,E,G,(b)立方体的投影,续:,2023/2/15,10,更多投影举例,灭点的多少影响到反映信息的多少,等轴测投影,2023/2/15,11,透视投影变换计算,例:投影中心:,投影平面:XOY,求点,的投影点,得:,解方程组:,2023/2/15,12,续:,上述投影变换写成齐次坐标形式:,2023/2/15,13,续:,特殊地,令,透视投影变换矩阵,2023/2/15,14,平行投影,分为两类:正平行投影:投影方向与投影平面的法向平行斜平行投影:投影方向与投影平面的法向不平行,2023/2/15,15,是最常用的正平行投影图,正视图:物体在YZ平面上的投影,也称为前立面图侧视图:物体在XZ平面上的投影,也称为侧立面图俯视图:物体在XY平面上的投影,也称为平面图,三视图,2023/2/15,16,轴测平行投影,轴测平行投影:投影平面不与坐标轴垂直的正平行投影,等轴测平行投影 最常用的轴测平行投影 投影平面的法向与各个坐标轴的夹角都相等(有8种选择),x,z,y,O,x,z,y,O,x,z,y,O,x,z,y,O,x,z,y,O,x,z,y,O,(a)等轴测投影面与三个坐标轴间的夹角都相等,(b)正二测投影面与两个坐标轴间的夹角相等,(c)正三测投影面与各坐标轴间的夹角都不相等,例:投影平面及其对应的立方体投影,投影平面,投影平面,投影平面,2023/2/15,18,投影的计算,平面几何投影:投影线与投影平面求交,2023/2/15,19,续:,投影线OP的参数方程:,投影线OP与投影平面z=d的交点:,z,y,d,P(x,y,z),x,Pp(xp,yp,d),投影平面,一般形式:ax+by+cz+d=0,2023/2/15,20,续:,使用齐次坐标表示:(xd/z,yd/z,d)(x,y,z,z/d)变换的矩阵表达式,2023/2/15,21,续:,例:正平行投影变换投影平面:z=0.投影方向:(0,0,-1),Mort,对比Mper,2023/2/15,22,斜平行投影,定义:数学描述投影平面:ax+by+cz+d=0投影方向是:,2023/2/15,23,斜平行投影特点,是正平行投影的一般化:投影方向与投影平面成一定夹角时的平行投影广泛应用的原因在于:结合了正(三)视图与轴测投影图的特点,当投影平面与坐标轴垂直:物体上平行于投影平面的表面测量信息(距离、角度)在投影后得以保持针对其它表面的投影,平行于坐标轴的测量距离可以保持,角度不能保持易画,2023/2/15,24,斜等测(Cavalier)投影,投影方向与投影平面成45 夹角垂直于投影平面的线段长度在投影后得以保持。,2023/2/15,25,斜二测(Cabinet)投影,投影方向与投影平面的夹角为:arctan(2)=63.4垂直于投影平面的线段在投影后的长度为实际长度的 1/2较斜等测投影的真实感略强。,2023/2/15,26,斜平行投影的计算(1),过被投影点的投影线参数方程为:,与下述投影平面方程联立求解:,方程组的解即为所求投影点。,投影线与投影平面的交即为所求,2023/2/15,27,斜平行投影的计算(2),注:因投影方向不与投影平面平行故分母不为零则方程组有解:,2023/2/15,28,斜平行投影的计算(3),变形为:,斜平行投影矩阵,2023/2/15,29,斜平行投影的计算(4),特殊地,当a=b=c=1,d=0,投影方向是(1,1,1)时,对应斜平行投影图称为等轴测图,变换矩阵是:,显然,等轴测投影是正平行投影,是斜平行投影的特例。,2023/2/15,30,关于深度关系,投影损失了模型信息,可能导致显示形体的歧义。弥补的方法之一是添加深度信息,使同一平面上的线框中各段具有前后关系。实现方法:调节明暗度:近亮远暗标识可见线面:用不同颜色或不同线型,2023/2/15,31,小结,平面几何投影透视投影平行投影:正平行投影&斜平行投影投影计算:投影线与投影平面的交点透视投影投影线:投影中心与投影点的连线投影矩阵:Mper平行投影投影线:沿投影方向过投影点的直线投影矩阵:Mort,2023/2/15,32,第五节 三维物体显示,将三维空间中的景物在二维屏幕上显示的过程,2023/2/15,33,3D 显示过程的概念图,2023/2/15,34,名词解释(1),对应图形学相关文献中的用语:视平面(view plane):即投影平面观察参考点(view reference point:VRP)视平面上一点视平面法向(view-plane normal:VPN)垂直于视平面的矢量,2023/2/15,35,名词解释(2),观察参考坐标系:viewing-reference coordinate(VRC)system,坐标原点:通常定义为VRP 坐标轴的定义:n-轴:VPN v-轴:视平面上的指定向量 u-轴:u=n v,2023/2/15,36,名词解释(3),视平面上的窗口:一个界定映射到视图区的物体部分的矩形区域,定义方式:在VRC坐标系下定义沿与坐标轴平行的方向定义窗口的最小、最大坐标值无需关于VRP对称窗口中心记为:CW,2023/2/15,37,注记:,不同坐标表示可带来表示上的简化计算上的便利,2023/2/15,38,续,不同坐标系之间变换的实现,(1)定义新坐标系(2)平移变换(3)旋转变换(4)错切变换(5)缩放变换,2023/2/15,39,观察变换,完成工作:在世界坐标系下定义出观察参考坐标系,并推导世界坐标系到观察参考坐标系的变换矩阵。实现步骤:定义观察参考坐标系世界坐标系变换到观察参考坐标系,2023/2/15,40,观察坐标系的定义(1),坐标原点:用户指定的观察点作为观察坐标系原点,记为,通常可令,Z坐标轴:用户指定的观察平面法向作为Z坐标轴,记为,2023/2/15,41,观察坐标系的定义(2),在指定的观察平面上选择向上观察向量(只需不与N方向平行即可),记为:,令:,再令:,显然U同时垂直于N和V矢量。,则U、V、N两两垂直。,令:,定义Ouvn为观察坐标系(左手坐标系)。,2023/2/15,42,观察坐标系的定义(3),定义如图所示,2023/2/15,43,世界坐标系到观察坐标系的变换,等价于建模变换过程引入观察坐标系记号:,变换矩阵:,2023/2/15,44,名词解释(4),投影参数:投影中心(COP)及投影方向(DOP)由 投影参考点projection reference point(PRP)及投影类型确定透视投影:投影参考点PRP 指的就是投影中心COP平行投影:DOP 是指投影参考点PRP 到窗口中心 CW(通常不会是VRP)的连线,2023/2/15,45,名词解释(5),视见体(view volume):界定裁剪范围也称为投影空间,透视投影的视见体是:半无穷的锥体,如下图。,2023/2/15,46,续:,正平行投影的视见体是:无穷长的正四棱柱,2023/2/15,47,续:,n,斜平行投影的视见体是:无穷长的斜四棱柱,2023/2/15,48,视见体有限化,前截面&后截面(hither plane&yon planes)平行于视平面以VPN为法向的两个平面分别由相对于VRP沿VPN的前截距(F)和后截距(B)定义FB,2023/2/15,49,透视投影视见体,2023/2/15,50,正平行投影的视见体,2023/2/15,51,斜平行投影的视见体,2023/2/15,52,投影空间(视见体)的确定,定义观察坐标系的XOY平面为观察平面,观察体也称为观察空间、投影空间、视见体,在观察平面指定观察窗口,根据观察窗口的边框及投影线设置观察体,指定投影方向(平行投影)或投影中心(透视投影),2023/2/15,53,投影空间的规范化,为提高投影变换的计算效率例如:由下式定义的平行投影视见体计算效率高:x=-1,x=1,y=-1,y=1,z=0,z=-1 分治法:投影空间的规范化平行投影空间的规范化透视投影空间的规范化,2023/2/15,54,规范化的视见体,平行投影:规范化正棱柱x=-1,x=1,y=-1y=1,z=0,z=-1,透视投影:规范化正棱台x=z,x=-z,y=zy=-z,z=-zmin,z=-1,2023/2/15,55,平行投影空间的规范化(1),2023/2/15,56,平行投影空间的规范化(2),引入记号:,2023/2/15,57,平行投影空间的规范化(3),变换1:平移使窗口中心与坐标原点重合。,2023/2/15,58,平行投影空间的规范化(4),变换2:关于Z轴的错切变换使投影方向与Z轴重叠,2023/2/15,59,平行投影空间的规范化(5),2023/2/15,60,平行投影空间的规范化(6),变换3:平移及比例变换:使,2023/2/15,61,平行投影空间的规范化(7),变换4:比例变换使,2023/2/15,62,平行投影空间的规范化(8),上述变换复合得到:,其中WSU,WSV分别为窗口的半边长。,2023/2/15,63,平行投影空间的规范化(9),经上述变换作用后,观察坐标系下的指定平行投影变换效果将等价于在规格化投影空间中进行正平行投影变换。平行投影规范视见体,2023/2/15,64,透视投影空间的规范化(1),目的:使不同条件下的透视投影可统一为正平行投影规规范步骤:变换为规格化的正棱台,变换为规格化平行投影空间,2023/2/15,65,透视投影空间的规范化(2),2023/2/15,66,2023/2/15,67,透视投影空间的规范化(3),引入记号:,2023/2/15,68,透视投影空间的规范化(4),变换1:平移使投影中心与坐标原点重合,2023/2/15,69,透视投影空间的规范化(5),变换1以后的投影空间参数:,2023/2/15,70,透视投影空间的规范化(6),变换2:错切使投影参考点与窗口中心连线与Z轴重合,在un平面上的错切效果示例图,2023/2/15,71,透视投影空间的规范化(7),错切变换应使窗口中心由,2023/2/15,72,透视投影空间的规范化(8),推导出错切变换矩阵,2023/2/15,73,透视投影空间的规范化(9),变换2后的投影空间参数:,2023/2/15,74,透视投影空间的规范化(10),变换3:缩放变换使投影空间规范化,2023/2/15,75,透视投影空间的规范化(11),上述变换复合为:,此时,投影空间为规范化正棱台透视投影规范视见体,2023/2/15,76,透视变换,上述正棱台可以经过透视变换成为正棱住:放大前截面:nmin-1。等价于把投影中心移到无穷远处,使前后截面大小相等。,透视变换使得透视投影的规范视见体变换为平行投影规范视见体。,2023/2/15,77,在正规投影空间下的三维裁剪,规范化平行投影空间二维空间的裁剪算法的推广例:空间线段的编码裁剪算法。使用齐次坐标,2023/2/15,78,空间线段的裁剪,编码法:扩展Cohen-Sutherland算法采用6位外码:第1位点在视见体的上面y1第2位点在视见体的下面y1第4位点在视见体的左面x0,2023/2/15,79,续:,分别记线段端点P1,P2的编码为code1,code2当code1=000000且code2=000000,接受直线P1P2;当code1&code2!=000000,拒绝P1P2;否则进行线段分割,最多进行6次分割:例:平面y=1与P1P2相交:,由于采用了编码方法,参数t的取值范围无需进行测试,2023/2/15,80,续,Liang-Barsky算法的扩展,2023/2/15,81,续:,2023/2/15,82,在齐次坐标系中裁剪,平行投影规范视见体下的裁剪坐标系:OXYZW W=1三维规范化视见体的坐标表示:在齐次坐标系下的裁剪与原坐标系的裁剪结果一致,2023/2/15,83,续:,透视投影情况下的裁剪透视投影规范视见体经过透视变换变换为平行投影规范视见体坐标系:OXYZW 区别:W0 W0规范视见体对应的表面方程随w取值不同而不同裁剪必须在齐次坐标系下完成,以保证结果的正确性。,2023/2/15,84,续:,例:,结论:在区域A和区域B内的裁剪都是必要的。,2023/2/15,85,续:,裁剪效率的提高:分别对区域A和区域B进行两次裁剪代价高方案1:对区域B中的点乘以-1在区域A中进行裁剪方案2:。,2023/2/15,86,正平行投影变换,经上述变换过程,指定投影变换等价于在规范化投影空间下的正平行投影效果。,2023/2/15,87,投影变换实现过程,指定投影方向(平行投影)或投影中心(透视投影)定义投影空间(视见体)投影空间(视见体)的规范化正规投影空间(视见体)下的三维裁剪正平行投影,2023/2/15,88,小结:三维显示流程,2023/2/15,89,本章小结,二维几何变换二维显示流程三维几何变换投影变换三维观察流程,