计算机图形学-作业答案-几何变换

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

几何变换:作业共10题,每题10分,总分100分
1. 有如下使用矩阵表示的三维几何变换:
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡z y x z y x 100001010''' 辅助说明(不计成绩):
1)3*3矩阵的3个列向量与3个行向量分别形成两个基向量集,即两个坐标系,这里分别称为列坐标系与行坐标系。

2)在矩阵中,列坐标系中各基向量(矩阵的3个列向量)的坐标是在假定行坐标系为单位正交坐标系(基向量的模为1,且基向量两两正交)前提下,由行坐标系测量的坐标;相似地,行坐标系中各基向量(矩阵的3个行向量)的坐标是在假定列坐标系为单位正交坐标系的前提下,由列坐标系测量的坐标。

3)对于此题给出的矩阵,假定行坐标系单位正交,则测量出的列坐标系也单位正交;反之,假定列坐标系单位正交,则测量出的行坐标系也单位正交;此矩阵描述的是两个单位正交坐标系间的坐标系变换,矩阵是一个单位正交阵(旋转矩阵)。

(1) 试解释其中的一种运算:⎥⎥⎥⎦

⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-+⎥⎥⎥⎦

⎢⎢⎢⎣⎡=⎥⎥⎥⎦

⎢⎢⎢⎣⎡100001010'''z y x z y x ; 答:
1)使用考察向量在列坐标系下测量的坐标作为系数(线性组合中的各个系数x 、
y 、z 用于调节各列基向量的模,实质上这些系数是坐标变换前,考察向量在列
坐标系下测量的坐标,否则这样的线性组合运算无意义),对矩阵中列坐标系的3个基向量实施线性组合,重新组合为考察向量后(这里理解为向量不变,坐标系、坐标变化),其坐标变换为行坐标系下测量的坐标;
2)此运算的含义是已知考察向量的列坐标系坐标,以坐标和基向量(矩阵中的列)为基础,使用线性组合得到考察向量;(简言之,由坐标计算得到向量) 3)由于3个基向量的坐标为行坐标系下的坐标,则组合后的组合向量坐标亦为行坐标系下的坐标,由此,考察向量的坐标从列坐标系坐标变换到行坐标系坐
标。

(提示:如果矩阵为单位矩阵,行、列坐标系重叠,则列坐标系基向量的坐标可视为自身测量的坐标,从而线性组合后考察向量的坐标也不发生变化)
(2) 试解释其中的一种运算:⎥⎥⎥⎦

⎢⎢⎢⎣⎡⎥⎥⎥⎦

⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦

