3D数学矩阵的更多知识 自动保存的
3D数学 ---- 矩阵的更多学问(2) 保藏 矩阵的逆 另外一种重要的矩阵运算是矩阵的求逆,这个运算只能用于方阵。 运算法则 方阵M的逆,记作M-1,也是一个矩阵。当M与M-1相乘时,结果是单位矩阵。表示为公式9.6的形式: 并非全部的矩阵都有逆。一个明显的例子是若矩阵的某一行或列上的元素都为0, 用任何矩阵乘以该矩阵,结果都是一个零矩阵。假如一个矩阵有逆矩阵,那么称它为可逆的或非奇异的。假如一个矩阵没有逆矩阵,则称它为不行逆的或奇异矩阵。 奇异矩阵的行列式为0,非奇异矩阵的行列式不为0,所以检测行列式的值是推断矩阵是否可逆的有效方法。此外,对于随意可逆矩阵M,当且仅当v=0时,vM=0。 M的”标准伴随矩阵“记作”adjM“,定义为M的代数余子式矩阵的转置矩阵。下面是一个例子,考虑前面给出的3x3阶矩阵M: 计算M的代数余子式矩阵: M的标准伴随矩阵是代数余子式矩阵的转置: 一旦有了标准伴随矩阵,通过除以M的行列式,就能计算矩阵的逆。 其表示如公式9.7所示: 例如为了求得上面矩阵的逆,有: 当然还有其他方法可以用来计算矩阵的逆,比如高斯消元法。很多线性代数书都断 定该方法更适合在计算机上实现,因为它所运用的代数运算较少,这种说法其实是不正确的。对于大矩阵或某些特别矩阵来说,这或许是对的。然而,对于低阶矩 阵,比如几何应用中常见的那些低阶矩阵,标准伴随矩阵可能更快一些。因为可以为标准伴随矩阵供应无分支(branchless)实现,这种实现方法在当今 的超标量体系结构和专用向量处理器上会更快一些。 矩阵的逆的重要性质: 几何说明 矩阵的逆在几何上特别有用,因为它使得我们可以计算变换的”反向“或”相反“变换 ---- 能”撤销“原变换的变换。所以,假如向量v用矩阵M来进行变换,接着用M的逆M-1进行变换,将会得到原向量。这很简洁通过代数方法验证: 矩阵的行列式 在随意方阵中都存在一个标量,称作该方阵的行列式。 线性运算法则 方阵M的行列式记作|M|或“det M”,非方阵矩阵的行列式是未定义的。n x n阶矩阵的行列式定义特别困难,让我们先从2 x 2,3 x 3矩阵起先。 公式9.1给出了2 x 2阶矩阵行列式的定义: 留意,在书写行列式时,两边用竖线将数字块围起来,省略方括号。 下面的示意图能帮助记忆公式9.1,将主对角线和反对角线上的元素各自相乘,然后用主对角线元素的积减去反对角线元素的积。 3 x 3 阶矩阵的行列式定义如公式9.2所示: 可以用类似的示意图来帮助记忆。把矩阵M连写两遍,将主对角线上的元素和反对角线上的元素各自相乘,然后用各主对角线上元素积的和减去各反对角线上元素积的和。 假如将3 x 3阶矩阵的行说明为3个向量,那么矩阵的行列式等于这些向量的所谓“三元组积”。 假设矩阵M有r行c列,记法M{ij}表示从M中除去第i行和第j列后剩下的矩阵。明显,该矩阵有r-1行,c-1列,矩阵M{ij}称作M的余子式。 对方阵M,给定行、列元素的代数余子式等于相应余子式的有符号行列式,见公式9.3: 如上,用记法cij表示M的第i行,第j列元素的代数余子式。留意余子式是一个矩阵,而代数余子式是一个标量。代数余子式计算式中的项(–1)(i+j)有以棋盘形式使矩阵的代数余子式每隔一个为负的效果: n维方阵的行列式存在着多个相等的定义,我们可以用代数余子式来定义矩阵的行列式(这种定义是递归的,因为代数余子式本身的定义就用到了矩阵的行列式)。 首先,从矩阵中随意选择一行或一列,对该行或列中的每个元素,都乘以对应的代数余子式。这些乘积的和就是矩阵的行列式。例如,随意选择一行,如行i,行列式的计算过程如公式9.4所示: 下面举一个例子,重写3x3矩阵的行列式: 综上,可导出4x4矩阵的行列式: 高阶行列式计算的困难性是呈指数递增的。幸运的是,有一种称作”主元选择“的计算方法,它不影响行列式的值,但它能使特定的行或列中除了一个元素(主元)外其他元素全为0,这样仅一个代数余子式须要计算。 行列式的一些重要性质: (1)矩阵积的行列式等于矩阵行列式的积:|AB| = |A||B| 这可以扩展到多个矩阵: |M1 M2 . Mn| = |M1| |M2| . |Mn-1| |Mn| (2)矩阵转置的行列式等于原矩阵的行列式:|MT| = |M| (3)假如矩阵的随意行或列全为0,那么它的行列式等于0. (4)交换矩阵的随意两行或两列,行列式变负。 (5)随意行或列的非零积加到另一行或列上不会变更行列式的积。 几何说明 矩阵的行列式有着特别好玩的几何说明。2D中,行列式等于以基向量为两边的平行四边形的有符号面积(如图9.1所示)。有符号面积是指假如平行四边形相对于原来的方位”翻转“,那么面积变负。 3D中,行列式等于以变换后的基向量为三边的平行六面体的有符号的体积。3D中,假如变换使得平行六面体”有里向外“翻转,则行列式变负。 行列式与矩阵变换导致的尺寸变更相关,其中行列式的肯定值与面积(2D)、体积(3D)的变更相关,行列式的符号说明白变换矩阵是否包含镜像或投影。 矩阵的行列式还能对矩阵所代表的变换进行分类。假如矩阵的行列式为0,那么该矩阵包含投影。假如矩阵的行列式为负,那么该矩阵包含镜像。 4D向量和4x4矩阵不过是对3D运算的一种便利的记忆而已。 4D齐次空间 4D向量有4个重量,前3个是标准的x,y和z重量,第4个是w,有时称作齐次坐标。 为了理解标准3D坐标是怎样扩展到4D坐标的,让我们先看一下2D中的齐次坐 标,它的形式为(x, y, w)。想象在3D中w=1处的标准2D平面,实际的2D点(x, y)用齐次坐标表示为(x, y, 1),对于那些不在w=1平面上的点,则将它们投影到w=1平面上。所以齐次坐标(x, y, w) 映射的实际2D点为(x/w, y/w)。如图9.2所示: 因此,给定一个2D点(x, y),齐次空间中有多数多个点与之对应。全部点的形式都为(kx, ky, k),k≠0。这些点构成一条穿过齐次原点的直线。 当w=0时,除法未定义,因此不存在实际的2D点。然而,可以将2D齐次点(x, y, 0)说明为“位于无穷远的点“,它描述了一个方向而不是一个位置。 4D坐标的基本思想相同,实际的3D点被认为是在4D中w=1“平面“上。4D点的形式为(x, y, z, w),将4D点投影到这个“平面“上得到相应的实际3D点(x/w, y/w, z/w)。w=0时4D点表示“无限远点“,它描述了一个方向而不是一个位置。 4 X 4 平移矩阵 3x3变换矩阵表示的是线性变换,不包括平移。因为矩阵乘法的性质,零向量总 是变换成零向量。因此,任何能用矩阵乘法表达的变换都不包含平移。这很不幸,因为矩阵乘法和它的逆是一种特别便利的工具,不仅可以用来将困难的变换组合成 简洁的单一变换,还可以操纵嵌入式坐标系间的关系