第9章 矩阵的更多知识

矩阵的行列式

  • 任何一个方阵都存在一个标量,称为行列式,非方阵的行列式是未定义
  • 2x2矩阵行列式
  • 3x3矩阵行列式
  • 余子式 从M去除第i行第j列剩余的矩阵代数余子式是标量
  • 如何求出n*n行列式 这里求的是4x4行列式

行列式的重要性质

  1. 矩阵积的行列式等于矩阵行列式积 |AB| = |A||B|,这个可以拓展到多矩阵情况
  2. 矩阵转置的行列式等于原矩阵行列式 ∣ M T ∣ = ∣ M ∣ |M^T| = |M| ∣MT∣=∣M∣
  3. 矩阵任意一行或任意一列全为0,行列式为0
  4. 交换矩阵的任意两行或两列,行列式变负

行列式几何解释

  • 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坐标?
    因为想用矩阵的乘法来代表平移,矩阵的乘法可以通过合并变换矩阵,达到一个变换矩阵包含多种变换(比如即旋转有平移)
  • 如下图,可以发现这个4x4的矩阵其实是4D的切变空间(对比第8章的切变内容)

  • 其中w变量可以开关平移部分,因为有些向量代表方向,而有些代表

一般仿射变换(包含平移)

  • 例如
    绕不通过原点的轴旋转
    沿不穿过原点的平面缩放
    沿不穿过原点的平面镜像
    想不穿过原点的平面正交投影
  • 基本思想为:将变换的中心点,平移到原点,然后进行之前的线性变换,然后再将中心点平移回原来位置 形如 T R T − 1 TRT^{-1} TRT−1,T为平移矩阵,R是线性变换

透视投影

  • 学习透视投影结合正交投影(平移投影),正交投影的投影线是平行的,而透视投影的投影线相交于一点称为投影中心,如书的图
  • 投影中心位于投影平面之前,所以投影平面上图像是翻转的。当物体远离投影中心,正交投影的投影图像大小不变,而透视投影的投影图像变小了(远离了中心点,投影线和中心的夹角变小了,投射到平面上自然就变小了)

小孔成像


[3D数学基础:图形与游戏开发]读书笔记 第9章(矩阵的更多知识、行列式、逆、正交矩阵、4x4齐次矩阵)未完待续相关推荐

  1. 3d数学基础:图形和游戏开发(第2版)_游戏引擎编程需要哪些基本数学知识?

    现今,想要从头写一个功能强大的3D引擎,个人的力量恐怕难以胜任,即使能力足够,时间恐怕也不允许.在这个美好的开源时代,你只需具备修改各种引擎的能力便足以满足开发游戏的各项需求.现代游戏引擎的复杂级别已 ...

  2. 3d数学基础图形与游戏开发第二版_游戏开发完整学习路线,都在这里了

    在软件开发中,游戏开发这个方向看起来目标很明确,但其实是个领域很广的方向,入门的时候如果得不到指点一二,很容易误入歧途,相反,如果走这条路之前能得到前人的一些指路,是可以事半功倍的. 平台与编程语言选 ...

  3. 3d数学基础图形与游戏开发 英文版_1850款文字标题字幕条,AE图形预设包,logo生成神器...

    2019最新1850款组文字LOGO动画预设,一键生成! 包含图形元素/字幕/logo/动画转场/背景等 所有的元素都支持AE和PR 所有元素的 颜色.位置.大小.文字.Logo等 都可以修改,包含G ...

  4. 3d数学基础:图形和游戏开发(第2版)_人教版五年级数学上册教学计划进度表

    文末有打印资料的方法 往期回顾: 统编版五年级语文上册第1课<白鹭>视频+课件+练习 统编版五年级语文上册第2课<落花生>视频+课件+练习 统编版五年级语文上册第3课<桂 ...

  5. 3D数学基础:图形与游戏开发---随笔五

    向量运算 5.1 线性代数与几何 数学中专门研究向量的分支称作线性代数. 5.2 符号约定 变量是代表未知量的占位符.本书用不同的字体来区分不同的变量: 标量,用斜体的小谢罗马或者希腊字母表示,如a. ...

  6. 3D数学基础:图形与游戏开发---随笔四

    向量 向量是2D.3D数学研究的标准工具. 4.1 向量--数学定义 对数学家而言,向量就是一个数字列表,对程序员而言则是另一种相似的概念--数组.数学上,一个向量就是一个数组. 数学上,区分向量和标 ...

  7. 3D数学基础:图形与游戏开发---随笔三

    多坐标系 3.1 为什么要使用多坐标系? 不同的情况下使用不同的坐标系更加方便.(定义一个坐标系是为了我们方便描述一件事情,而在不同的领域它有不同的作用,比如相对论) 3.2 一些有用的坐标系 世界坐 ...

  8. 3D数学基础:图形与游戏开发---随笔二

    笛卡尔坐标系统 笛卡尔不仅创立了解析集合,将当时完全分离的代数学和几何学联系到一起,还在回答"怎样判断某件事物是真的?"这个哲学问题上迈出了一大步,使后来的一代代哲学家能够轻松起来 ...

  9. 3D数学基础:图形与游戏开发---随笔一

    简介 1.1 什么是3D数学 3D数学是一门和计算几何相关的学科,计算几何则是研究用数值方法解决几何问题的学科.这两门学科广泛应用于那些使用计算机来模拟3D世界的领域. 1.3 阅读本书需要的基础知识 ...

最新文章

  1. 还在学JVM?我都帮你总结好了(附脑图)
  2. 深度Linux13,Ubuntu 13.04安装Linux Deepin特色软件
  3. 上接稳扎稳打Silverlight(20) - 2.0通信之WebClient, 以字符串的形式上传/下载数据
  4. 如何用#define宏定义多行函数
  5. 超酷的超级DataGrid
  6. 机器学习之数学基础(四)~Lasso Regression回归, L1、L2 Regularization正则化, 回归问题中的损失函数
  7. Kubernetes 网络概念及策略控制(叶磊)
  8. pu learning的建模实践,半监督学习的好方法!
  9. mysql select array_从数据库select查询出来的数组
  10. python之eval函数,map函数,zip函数
  11. 3.3.1网络原理数据链路层之差错控制(检错编码和纠错编码)->(奇偶校验码、CRC循环冗余码、海明码)(转载)
  12. TThread类详解转
  13. easyui combobox根据输入内容动态查找_制作智能下拉菜单,自动筛选想要输入的数据,同事都看呆了...
  14. 现在Web前端培训,哪个机构比较好?
  15. App安全软件防护能力检测
  16. 台式计算机睡眠了怎么唤醒,分享大家几种电脑深度睡眠怎么唤醒方法
  17. java调用ltp_LTP随笔——本地调用ltp之ltp4j
  18. 推荐一个好用的开源的报表平台——JNPF可视化平台
  19. vue - vue中使用西瓜播放器xgplayer
  20. web富文本编辑器的选择のxheditor

热门文章

  1. 实验五 前馈神经网络(2)自动梯度计算 优化问题
  2. ThinkPad 驱动自动安装盘
  3. 标定数据分析-DCM(.DCM)
  4. 组合索引(MySQL查询优化器)
  5. 恶补数据结构与算法2--数组
  6. 转:决断力:领导者逆转危机的必备能力
  7. XSSFWorkbook 根据单元格内容 自动调整行高[自动换行]
  8. 同人文学研究的粗略数据
  9. 【JAVA】-- 期末考试试题含答案(选择、判断、填空、简答)(一)
  10. 实现加减乘除计算器。(c语言)