⎢⎢⎢⎣⎡+⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡-=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡z y x z y x z y x z y x T
T
T
100001010'''; 答:
1)使用列坐标系下测量的考察向量,向矩阵中行坐标系的3个行向量投影,得到考察向量在行坐标系下测量的坐标; 2)由于考察向量变换前的坐标[]T
z y x
是列坐标系下测量的(前一小题已作
解释),那么,内积(投影)运算要能够得以进行,对于矩阵中行坐标系的3个基向量,它们的坐标也必须是列坐标系下测量的,因为只有同一坐标系下测量的向量在一起运算才会有意义;
3)由于是向行坐标系各基向量投影,此运算的含义是在列坐标系下完成考察向量向行坐标系各基向量的投影运算,得到的各投影值即为考察向量在行坐标系下测得的坐标(简言之,由向量计算得到坐标);
(提示:如果矩阵为单位矩阵,行、列坐标系重叠,从而重新投影后考察向量的坐标也不发生变化)
(3) 试作图描述矩阵行向量集与列向量集分别表示的坐标系(作在同一图中)
O 、O ’
X 、Y ’
Y
X ’
Z 、Z ’
O 、O ’分别为行、列坐标系
的原点,它们是重叠的;X 、Y 、Z 是列坐标系的基向量,X ’、Y ’、Z ’是行坐标系的基向量;行坐标系与列坐标系均为单位正交坐标系,两个坐标系间有些基向量是相互重叠的。

2. 二维空间中有如下单位正交阵表示的旋转变换:
⎥⎦⎤⎢⎣⎡-222
22222
(1) 假定行向量集对应的坐标系(行坐标系)为单位正交坐标系,试作图描述
单位正交的行坐标系下,各列向量的方位,观察其是否单位正交(各列模为1,且相互正交);
(2) 假定列向量集对应的坐标系(列坐标系)为单位正交坐标系,试作图描述
单位正交的列坐标系下,各行向量的方位,观察其是否单位正交(各行模为1,且相互正交);
(3) 试结合上面两个小题的结论,试解释为何旋转矩阵的转置矩阵与逆矩阵等
价。

答:
1)此题可从矩阵列向量集的线性组合与行向量集的投影两种角度来解释,这里从行向量集(行坐标系)的角度来解释;
2)旋转矩阵为单位正交阵,用于描述两个单位正交坐标系间的坐标系变换,矩阵行向量的坐标是在列坐标系下测得的,列向量的坐标是在行坐标系下测得的;
X 、Y 为列坐标系的基向量,X ’、Y ’为行坐标系的基向量;以列坐标系测量行坐标系的基向量,相互正交。

X 、Y 为行坐标系的基向量,X ’、Y ’为列坐标系的基向量;以行坐标系测
量列坐标系的基向量,相互正交。

3)若考察向量是列向量,则它与旋转矩阵的行向量的坐标均是列坐标系下测量的,考察向量与矩阵行向量间实施的是投影运算,投影后考察向量的坐标转换到行坐标系下的坐标;
4)若要实施逆变换,将考察向量的坐标从行坐标系变换回列坐标系,则只需转置旋转矩阵,将其列变行、行变列,则行、列坐标系的地位互换,其转换结果为列坐标系下的坐标;
3. 二维空间中有如下几何变换:
⎥⎦
⎤⎢⎣⎡3231 (1) 假定行向量集对应的坐标系(行坐标系)为单位正交坐标系,试作图描述
单位正交的行坐标系下,各列向量的方位;
(2) 假定列向量集对应的坐标系(列坐标系)为单位正交坐标系,试作图描述
单位正交的列坐标系下,各行向量的方位;
(3) 对于一般矩阵,其转置与逆等价吗?
答:对于一般矩阵,其转置与逆不等价。

例如本题(1)小题中的图示,使用行坐标系测量的列向量做线性组合,可以完成列坐标系到行坐标系
1
2
X
X 、Y 为列坐标系(仅为示意图,严格而言,模应为1),其余两个向量为矩阵行向量
1
3
X
X 、Y 为行坐标系(仅为示意图,严格而言,模应为1),其余两个向量为矩阵列向量
的坐标变换;如果仍然使用该图中的列向量作逆变换,则需要向这两个列向量作正交投影,完成行坐标系到列坐标系的坐标变换,但是,这样的逆变换并不能成立。

因为,列坐标系到行坐标系的变换,是通过列向量线性组合来实现,由于假设行坐标系单位正交的前提下,列坐标系并不是正交坐标系,因此线性组合所体现出的坐标系性质也并不是正交坐标系,而是基于“平行四边形法则”的坐标系,简言之,行到列坐标系的变换不是正交坐标系运算得出的。

于是,如果针对同一列坐标系使用正交投影来完成变换,并企图得到列坐标系线性组合的逆变换,在逻辑上是矛盾的。

4. 有如下表示三维空间内几何变换的矩阵:
⎥⎥⎥⎦

⎢⎢⎢⎣⎡-θθ
θθcos sin 0sin cos 00
01
若完成运算了⎥⎥⎥⎦

⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-z y x θθ
θθ
cos sin 0sin cos 00
01
,试解释该运算对向量[]T
z y x 实施的几
何变换;若完成了运算[]⎥⎥⎥⎦

⎢⎢⎢⎣⎡-θθ
θθcos sin 0sin cos 00
01
z y
x
,试解释该运算对向量[]z y
x
实施的几何变换。

答:对于前一种运算,矩阵的行向量与考察向量[]T
z y x
间实施内积运算,有
坐标系变换与向量变换两种理解。

观察矩阵的行向量集,矩阵为单位正交阵,可知对应的几何变换为旋转变换,第一行为行坐标系X ’轴在列坐标系下的坐标,其坐标与列坐标系X 轴在列坐标系下的坐标一致,都是单位向量的标准坐标,若理解为坐标系变换,则坐标系变换前后X 轴未发生变化,可知旋转是绕X 轴进行的,观察行坐标系中Y ’、Z’坐标轴在列坐标系下的坐标可知(可作图说明),行坐标系是列坐标系绕X 轴顺时针旋转θ角度得到的,若看作针对考察向量
[]T
z y x
的向量变换,则是向量绕X 轴逆时针旋转θ角度。

对于后一种运算,矩阵的列向量与考察向量[]z y
x
间实施内积运算,有坐标
系变换与向量变换两种理解。

相对于第一种运算,矩阵的行列向量集互换了角色,因此,若理解为坐标系变换,行坐标系是绕X 轴逆时针旋转θ角度得到的,若看作针对考察向量[]z y
x 的向量变换,
则是向量绕X 轴顺时针旋转θ角度。

5. 三维空间中给定一单位向量[
]
T
z y
x
r r r ,
若要求实现绕该向量旋转角度θ的几何变换,试给出一种旋转矩阵的计算方法。

答:
(1)若要围绕[
]
T
z y
x
r r r 旋转,则需要先作坐标系变换(坐标系旋转)
,将X 、Y 、Z 轴其中之一变换为[
]
T
z y
x
r r r ,这里选用Z 轴,然后绕新坐标系的Z ’轴旋
转考察向量(三维空间中的几何图形),最后将坐标系恢复原样。

由上述分析可知,最终的旋转矩阵可有3个矩阵相乘得到,分别用于完成坐标系旋转、图形旋转、坐标系逆向旋转(恢复)。

(2)构造坐标系旋转矩阵:[
]
T
z y
x
r r r 一定是矩阵的第3行,即新坐标系的Z ’
轴,X ’、Y ’可以任意,只要满足单位正交坐标系结构即可。

因此,可任意给定一单位向量
[]
T
z
y x
a a a (不等于
[]
T
z
y x
r r r
即可),计算
[][]
T
z y
x
T
z
y x
r r r
a a a
⨯(其中⨯表示外积)
,得到的结果作为新坐标系的X ’轴,记为
[]
T
z y x X X X
'''
,即矩阵的第1行,然后计算
[][]
T
z
y
x
T
z y x
r r r X X X
⨯''',得到的结果作为新坐标系的Y ’轴,记为
[]
T
z y x
Y Y Y '''
,即矩阵的第2行。

