3D数学基础——矩阵的介绍与使用

矩阵

矩阵就是一个矩形的数字、符号或表达式数组。矩阵中每一项叫做矩阵的元素(Element)。下面是一个2×3矩阵的例子:

                           

矩阵可以通过(i, j)进行索引,i是行,j是列,这就是上面的矩阵叫做2×3矩阵的原因(3列2行,也叫做矩阵的维度(Dimension))。这与你在索引2D图像时的(x, y)相反,获取4的索引是(2, 1)(第二行,第一列)(译注:如果是图像索引应该是(1, 2),先算列,再算行)。

矩阵与标量的加减

矩阵与标量的加减定义如下:

                          

                          

矩阵与矩阵的加减

矩阵与矩阵之间的加减就是两个矩阵对应元素的加减运算,所以总体的规则和与标量运算是差不多的,只不过在相同索引下的元素才能进行运算。这也就是说加法和减法只对同维度的矩阵才是有定义的。

矩阵的数乘

和矩阵与标量的加减一样,矩阵与标量之间的乘法也是矩阵的每一个元素分别乘以该标量。

矩阵相乘

矩阵之间的乘法不见得有多复杂,但的确很难让人适应。矩阵乘法基本上意味着遵照规定好的法则进行相乘。当然,相乘还有一些限制:

  • 只有当左侧矩阵的列数与右侧矩阵的行数相等,两个矩阵才能相乘。
  • 矩阵相乘不遵守交换律(Commutative),也就是说A⋅B≠B⋅A。

2x2矩阵相乘:

       

3x3矩阵相乘:

        3D数学基础——矩阵的介绍与使用_第1张图片

矩阵的转置

对于任意矩阵M,将其转置之后,再转置一次,便会得到原矩阵;

对于任意的对角矩阵,都转置矩阵等于本身。

          3D数学基础——矩阵的介绍与使用_第2张图片

 

矩阵与向量相乘

关于矩阵和向量相乘的注意事项:

  • 结果向量中的每个元素都是原向量与矩阵中单独行或者列的点积;
  • 矩阵中的元素决定了输入向量中特定元素在输出向量中占的比重
  • 矩阵——向量乘法满足对向量加法的分配律

3D数学基础——矩阵的介绍与使用_第3张图片

单位矩阵

单位矩阵是一个除了对角线以外都是0的矩阵:

          3D数学基础——矩阵的介绍与使用_第4张图片

矩阵变换

1. 旋转

在3D空间中旋转需要定义一个角和一个旋转轴;物体会沿着给定的旋转轴旋转特定的角度;在3D空间中每个单位轴都有不同的定义:

沿 x 轴旋转:

              3D数学基础——矩阵的介绍与使用_第5张图片

沿 y 轴 旋转:

               3D数学基础——矩阵的介绍与使用_第6张图片

沿 z 轴 旋转:

               3D数学基础——矩阵的介绍与使用_第7张图片

沿任意轴旋转:

               3D数学基础——矩阵的介绍与使用_第8张图片

2. 缩放

对一个向量进行缩放就是对i向量的长度进行缩放,而保持它的方向不变;缩放向量v¯=(3,2)v¯=(3,2)。我们可以把向量沿着x轴缩放0.5,使它的宽度缩小为原来的二分之一;我们将沿着y轴把向量的高度缩放为原来的两倍。我们看看把向量缩放(0.5, 2)倍所获得的s¯s¯是什么样的:

             3D数学基础——矩阵的介绍与使用_第9张图片

3D空间中定义缩放矩阵:

             3D数学基础——矩阵的介绍与使用_第10张图片

3. 位移 

位移是在原始向量的基础上加上另一个向量从而获得一个不同位置的新向量的过程,从而在位移向量基础上移动了原始向量;位移矩阵定义:

              3D数学基础——矩阵的介绍与使用_第11张图片

4. 正交投影

正交投影的2D矩阵:

            3D数学基础——矩阵的介绍与使用_第12张图片

 正交投影的3D矩阵:

         3D数学基础——矩阵的介绍与使用_第13张图片

