矩阵
向量是标量的数组,矩阵是向量的数组。
n维向量 x (N*M的矩阵) = M维向量
矩阵就是映射。矩阵可以描述任意线性变换,而线性变换的可以拉伸坐标系,但不会弯曲,也不会平移。所以同维度不可以做平移处理。
方阵
行和列相同的矩阵 (2 * 2) (3 * 3) (4 * 4)常用
方阵的对角线元素:即i=j的元素例如: a[1][1]和a[2]a[2]
对角矩阵:所有非对角线元素为0的
单位矩阵:对角矩阵中所有对角线元素值为1
转置矩阵
矩阵乘法
标量乘以矩阵,矩阵的每个元素乘以标量。
矩阵乘以矩阵:
条件:rn 和nc 得到r*c
向量乘以矩阵
注意:行向量,列向量是不同的,计算结果不同,所以应该注意区分。
二维向量*二维矩阵
可以表示旋转和缩放
投影:
正交投影(平行投影):在某个轴用0做缩放,
正交投影属于降维操作,比如3维投影到2维,
其投影被舍弃的维度用0,其他维度用1,处理降维。
二维向量*三维矩阵
有点P移动了[Dx,Dy]到点Q,可以列出一下方程组:
Px +Dx=Qx
Py +Dy=Qy
我们变换一下方程
Px + (0Py) +Dx = Qx
(0Px) + Py + Dx = Qy
矩阵是映射,我们可以得到以下矩阵
| 1 | 0 | dx |
| 0 | 1 | dy |
该矩阵可以表示平移操作
三维向量*三维矩阵
矩阵可以描述任意线性变换,而线性变换的可以拉伸坐标系,但不会弯曲。
常用的变换有:
旋转,缩放,投影,镜像,放射
旋转:
缩放:
投影:
正交投影(平行投影):在某个轴用0做缩放,
正交投影属于降维操作,比如3维投影到2维,
其投影被舍弃的维度用0,其他维度用1,处理降维。
镜像:反射
切变:
如上图的
在其所在轴对其他轴的切变
变换的分类
矩阵2
矩阵的行列式
连写两遍矩阵,左对角线之和减去右对角线
2d中:行列式等于,其两向量拼合的平行四边形面积
3d中:行列式等于,其三向量拼合的六面体体积
矩阵的逆
可以做变换的反向,比如:撤销。
但是有些矩阵是不可逆的,如果出现不可逆矩阵,那将无法还原。
比如:
- 降维操作。
正交矩阵
矩阵乘以矩阵的转置,等于单位矩阵。称为正交矩阵
常规用法不太明白,后期补。
矩阵的正交化:对于一个外部的矩阵进行部分的修复。
4*4的齐次空间
3*3矩阵能表示变换,不能表示平移。
4d矩阵的w维度,常用于处理3d的平移。
即:
| 1 | 0 | 0 | dx |
| 0 | 1 | 0 | dx |
| 0 | 0 | 1 | dy |
| 0 | 0 | 0 | 1 |
透视投影
回顾平行(正交)投影,属于