首页 > 其他分享 >第五章:矩阵和线性变换

第五章:矩阵和线性变换

时间:2023-10-22 19:11:05浏览次数:42  
标签:线性变换 缩放 变换 矢量 矩阵 旋转 第五章

第五章:矩阵和线性变换

本章将讨论矩阵实现线性变换以及变换的一般性原则。

其实个人更看重这些变换与矩阵几何意义的联系(这也是这本书作者的目的),但本章节还有大量的推导,个人并不喜欢记录这些,可不记录这些,这章就没什么内容了,但记的话又相当于纯抄书了。

所以,我还是……记一些结论。而我们始终要记住上一章得到的结论,这些变换矩阵都是标准基矢量所组成的矩阵变换后得到的基矢量矩阵。而且我们只需关注基矢量就可以了,毕竟还是那句:任意矢量都是基矢量的线性组合,知道了变换后的基矢量,就相当于知道了变换后的所有矢量。

1. 旋转

为了更好说明上面粗字部分,就用个二维旋转矩阵说明一下。
img
我们再看看这个变换的图像:
img
可以看到,它就是基矢量 \(\vec{p}\) 和 \(\vec{q}\) 绕原点旋转\(\theta\)角后的到的新基矢量组成的矩阵。
意识到这点后,我们再看看三维的:
image
image
image
我想这个推导过程并不困难,只是让一个轴不动,其他的进行与二维时类似的旋转。下面是绕任意矢量旋转的变换矩阵(计算过程很多,就不记录了
image

2.缩放

沿主轴缩放可以通过给指定轴乘上标量作为缩放因子来实现:
image
任意方向上的缩放:
image
image

3.投影

image

投影是个降维的过程,我们也可以把它看作沿某方向缩放至0(对比它和缩放的矩阵也可以发现哦)
image
再看看任意线或平面的投影:
image

4.反射

反射也称镜像,是绕某直线或平面“翻转”对象的变换,也可以把它看作是缩放了-1。
image
执行反射的矩阵是:
image

5.错切

错切,也称倾斜变形,是一种“倾斜”坐标空间的变形,但它并不会改变面积和体积。
image
上图的变换矩阵,应该很容易想到:\(H_x(s)=\begin{bmatrix} 1&0\\ s&1 \end{bmatrix}\)。它只是单纯让y轴的基向量往歪偏了点,同理,我们可以得出三维中的错切:
image

6.组合变换

上述这些的变换都可以由矩阵表示,变换就是与变换矩阵相乘,那多个变换矩阵相乘的结果其实就是组合变换矩阵(复合矩阵)。
image
但说到这,你或许会有疑问:为什么与矩阵相乘就是“进行了变换”?如果你没有这个疑问,那说明你对矩阵的几何解释的理解已经七七八八了。如果你仍有疑惑,可以再看看这个视频(甚至可以是整个线性系列的视频,博客园有时点击跳转会失败,可以右键复制链接自行粘贴传送哦)

7.变换的分类

  1. 线性变换:大致可以理解为变换后平行线保持平行的变换(几乎正确的表述)。可以通过矩阵乘法实现的任何变换都是线性变换(也就是本章提到的这些),不包括平移。

  2. 仿射变换:线性变换+平移就是仿射变换,形如\(v'=vM+b\)。

  3. 可逆变换:可以理解为能够“撤销”的变换,除了投影之外的变换都是可逆的。

  4. 保持角度的变换:意如其名,变换后角度的大小或方向不变的变换,包括平移、旋转和均匀缩放。

  5. 正交变换:变换后的长度、角度、面积和体积均保留(符号可能不一样)的变换,包括平移、旋转和反射。

  6. 刚体变换:改变对象的位置和方向但不改变形状的变换(就是正交变换的基础上更严格一些),平移和旋转都是刚体变换,但反射不被认为是严格的刚体变换。

标签:线性变换,缩放,变换,矢量,矩阵,旋转,第五章
From: https://www.cnblogs.com/OwlCat/p/17780496.html

相关文章

  • 第四章:矩阵简介
    第四章:矩阵简介矩阵在3D数学中具有根本意义上的重要性,它们通过定义将矢量从一个坐标空间转换为另一个坐标空间。1.矩阵的数学定义对于具有r行和c列的矩阵,称为\(r\timesc\)矩阵,当希望引用矩阵中的各个元素时,将使用下标表示法。以\(3\times3\)矩阵为例:像上述那样,有相同......
  • cv2 数学基础---矩阵微分
    矩阵微分基础知识定义重要结论应用定义(1)向量对标量求导矩阵对标量求导我们可以看到上述求导过程实际上就是不同函数对变量求导,然后按照向量或者矩阵的形式排列,注意这里结果的结构应该与函数的结构保持一致(2)标量对向量求导标量对矩阵求导这里的理解使同一......
  • Leetcode原题 -- 螺旋矩阵相关
    第一题:54. 螺旋矩阵题目描述:给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。示例:输入:matrix=[[1,2,3],[4,5,6],[7,8,9]]输出:[1,2,3,6,9,8,7,4,5]解题思路:按层遍历,如图所示,找到规律后就差不多了publicList<Integer>spiral......
  • R语言股市可视化相关矩阵:最小生成树|附代码数据
    原文链接:http://tecdat.cn/?p=17835最近我们被客户要求撰写关于股市可视化的研究报告,包括一些图形和统计输出。本文在股市可视化中可视化相关矩阵 :最小生成树在本文示例中,我将使用日数据和1分钟数据来可视化股票数据。我发现以下概念定义非常有用: 连通图:在无向图中,若任......
  • 2D物理引擎 Box2D for javascript Games 第五章 碰撞处理
    2D物理引擎Box2DforjavascriptGames第五章碰撞处理碰撞处理考虑到Box2D世界和在世界中移动的刚体之间迟早会发生碰撞。而物理游戏的大多数功能则依赖于碰撞。在愤怒的小鸟中,小鸟摧毁小猪的城堡时,便是依赖碰撞而实现的;在图腾破坏者中,当神像坠落到图腾上或摔碎在地面上......
  • 统计子矩阵
    统计子矩阵给定一个$N\timesM$的矩阵$A$,请你统计有多少个子矩阵(最小$1\times1$,最大$N×M$)满足子矩阵中所有数的和不超过给定的整数$K$?输入格式第一行包含三个整数$N,M$和$K$。之后$N$行每行包含$M$个整数,代表矩阵$A$。输出格式一个整数代表答案。......
  • 3D游戏开发中的数学知识矩阵详解
    矩阵很多同学没有接触过,所以感觉很难,很复杂,其实只要学过矩阵的同学都知道,矩阵运算并不难。今天我们给大家讲讲游戏开发中的矩阵的运算。1:矩阵是什么?矩阵是描述线性变换的一种数学工具,线性变换指的是使用一次函数从一个空间变换到另外一个空间。例如在空间A中的一个2维向量(xa......
  • 子矩阵的和(二维前缀和)
    一、算法描述上一篇文章介绍了一维前缀和,也就是一个数组的前n项和,这篇文章来介绍一下什么是二维前缀和。含义一维的是前n项的和,那么二维的情况下,表示的则是与左上角形成的矩形和。怎么求一维的递推关系式是s[i]=s[i-1]+a[i];,我们根据含义来思考二维的递推关系式,读......
  • 证明反对称矩阵的秩是偶数
    对反对称矩阵消元,如果有非零元素,不妨假设\(a_{1,2}\neq0\)。定义对\((i,j,k)\)使用操作1表示,第\(i\)行\(\timesk\)加到第\(j\)行然后第\(i\)列\(\timesk\)后加到第\(j\)列。注意到操作完仍是反对称矩阵。可以使用操作1把所有第一行第二行,第一列第二列除了......
  • 2023-10-18:用go语言,给定一个数组arr,长度为n,表示有0~n-1号设备, arr[i]表示i号设备的型
    2023-10-18:用go语言,给定一个数组arr,长度为n,表示有0~n-1号设备,arr[i]表示i号设备的型号,型号的种类从0~k-1,一共k种型号,给定一个k*k的矩阵map,来表示型号之间的兼容情况,map[a][b]==1,表示a型号兼容b型号,map[a][b]==0,表示a型号不兼容b型号,兼容关系是有向图,也就是a型号兼容b型号......