向任意直线投影的2D矩阵:(投影由垂直于直线的单位向量n定义

          3D数学基础——矩阵的介绍与使用_第14张图片

垂直于n的平面投影的3D矩阵:

             3D数学基础——矩阵的介绍与使用_第15张图片

             3D数学基础——矩阵的介绍与使用_第16张图片

5. 镜像

沿通过原点且垂直于n的反射轴进行镜像变换的2D矩阵:

          3D数学基础——矩阵的介绍与使用_第17张图片

沿通过原点且垂直于n的平面进行镜像变换的3D矩阵:

          3D数学基础——矩阵的介绍与使用_第18张图片

6. 切变

3D中的切变方法是取出一个坐标,乘以不同的因子再加到其他两个坐标上:

         3D数学基础——矩阵的介绍与使用_第19张图片

7. 透视投影

3D数学基础——矩阵的介绍与使用_第20张图片

1. 中心对称的视图截锥,z轴位于锥体的中央位置

        3D数学基础——矩阵的介绍与使用_第21张图片

2. 不对称的视图截锥

         3D数学基础——矩阵的介绍与使用_第22张图片

矩阵的组合

矩阵的乘法,可以把多个变换组合到一个矩阵中;顶点(x,y,z)将其缩放2倍,然后位移(1,2,3)个单位:

        3D数学基础——矩阵的介绍与使用_第23张图片

用最终的变换矩阵左乘向量得到的结果:

         3D数学基础——矩阵的介绍与使用_第24张图片

当矩阵相乘时,在最右边的矩阵是第一个与向量相乘,所以应该从右向左读矩阵的乘法;

在组合矩阵时,建议先进行缩放、然后是旋转,最后位移;否则他们会相互影响。

矩阵的行列式

方阵M的行列式记为|M| 或者 “det M”,非方阵矩阵的行列式是未定义的。

余子式:

是一个矩阵,对于有r列,c行的M矩阵,记法M(ij)表示从M中除去第i行和第j列后剩下的矩阵,该矩阵称为M矩阵的余子式

3D数学基础——矩阵的介绍与使用_第25张图片

代数余子式:

代数余子式是一个标量,对于M矩阵,给定行列元数的代数余子式等于相应余子式的有符号行列式。

用代数余子式计算nXn阶矩阵的行列式:

从矩阵中任意选择一行或一列,对该行或列中的每一个元素,都乘以对应的代数余子式;这些乘积的和就是矩阵的行列式:

1. 行列式的性质

  • 矩阵积的行列式等于矩阵行列式的积:|AB| =|A||B|
  • 矩阵转置的行列式等于原矩阵的行列式:|M__T| = |M|
  • 如果矩阵的任意行或列全为0,那么它的行列式等于0
  • 交换矩阵的任意两行或两列,行列式变为负
  • 任意行或列的非零积加到另一行或列上不会改变行列式的值

2. 行列式的几何解释

  • 2D中,行列式等于以基向量为了两边的平行四边形的有符号面积;
  • 3D中,行列式等于以变换后的基向量为三边的平行六面体的有符号体积;
  • 行列式的绝对值和面积(2D)、体积(3D)的改变有关;
  • 行列式的符号说明了变换是否包含镜像和投影;矩阵行列式为0包含投影,行列式为负包含镜像。

3. 矩阵行列式计算

2x2 阶矩阵行列式的定义:

3x3阶矩阵的行列式:

3D数学基础——矩阵的介绍与使用_第26张图片

4x4矩阵行列式的计算:

3D数学基础——矩阵的介绍与使用_第27张图片

矩阵的逆

方阵M的逆记作M(-1),两矩阵相乘时结果是单位矩阵:(并非所有的矩阵都有逆,如矩阵某一行或某一列都为0)

利用伴随矩阵求矩阵的逆:

M的“标准伴随矩阵”记作“adj M”:定义为M的代数余子式矩阵的转置矩阵:

3D数学基础——矩阵的介绍与使用_第28张图片

M的标准伴随矩阵是代数余子式矩阵的转置:

3D数学基础——矩阵的介绍与使用_第29张图片

矩阵的逆:

上述M逆的:

3D数学基础——矩阵的介绍与使用_第30张图片

矩阵逆的重要性质:

1. 如果M是非奇异矩阵(可逆),则该矩阵的逆的逆等于原矩阵;

2. 单位矩阵的逆是它本身;

3. 矩阵的转置的逆 等于 它的逆的转置;

4. 矩阵乘积的你等于矩阵的逆的相反顺序的乘积:

5. 奇异矩阵的行列式为 0 ,非奇异矩阵的行列式不等于 0

几何意义

如果向量v用矩阵M来进行变换,用M的逆矩阵再进行变换,将会得到原向量:

3D数学基础——矩阵的介绍与使用_第31张图片

正交矩阵

若方阵M是正交,则当且仅当M与它转置M_t 的乘积等于单位矩阵:

如果一个矩阵是正交,那么它的转置等于它的逆:

正交矩阵对我们非常有用,因为很容易计算它的逆矩阵;

矩阵的正交必须下列条件:

1. 矩阵的每一行都是单位向量

2. 矩阵的所有行互相垂直

你可能感兴趣的:(3D数学基础,矩阵)