六讲二维及三维空间的变换概念及其矩阵表示课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《六讲二维及三维空间的变换概念及其矩阵表示课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二维 三维空间 变换 概念 及其 矩阵 表示 课件
- 资源描述:
-
1、2023/1/32023/1/3 几何变换 二维变换 齐次坐标系和二维变换的矩阵表示 二维变换的复合 窗口到视口的变换 效率问题 三维变换的矩阵表示 三维变换的复合 坐标系的变换二维及三维空间的变换概念、矩阵表示、三维视图二维、三维空间的变换概念及其矩阵表示二维、三维空间的变换概念及其矩阵表示2023/1/3几何变换几何变换本讲介绍计算机图形学经常用到的基本的二本讲介绍计算机图形学经常用到的基本的二维维和三和三维维几何变换,其几何变换,其中的平移变换、比例变换和旋转变换对很多图形应用程序来说极其中的平移变换、比例变换和旋转变换对很多图形应用程序来说极其重要。重要。许多应用程序或图形子程序软件包
2、需要用到各种变换,例如:一个许多应用程序或图形子程序软件包需要用到各种变换,例如:一个城市规划程序,利用平移变换将表示建筑物和树木的图符移到合适城市规划程序,利用平移变换将表示建筑物和树木的图符移到合适的位置,利用旋转变换确定图符的朝向,以及利用比例变换确定图的位置,利用旋转变换确定图符的朝向,以及利用比例变换确定图符的大小。一般来说,很多应用程序在绘图时都要用到几何变换来符的大小。一般来说,很多应用程序在绘图时都要用到几何变换来改变物体(也称为图符或模板)的位置、方向和大小。本讲还介绍改变物体(也称为图符或模板)的位置、方向和大小。本讲还介绍如何应用三维变换如何应用三维变换(旋转变换、平移变
3、换和比例变换旋转变换、平移变换和比例变换)作为创建三维作为创建三维物体的二维显示过程的一部分。物体的二维显示过程的一部分。2023/1/3 P=RP二维变换二维变换变换前 一座房子的平移变换.变换后 旋转变换矩阵旋转变换矩阵 房子的比例变换。两个方向上的变换比例不同,并且房子改变了位置。比例变换前 比例变换后旋转之前 旋转之后房子的旋转变换,旋转的同时也改变了位置。x=sx xy=sy yx=x+dx,dx=x-x y=y+dy,dy=y-y P=P+T平移变换平移变换比例变换矩阵比例变换矩阵2023/1/3旋转矩阵的推导旋转矩阵的推导小结小结rr正向旋转其中:2023/1/3齐次坐标系和二维
4、变换的矩阵表示齐次坐标系和二维变换的矩阵表示平移矩阵平移矩阵 齐次坐标表示齐次坐标表示P P=T+P =T+P P P=S=S P P P P=R=R P P希望能用一种一致的方法来表示这三种变换。希望能用一种一致的方法来表示这三种变换。将(将(x,y)x,y)附加第三个坐标,于是每个点的坐标都用附加第三个坐标,于是每个点的坐标都用一个三元组一个三元组(x,y,W)来来表示,称为点(表示,称为点(x x,y y)的齐次的齐次坐标。在齐次坐标系中,我们认为两组齐次坐标坐标。在齐次坐标系中,我们认为两组齐次坐标(x,y,W)和和(x,y,W)代表同一点当且仅当代表同一点当且仅当(x,y,W)与与(
5、x,y,W)互为互为倍数倍数,因此因此(2,3,6)和和(4,6,12)是用不同是用不同的三元组坐标表示的同一点。也就是说每个点齐次的三元组坐标表示的同一点。也就是说每个点齐次坐标不唯一。要求齐次坐标中至少有一个不为零,坐标不唯一。要求齐次坐标中至少有一个不为零,即即(0,0,0)是不允许的。如果坐标是不允许的。如果坐标W不为零,那么我不为零,那么我们可以用它作为除数:由们可以用它作为除数:由(x,y,W)得到得到(x/W,y/W,1),它们它们代表同一点。一般来说,当代表同一点。一般来说,当W不为零时,我们不为零时,我们采用采用W为为1 1的坐标,并将的坐标,并将x/W和和y/W称为齐次点称
6、为齐次点(x,y,W)的笛卡儿坐标。而的笛卡儿坐标。而W=0的点被称为无穷远点的点被称为无穷远点,在这里我们不讨论此类点,在这里我们不讨论此类点。平移变换平移变换2023/1/3齐次坐标几何意义齐次坐标几何意义三元组一般用来表示三维空间中三元组一般用来表示三维空间中的点,但是此处是用来表示二维的点,但是此处是用来表示二维空间的点。这两种表示之间具有空间的点。这两种表示之间具有以下联系:如果取所有代表同一以下联系:如果取所有代表同一点的三元组,即所有形式为点的三元组,即所有形式为(tx,ty,W)的三元组(其中的三元组(其中t0),),便可得到三维空间中的一条直线,便可得到三维空间中的一条直线,
7、因此,每一个齐次点就代表了三因此,每一个齐次点就代表了三维空间中的一条直线。又由于我维空间中的一条直线。又由于我们可以将一点的坐标齐次化(通们可以将一点的坐标齐次化(通过除以过除以W)而得到形式为而得到形式为(x,y,1)的的坐标,因此,齐次化的点就形成坐标,因此,齐次化的点就形成了了(x,y,W)空间中的一个平面空间中的一个平面,由等由等式式W=1定义。图中示出了这种联定义。图中示出了这种联系,注意:无穷远点没表示在该系,注意:无穷远点没表示在该平面中。平面中。XYW齐次坐标系,其中示有W=1的平面和投影到该平面上的点P(X,Y,W)平面2023/1/3二维变换的矩阵表示二维变换的矩阵表示两
8、个连续的旋转变换是可叠加的证明留作习题。平移变换平移变换旋转变换旋转变换比例变换比例变换2023/1/3特殊正交阵特殊正交阵(special orthogonal)左上角有个左上角有个22的子矩阵,我们可以将其中的每的子矩阵,我们可以将其中的每一行看作是一个行向量。这两个行向量有以下几一行看作是一个行向量。这两个行向量有以下几个特点:个特点:1)每个都是单位向量。每个都是单位向量。2)每两个向量之间相互垂直每两个向量之间相互垂直(它们的点积为零它们的点积为零)。)。3)如果将每个向量所指的方向旋转如果将每个向量所指的方向旋转R(),那么那么这些方向量便可位于正这些方向量便可位于正x轴、轴、y轴
9、方向上,轴方向上,即即:前两个特点也适用于该前两个特点也适用于该22子矩阵的两个列向量,并且列向量所对应的两个子矩阵的两个列向量,并且列向量所对应的两个方向量就是沿方向量就是沿x轴和轴和y轴正方向的向量轴正方向的向量(i,j,k)i,j,k)经矩阵经矩阵R R变换后而得到的变换后而得到的.因此,当已知旋转变换的结果时,这些特点便因此,当已知旋转变换的结果时,这些特点便为如何构造为如何构造旋转变换矩阵旋转变换矩阵提供了提供了两种有效的方法两种有效的方法。具有这些特性的矩阵称为特殊正交阵具有这些特性的矩阵称为特殊正交阵。特殊正交阵01 sin cos 02023/1/3刚体变换仿射变换刚体变换仿射
10、变换 单位正方体单位正方体 旋转旋转4545度度 在在x轴方向拉伸轴方向拉伸上图是单位正方体先旋转45度,再进行不均匀的比例变换,结果是单位立方体的仿射变换,只保留线段之间的平行关系,不保持长度和角度不变。对于形如:的变换矩阵,若其左上角的主子式是正交的,那么该矩阵变换保角保长。也就是说,一个单位的正方形经该矩阵变换后仍然是一个单位的正方形,特殊正交阵既不会变成单位边长的菱形,也不会变成非单位边长的正方形。这种变换也被称为刚体变换刚体变换,因为进行变换的物体不会有任何变形。任意顺序的旋转、平移变换都等同于这种形式的矩阵。一系列任意的旋转、平移和比例变换的结果又是如何呢?这些变换称为仿射仿射变换
11、变换,它们能够保持直线平行性,但不角和不保长。如上图所示,其中先将一个单位正方体旋转45度,然后进行不均匀的比例变换。很明显,正方体的角度和长度都发生了变化,但那些原来平行的线仍保持平行,再继续进行旋转、比例和平移变换也不会改变线的平行性,R()、S(sx,sy)和和T(dx,dy)都是仿射变换都是仿射变换。R()、T(dx,dy)也是刚体变换是刚体变换保长保角。2023/1/3对单位正方体进行简单的错切变换对单位正方体进行简单的错切变换,每一种变换情况,斜边的长度都超过了每一种变换情况,斜边的长度都超过了1。错切变换错切变换(一种仿射变换)(一种仿射变换)单位正方体 方体在x方向上错切 正方
12、体在y方向上错切二维的错切变换分为两种:沿x轴的错切变换和沿y轴的错切变换。上图示出了沿两个轴错切一个单位正方体的效果。其中a、b是比例常量。注意:SHxx y 1T=x+ay y 1 T,表示在x方向上的比例变化是y的函数。SHyx y 1T=x bx+y 1 T表示在y方向上的比例变化是x的函数。SHx沿沿x轴的错轴的错切变换矩阵切变换矩阵Shy沿沿y轴的轴的错切矩阵错切矩阵2023/1/3二维变换的复合二维变换的复合(例一)例一)现在考虑绕任意一点现在考虑绕任意一点P1旋转物体的问题。旋转物体的问题。1)将将P1点平移到原点;点平移到原点;2)旋转;旋转;3)平移还原平移还原P1点。点。
13、(x1,y1)(x1,y1)2023/1/3二维变换的复合二维变换的复合(例二)例二)关于任意关于任意点点P1比例比例变换一个变换一个物体。物体。2023/1/3二维变换的复合(小结)二维变换的复合(小结)假设我们想要使假设我们想要使图图中的房子以任意点中的房子以任意点P1为中心进行旋转、平移和缩放(比例)变换为中心进行旋转、平移和缩放(比例)变换。这时具体步骤与上述类似:先将点。这时具体步骤与上述类似:先将点P1平移到原点,待完成比例变换和旋转变换后平移到原点,待完成比例变换和旋转变换后再将房子从坐标原点平移到新的位置再将房子从坐标原点平移到新的位置P2,因此记录变换的数据结构可以是包含比例
14、因此记录变换的数据结构可以是包含比例变换因子、旋转角、平移量和变换顺序的数据结构,或者只是简单地记录复合变换变换因子、旋转角、平移量和变换顺序的数据结构,或者只是简单地记录复合变换矩阵的数据结构:矩阵的数据结构:如果如果M1和和M2分别代表一个基本的平移变换、比例变换或旋转变换,那么在什么情分别代表一个基本的平移变换、比例变换或旋转变换,那么在什么情况下有况下有M1M2=M2M1呢?或者说,何时呢?或者说,何时M1和和M2可交换呢?当然,一般来说矩阵乘可交换呢?当然,一般来说矩阵乘法是不可交换的,但是,在下面的特殊情况下,是可以进行交换的:法是不可交换的,但是,在下面的特殊情况下,是可以进行交
15、换的:M1 M2平移变换平移变换 平移变换平移变换比例变换比例变换 比例变换比例变换旋转变换旋转变换 旋转变换旋转变换 比例变换比例变换(sx=sy)旋转变换旋转变换因此,在这些情况下,我们不用关心矩阵乘法的顺序。因此,在这些情况下,我们不用关心矩阵乘法的顺序。T(x2,y2)R()S(sx,sy)T(-x1,-y1)2023/1/3习题习题写出综合变换矩阵.12003456782345678112345678123456782023/1/3窗口到视口的变换窗口到视口的变换2023/1/3窗口到视口的变换步骤窗口到视口的变换步骤将一个空间坐标系的窗口变换到视口的步骤:所期望的结果点坐标由所期望
16、的结果点坐标由P=Mwv x y 1TP 代表了视口内新点坐标代表了视口内新点坐标,x,y,1代表了窗口内点坐标代表了窗口内点坐标.视图变换:就是把用户坐标系表视图变换:就是把用户坐标系表示的点在视口坐标系表示出来示的点在视口坐标系表示出来。2023/1/3窗口的剪切和视口的关系窗口的剪切和视口的关系许多图形软件包将窗口到视口的变换和窗口中输出图元的剪切结合起来,许多图形软件包将窗口到视口的变换和窗口中输出图元的剪切结合起来,上图举例说明了窗口的剪切和视口的关系。上图举例说明了窗口的剪切和视口的关系。空间坐标系中的输出图元被窗口剪切,保留的部分在视口中显示出来空间坐标系中的输出图元被窗口剪切,
17、保留的部分在视口中显示出来。2023/1/3效率问题效率问题要计算一个向量与一个要计算一个向量与一个33的矩阵的乘积的矩阵的乘积MP,则必须则必须做九次乘法和六次加法。做九次乘法和六次加法。上面左侧公式上面左侧公式的的最后一行为固定结构,因此实际操作将变为四次乘法和四次加法:最后一行为固定结构,因此实际操作将变为四次乘法和四次加法:x=x r11+y r12+tx y=x r21+y r22+ty如果有些硬件的矩阵乘法器具有并行加法器和乘法器,那么无需考虑这一效率问如果有些硬件的矩阵乘法器具有并行加法器和乘法器,那么无需考虑这一效率问题。题。旋转方程旋转方程R R()需要进行四次乘法和两次加法
18、,当需要进行四次乘法和两次加法,当角非常小时(只有几度),角非常小时(只有几度),cos非常接近于非常接近于1 1,根据这一点可减少计算量,因此旋转变换公式,根据这一点可减少计算量,因此旋转变换公式可可近似地表示近似地表示成:成:x=x-ysin,y=xsin+y然而,该式只是然而,该式只是x和和y的近似值,每计算一次,都会产生误差积累。如果我们反的近似值,每计算一次,都会产生误差积累。如果我们反复无限次地使用该公式,会使其结果完全变成误差,使得旋转图象看起来就象随复无限次地使用该公式,会使其结果完全变成误差,使得旋转图象看起来就象随意画的线段集合。意画的线段集合。另一种更好的近似方法是在上面
19、式子另一种更好的近似方法是在上面式子的的第二个公式中用第二个公式中用x代替代替x:x=x-ysin,y=xsin+y=(x-y sin)sin+y=x sin+y(1 sin2)这种近似上一个公式这种近似上一个公式要要好。好。2023/1/3三维变换的矩阵表示三维变换的矩阵表示(坐标系坐标系)在齐次坐标系中,二维变换可以用在齐次坐标系中,二维变换可以用33的的矩阵表示,假定我们也用矩阵表示,假定我们也用齐次坐标齐次坐标来表示三维空间中的点,那么三维变换便可用来表示三维空间中的点,那么三维变换便可用44的的矩阵矩阵表示。因此,我们用表示。因此,我们用(x,y,z,W)而不是而不是(x,y,z)来
20、来表示三维空间中的一表示三维空间中的一点,其中若一个四元组是另一个四元组的非零倍数,则认为它们代点,其中若一个四元组是另一个四元组的非零倍数,则认为它们代表同一点,并且四元组表同一点,并且四元组(0,0,0,0)是不允许的。和二维空间一样,任是不允许的。和二维空间一样,任意点意点(x,y,z,W)(W0)的标准表示为的标准表示为(x/W,y/W,z/W,1),将坐标转化将坐标转化成这种形式被称为齐次化,而成这种形式被称为齐次化,而W为零的点则称为无穷远点。同样,为零的点则称为无穷远点。同样,齐次化的几何解释也存在:三维空间中的每一个点可以看作是从四齐次化的几何解释也存在:三维空间中的每一个点可
21、以看作是从四维空间的原点出发的一条线,且齐次化的点组成了四维空间中由简维空间的原点出发的一条线,且齐次化的点组成了四维空间中由简单等式单等式W=1确定的三维子空间。本课中的三维坐标系采用确定的三维子空间。本课中的三维坐标系采用右手系右手系,如右下图所示,按照习惯定义,右手系下的正向旋转的规定是:当如右下图所示,按照习惯定义,右手系下的正向旋转的规定是:当从一个正向轴向原点望去时,则另一个正向轴逆时针旋转从一个正向轴向原点望去时,则另一个正向轴逆时针旋转9090度后与度后与第三个正向轴重合,如下表所示第三个正向轴重合,如下表所示 旋转轴旋转轴 正向旋转的方向正向旋转的方向 x y z y z x
展开阅读全文