本文主要是介绍[3D数学基础:图形与游戏开发]读书笔记 第9章(矩阵的更多知识、行列式、逆、正交矩阵、4x4齐次矩阵)未完待续,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
第9章 矩阵的更多知识
矩阵的行列式
- 任何一个
方阵
都存在一个标量,称为行列式,非方阵的行列式是未定义
的 2x2矩阵行列式
3x3矩阵行列式
余子式
从M去除第i行
和第j列
剩余的矩阵
,代数余子式
是标量
如何求出n*n行列式
这里求的是4x4行列式
行列式的重要性质
- 矩阵积的行列式等于矩阵行列式积
|AB| = |A||B|
,这个可以拓展到多矩阵情况 - 矩阵转置的行列式等于原矩阵行列式
∣
M
T
∣
=
∣
M
∣
|M^T| = |M|
∣MT∣=∣M∣
- 矩阵任意一行或任意一列全为0,行列式为0
- 交换矩阵的任意两行或两列,行列式变负
行列式几何解释
2D中
基向量为两边的平行四边形有符号的面积,有符号面积
是指如果平行四边形相对于原来的方位翻转,面积将为负3D中
行列式等于变换后
的基向量平行六面体的有方向体积,有方向体积是指
如果变换后平行六面体由里向外翻转,体积将为负行列式的绝对值
与面积和体积改变有关,行列式的符号
与变换矩阵是否包含镜像或者投影
,如果行列式等于0
,说明变换包含投影
,如果行列式为负
说明包含镜像
矩阵的逆
- 方阵的逆和原方阵等于
单位矩阵
- 如果一个矩阵有逆,那么可以称为它是
可逆的或者是非奇异的
,如果没有逆,说法刚好相反 奇异矩阵行列式为零
,检测行列式的值,可以判断矩阵是否可逆标准伴随矩阵
是M的代数余子式矩阵的转置矩阵,机座adjM
- 一旦知道了
标准伴随矩阵
就可以通过除以M的行列式求得矩阵的逆
其他求矩阵逆的方式
高斯消元法矩阵转置的逆
等于矩阵逆的转置
矩阵乘积的逆
等于相反顺序矩阵逆的乘积
矩阵的逆的几何解释
正交矩阵
- 方阵M是正交的,当且仅当M和它的转置矩阵乘积等于单位向量
M
M
T
=
I
MM^T=I
MMT=I
- 根据上面矩阵逆的性质,矩阵转置的逆等于矩阵逆的转置,可以求得
正交矩阵的转置等于正交矩阵的逆
M
T
=
M
−
1
M^T = M^{-1}
MT=M−1
正交矩阵的几何解释
- 正交矩阵对于求矩阵的逆很方便,但是如果知道这个矩阵是正交的呢?
根据上面的计算可以得知,一个矩阵正交必须满足:
矩阵每一行都为单位矩阵
矩阵所有行互相垂直
- 旋转和镜像是正交的,如果M是正交的
M
T
M^T
MT也是正交的
正交基
一组向量互相垂直但不全是单位向量标准正交基
一组单位向量互相垂直
矩阵的正交化
- 有一些矩阵可以略微违反了正交矩阵,这时可能需要将矩阵正交化,可以采用
施密特正交化和其改进方式
,这个我没看太懂,后面碰到了在研究
4x4齐次矩阵
首先明确一点4D向量和4x4矩阵只是对3D运算的一种方便的记法
2D中的齐次坐标
,形如(x, y, w),想象在w=1平面的3D空间中,齐次坐标表示为(x, y, 1),对于不在w=1平面上的点,投影到w=1平面,所以(x, y, w)在2D实际坐标为(x/w, y/w, w)
3D中的齐次坐标同样(x, y, z, w)在3D实际点坐标为(x/w, y/w, z/w, w)
4x4平移矩阵
- 首先带着问题,为什么要弄出来一个4D坐标?
因为想用矩阵的乘法来代表平移,矩阵的乘法可以通过合并变换矩阵,达到一个变换矩阵包含多种变换(比如即旋转
这篇关于[3D数学基础:图形与游戏开发]读书笔记 第9章(矩阵的更多知识、行列式、逆、正交矩阵、4x4齐次矩阵)未完待续的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!