至此,旋转矩阵构造完毕。

(3)构造图形旋转矩阵:即绕坐标系的Z ’轴旋转θ角度(若未指定旋转方向,则默认指逆时针方向),若理解为等价的坐标系变换,新(行)坐标系是旧(列)坐标系绕Z 轴顺时针旋转θ角度得到的。

矩阵第3行应为[]T
100,第1、2
行分别为新(行)坐标系的X ’、Y ’轴,对于他们在旧(列)坐标系下的坐标,应计算在旧(列)坐标系下将X 、Y 轴绕Z 轴顺时针旋转θ角度后在旧(列)坐标
系(X 、Y 、Z )下的坐标。

可直接写出,X ’为[]T 0sin cos θθ-、
Y ’为[]T
0cos sin θθ(若不熟练,可先作图,然后得到坐标)。

(4)构造坐标系逆向旋转矩阵:此矩阵为第(2)步中的逆变换,单位正交阵(旋转阵)的逆矩阵等价于转置矩阵(参考第2题),因此,将(1)中所得矩阵转置即得所需的逆向旋转矩阵。

最终矩阵可写为:
⎥⎥⎥⎦

⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡z y x z y x z y x z z z y y y
x x x r r r Y Y Y X X X r Y X r Y X r Y X ''''''10
0cos sin 0sin cos ''''''θθ
θθ
6. 若要在三维空间实现平移变换,x 、y 、z 方向上的平移量分别为5、3、9,则相应的变换矩阵应如何表示?
答:平移变换需要使用齐次坐标系,具体表达如下:
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡10
00910030105001
7. 三维空间中有如下组合变换:
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡-z y x 10
0cos sin 0sin cos 10002000310
0cos sin 0sin cos α
αααα
ααα 试解释该变换对任意向量[]T
z y x 实施的几何变换是怎样的。

