• 【转】矩阵的几何解释


    先通过向量来理解矩阵。向量[1, -3, 4]可以解释成如下的向量的加法

    任意向量v都可以写成如下扩展形式

    进一步写成:

    右侧的单位就是x, y, z轴,记为nx, ny, nz。我们可以将其写成:

    v=x*nx+y*ny+z*nz

    如果我们用向量p,g,r重写nx, ny, nz意义不变:

    v=xp+yg+zr

    这里p,g,r就称为基向量,在这里它们是笛卡尔坐标轴。事实上,一个坐标系能用任意三个线性无关的向量作基向量来定义,[x,y,z]是向量v在以p,g,r为基向量的坐标系中的表示。以p,g,r为行定义一个3*3矩阵M,得到

    向量[x,y,z]乘以该矩阵,得到

    我们发现它和v的表达式一样,因此我们得到以下结论:

    矩阵的行是坐标系的基向量,一个向量乘以该矩阵就相当于执行了一次坐标转换。如果aM=b,意味着原坐标系下的向量a在M的作用下(具体作用就是坐标变换,新的坐标系基坐标是p, q)转换到向量b。(如果p,q,r如果和nx, ny, nz值一样,则说明坐标系还是原来的坐标系,没有发生操作)

    分别用三个基向量乘以矩阵M,由下式我们发现:矩阵的每一行都能解释为转换后的基向量。

     下面的例子

      

    笛卡尔坐标系下向量a在矩阵M的作用下(具体作用就是坐标变换,新的坐标系基坐标是p, q)转换到向量b。(b的具体坐标值还是用笛卡尔坐标表示,笛卡尔坐标相当于世界坐标系,是根节点坐标系,也是世界坐标系下的绝对位置,但是向量b是向量a经过M变换(包括旋转、伸缩)后产生的。)

    原坐标系下有一幅画,那么经过M=[2 1; -1 2]的变换后得到的效果是旋转拉伸后的图像:

    aM=b,其中a是原坐标(笛卡尔坐标系),此向量相对于坐标系位置如上面左图,M矩阵包含了新的坐标系的基,M的作用是旋转、缩放、投影等,b是a在M操作后新的向量,

    a与原坐标系的相对位置,在进行M操作之后,与新坐标系下的向量跟该坐标系的相对位置应该一样的,即(a与原坐标系x-y的现对位置)等效于(b与变换后坐标系p-q的相对位置)。a向量经过旋转伸缩之后得到新向量b,b的具体位置靠绝对坐标(世界坐标)来表示,也就是用笛卡尔坐标表示。

    比如上面左图中向量a在笛卡尔坐标系中的相对位置确定的(这个相对位置不一定是角度,如果只是旋转,则角度不变,如果有伸缩,则角度会变化),在进行M操作,旋转伸缩之后,得到新的坐标系为p-q,新的向量b与新坐标系的相对位置也是类似于(a与笛卡尔坐标西的相对位置)。M变换前,a是对角线,M变换后,b还是对角线。

     

    aM=b,也可以这样理解,上图中,有一个物体,建立了一个物体坐标系,物体中某一点A连接物体坐标系的原点构成了向量a,M是对这个物体进行的操作(旋转、缩放、投影等),M操作完了之后,物体坐标系相对于物体的方位是不变的(就好比人的前后左后,不管站在什么角度,我的前后左右相对于我的方向是不变的),向量b物体中A点在物体旋转之后新的位置A1与物体原点连接成的向量。但是呢,a和b都采用世界坐标描述绝对位置。

    总结:矩阵的几何意义

    aM=b,其中M=[p;q;r]

    a是世界坐标系下的向量,对a进行M变换,M变换后新的坐标系是以p, q,r 为坐标系的基,向量b是在新的基下的值,且p, q,r 的系数分别是a的三个系数。其中向量b的位置用世界坐标(绝对坐标)来描述。


    原文链接:http://blog.csdn.net/u010821455/article/details/8991947

  • 相关阅读:
    Fragment生命周期详解
    VS常用快捷键
    转载:C#中的泛型
    Vue 引入代码代码编辑器monacoeditor并自定义语法提示
    Monaco Editor 参数配置详解
    关于uniapp生成证书数字签名(.keystore)文件
    C#上传到FTP Server
    Linux下静态编译glib
    简单谈谈haskell
    hi,大家
  • 原文地址:https://www.cnblogs.com/timeObjserver/p/8451192.html
Copyright © 2020-2023  润新知