三维线性变换
一、从二维到三维
二维的核心直觉——“矩阵的每一列 = 基向量的像”——原封不动推广到三维。
三维空间有三条标准基向量:
^=100,^=010,k^=001
设线性变换把三个基向量分别送到:
T(^)=adg,T(^)=beh,T(k^)=cfi
那么3×3 矩阵:
M=adgbehcfi
- 第 1 列(蓝)= ^ 的像
- 第 2 列(红)= ^ 的像
- 第 3 列(绿)= k^ 的像
二、三维矩阵乘向量
任意向量 v=(x,y,z)T=x^+y^+zk^:
Mv=xadg+ybeh+zcfi=ax+by+czdx+ey+fzgx+hy+iz
仍是”行 × 列”:结果第 i 个分量 = 矩阵第 i 行与向量逐项相乘相加。
三、三维空间中的”网格”
三维的”网格”是三维格子。线性变换把它变成平行六面体网格:
三维线性变换的直观效果:
| 变换 | 矩阵(示例) | 效果 |
|---|
| 绕 z 轴旋转 | cosθsinθ0−sinθcosθ0001 | 绕 z 轴转动 |
| x 方向缩放 | 200010001 | x 方向拉长 2 倍 |
| 沿 xy 平面剪切 | 100010101 | 按 z 值偏移 |
绕 z 轴旋转 θ 角
Rz(θ)=cosθsinθ0−sinθcosθ0001
验证:^=(1,0,0)→(cosθ,sinθ,0)——绕 z 轴旋转 θ 角后的 x 轴方向 ✓;k^=(0,0,1)→(0,0,1) 不变 ✓
怎么”看见”三维变换? 二维靠整张网格,三维可以想象”一个装满格子的正方体”被拉伸、旋转、压缩。很多线性代数教材用”3D 网格动画”演示三维变换——这正是 3Blue1Brown 的招牌手法之一。
四、三维中的复合变换
三维矩阵乘法规则与二维完全一样(行 × 列),且同样不满足交换律:
M2M1=M1M2(一般情况)
先作用的矩阵写在右边。例如”先绕 z 旋转再缩放”的复合矩阵 = (缩放矩阵)·(旋转矩阵)。
五、应用:为什么三维线性变换如此重要
| 领域 | 应用 |
|---|
| 计算机图形学 | 3D 物体的旋转、缩放、投影都靠 3×3 矩阵(加上齐次坐标处理平移) |
| 机器人学 | 机械臂末端位姿的变换矩阵 |
| 物理 | 张量、转动惯量的坐标变换 |
| 机器学习 | 神经网络每一层本质是”仿射变换”(矩阵乘法 + 偏置) |
图形学的关键技巧:把一个物体的所有顶点先乘以”旋转矩阵”、再乘以”缩放矩阵”,可以预先合并成一个矩阵,再对每个顶点只做一次乘法——大幅提升渲染性能。
六、如何建立三维直觉(练习建议)
- 想象三个基向量 ^,^,k^ 分别指向 x、y、z 轴正方向
- 给定一个 3×3 矩阵,先看它的三列,想象三个基向量分别”飞”到哪
- 想象整个三维网格跟随基向量变形
- 用”先作用的矩阵在右边”推导复合变换
核心结论:二维的所有直觉(列 = 基向量的像、行 × 列、先右后左、不交换)在三维逐字成立,只是矩阵从 2×2 变成 3×3。抓住”矩阵 = 记录基向量去向的表格”这一条,就抓住了所有维度。
小结
- 三维有三条基向量 ^,^,k^,3×3 矩阵的三列 = 三个基向量的像
- 三维矩阵乘向量仍是行 × 列
- 绕轴旋转、缩放、剪切都有对应的 3×3 矩阵
- 复合变换:先右后左,不满足交换律
- 三维线性变换是图形学、机器人、机器学习的基础
下一章进入 行列式,看线性变换如何改变面积(体积)。