矩阵基础+矩阵转置+矩阵乘法+行列式与逆矩阵

发布于:2025-04-17 ⋅ 阅读:(31) ⋅ 点赞:(0)
GPU渲染过程

矩阵

什么是矩阵(Matrix)

向量

    (3,9,88)

      点乘:计算向量夹角

      叉乘:计算两个向量构成平面的法向量。

矩阵

    

       矩阵有3行,2列,所以表示为M32

       获取固定元素M22,表示获取第二行,第二列元素。

向量和矩阵

行矩阵

        M_{13}=\begin{bmatrix} 3 &9 &88 \end{bmatrix}

 列矩阵

        M_{31}=\begin{bmatrix} 3\\ 9\\ 88 \end{bmatrix}

        矩阵实际上是一个数组存储(2维数组),向量也是一个数组(1维数组)

        矩阵是有行(Row)和列(Column)之分

矩阵转置(行变列,列变行)

例:M=\begin{bmatrix} 2 &3 \\ -8 &22 \\ 0& 7 \end{bmatrix}              转置后  M^{T}=\begin{bmatrix} 2 &-8 &0 \\ 3& 22& 7 \end{bmatrix}

矩阵乘法

        矩阵和标量的乘法:矩阵的每个分量,乘以标量

        例:M_{33}=\begin{bmatrix} M_{11}& M_{12} & M_{13} \\ M_{21}& M_{22} & M_{23} \\ M_{31}& M_{32} & M_{33} \end{bmatrix}              M*X=\begin{bmatrix} M_{11}*X& M_{12}*X & M_{13}*X \\ M_{21}*X& M_{22}*X & M_{23}*X \\ M_{31}*X& M_{32}*X & M_{33}*X \end{bmatrix}

矩阵和矩阵乘法

        限制条件:乘号左边的矩阵列数=乘号右边的矩阵行数

        矩阵相乘得出的矩阵:左边矩阵的行数x右边矩阵的列数(M_{43}xM_{35}=M_{45}

        矩阵相乘不满足交换律,满足结合律        

                交换律:3x4=4x3

                结合律:3x4x5=(3x4)x5=3x(4x5)

        矩阵运算

                M1*M2 != M2*M1

                M1*M2*M3=M1*(M2*M3)

        矩阵运算公式

        例:\begin{bmatrix} a_{11} & a_{12}\\ a_{21} &a_{22} \\ a_{31}&a_{32} \\ a_{41}& a_{42} \end{bmatrix} x \begin{bmatrix} b_{11} & b_{12} &b_{13} &b_{14} \\ b_{21}&b_{22} & b_{23} & b_{24} \end{bmatrix} = \begin{bmatrix} c_{11} &c_{12} &c_{13} &c_{14} \\ c_{21}& c_{22} & c_{23}&c_{24} \\ c_{31}& c_{32} &c_{33} &c_{34} \\ c_{41}&c_{42} &c_{43} &c_{44} \end{bmatrix}

        c_{23}=a_{21}*b_{13}+a_{22}*b_{23}

        矩阵相乘技巧

        1.新矩阵的每个元素编号列出

        2.找到左边矩阵对应的行和右边矩阵对应的列,相乘再相加。

Unity向量乘以矩阵

        当向量经过矩阵乘法后,我们可以理解为矩阵对向量进行了变换操作。

        行矩阵与矩阵相乘:\begin{bmatrix} x& y& z \end{bmatrix} * \begin{bmatrix} c_{11} &c_{12} &c_{13} \\ c_{21}&c_{22} &c_{23} \\ c_{31}&c_{32} & c_{33} \end{bmatrix}

        列矩阵与矩阵相乘:\begin{bmatrix} c_{11} &c_{12} &c_{13} \\ c_{21}&c_{22} &c_{23} \\ c_{31}&c_{32} & c_{33} \end{bmatrix} * \begin{bmatrix} x\\ y\\ z \end{bmatrix}

        Unity矩阵与向量运算,普遍采用列矩阵右乘

特殊矩阵

        方阵:行数与列数相同的矩阵,现阶段考虑2x2,3x3,4x4

        对角:

                对角线元素:方阵中,行数和列数相同的元素,就是对角线元素

                非对角线元素:方阵中,除了对角线元素以外的所有其他元素

                对角矩阵:非对角线元素为0,对角线元素是任意值的方阵

                例:M=\begin{bmatrix} 1 & 0 & 0\\ 0& -3 &0 \\ 0& 0& 2 \end{bmatrix}

                数量矩阵:对角线元素相等的对角矩阵

                例:M=\begin{bmatrix} 3 &0 &0 \\ 0& 3 & 0\\ 0& 0 & 3 \end{bmatrix}

                单位矩阵:对角线元素都为1的对角矩阵,单位矩阵乘以另一个矩阵,还是原来的矩阵

                特性:单位矩阵乘以另一个矩阵,还是原来的矩阵

                例:M=\begin{bmatrix} 1 &0 &0 \\ 0&1 &0 \\ 0& 0 & 1 \end{bmatrix}

逆矩阵

        逆矩阵是基于方阵运算出来的

        矩阵的行列式

                由于计算逆矩阵时,行列式会作为除数。因为除法的除数不能为0,所以可以通过

                计算矩阵的行列式,来判定矩阵是否存在逆矩阵。

        行列式表示方式:假设有M矩阵,|M|表示M矩阵的行列式。

        注意:行列式是一个标量

        2x2矩阵的行列式

        

        3x3矩阵的行列式

    

        代数余子式计算

                Cij=-1的i+j次幂*去掉第i行,和第j列组成的矩阵的行列式

                \begin{bmatrix} c_{11} &c_{12} &c_{13} \\ c_{21}&c_{22} &c_{23} \\ c_{31}&c_{32} &c_{33} \end{bmatrix}

                计算每个分量的代数余子式,用于转置,再计算逆矩阵

                标准伴随矩阵:代数余子式构成的矩阵再转置

                逆矩阵计算公式

                        逆矩阵=标准伴随矩阵/行列式

                逆矩阵的表示方法:假设有矩阵M,逆矩阵就是M^{-1}

                特点:

                        逆矩阵的逆矩阵就是原始矩阵M=(M^{-1})^{-1}

                        单位矩阵的逆矩阵,就是单位矩阵本身

                        转置矩阵的逆矩阵,是你矩阵的转置(M^{T})^{-1}=(M^{-1})^{T}

                        两个矩阵相乘的逆矩阵等于后矩阵的逆矩阵乘以矩阵的逆矩阵

                                (AB)^{-1}=B^{-1}A^{-1}

                        重要的几何含义:一个矩阵可以表示一个变换,而逆矩阵可以还原这个变换。

        

    该系列专栏为网课课程笔记,仅用于学习参考。            

        

                        

                        


网站公告

今日签到

点亮在社区的每一天
去签到