答:该变换先将坐标系绕Z 轴顺时针旋转α角度,然后将图形沿新坐标系的X ’轴放大3倍,沿Y ’轴放大2倍,沿Z ’轴不放缩,沿坐标轴的放缩完成后,将坐标系绕Z 轴逆时针旋转α角度,即坐标系恢复原状。

8. (1)三维齐次坐标标准化(规范化)过程如下:(符号≌表示同射等价,即仅相差一个比例系数)
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡=⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡≅⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡1/////z y z x z z z y z x z y x 齐次坐标的标准化实质上实现了何种几何变换?
答:将三维空间中的原像点全部映射到z=1这一成像平面上,形成像点,实质上完成了针对标准成像平面(与光心间距离为1)的透视投影变换。

(2)对于标准化的三维齐次坐标,有等价坐标形式如下:
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡≅⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡1//1//z y z x d z y z x 结合齐次坐标标准化实现的几何变换,对于等价的坐标形式,应该如何理解? 答:将三维空间中的原像点全部映射到z=d 这一指定的成像平面上,是齐次坐标标准化的推广,可针对任意成像平面实施透视投影。

9. 使用透视投影,将三维空间(负z 轴半部)映射到z= -5这一平面上,对应的几何变换表示为矩阵应是怎样的? 答:
1)可以使用第8题第(2)小题中的思路:
⎥⎥⎥⎦
⎤⎢⎢⎢⎣⎡-≅⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡1//51//z y z x z y z x 2)如果需要将透视投影表示为矩阵形式,则转换矩阵如下:
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡-05
100
010********* 要实现透视投影,仍需要结合齐次坐标的标准化:
⎥⎥⎥⎥⎦
⎤⎢⎢⎢⎢⎣⎡⎥⎥⎥⎥⎦⎤⎢
⎢⎢⎢⎣⎡-≅⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎣⎡---105
100
010*******
0115/5/5z y x z y z x (注:这里z<0)
10.对于旋转、放缩、平移、透视投影四种几何变换,
(1)可通过矩阵直接实现的是哪些?必须借助齐次坐标系实现的是哪些?
答:旋转、放缩可通过矩阵直接实现,平移、透视投影必须借助齐次坐标系实现。

(2)哪些几何变换肯定不会改变图形的形状?
答:旋转、平移不会改变图形的形状。

(3)哪种几何变换可能会改变图形的形状,但不影响其中的平行性?
答:放缩变换可能改变图形的形状,但不会影响其中的平行性。

(4)哪种几何变换可能会改变图形的形状,并且改变其中的平行性?
答:透视投影可能会改变图形形状,并且改变其中的平行性。

(5)欧式变换、线性变换、仿射变换、射影变换分别包括其中哪些变换?
答:欧式变换包括旋转、平移,不改变图形的形状和量测;线性变换包括旋转、放缩,它们都可以直接用矩阵表示;仿射变换包括旋转、平移、放缩,这些变换保持平行性;射影变换包括旋转、平移、放缩、透视投影。

相关文档
最新文档