矩阵前乘矩阵后乘——几何变换

发布时间:2026/10/3 13:37:29
矩阵前乘矩阵后乘——几何变换 在2000年前矩阵乘法的规范是行向量表示矩阵后乘其实这种表示更符合信号变换的基向量展开公式但是2000年后规范就改为了列向量表示矩阵前乘在两年前MATLAB将最后没改部分也改成了列向量表示。虽然我不知道为什么改成列向量表示我也无所谓规范是矩阵后乘还是矩阵前乘但是规范才能让我们更方便交流就像洗衣机的高度都是一样的方便装修的道理是一样的。然而python中矩阵向量乘积用的是行向量表示方式又带回了2000年前那些数学基础不好的又表达不清楚的就会让这个世界很混乱。这是我很佩服的一人对这段历史的说明。仿射变换矩阵这些矩阵定义了仿射变换和投影变换包括平移、旋转、刚体变换和相似变换。在接下来的讨论中我将重点关注仿射变换但相同的概念也适用于投影变换。在二维空间中仿射变换矩阵是一个3×33 \times 33×3矩阵它通过矩阵乘法将二维点(u,v)(u, v)(u,v)进行映射如下所示[xy1][abcdef001]×[uv1]A×[uv1] \begin{bmatrix} x \\ y \\ 1 \end{bmatrix} \begin{bmatrix} a b c \\ d e f \\ 0 0 1 \end{bmatrix} \times \begin{bmatrix} u \\ v \\ 1 \end{bmatrix} A \times \begin{bmatrix} u \\ v \\ 1 \end{bmatrix}​xy1​​​ad0​be0​cf1​​×​uv1​​A×​uv1​​当仿射变换如上所示书写时AAA的第三行总是[001][0 \quad 0 \quad 1][001]。因为矩阵出现在它所乘的向量之前称之为前乘约定premultiply convention。还有另一种书写此运算的方式。可以对一切进行转置像这样[xy1][uv1]×[ad0be0cf1][uv1]×B \begin{bmatrix} x y 1 \end{bmatrix} \begin{bmatrix} u v 1 \end{bmatrix} \times \begin{bmatrix} a d 0 \\ b e 0 \\ c f 1 \end{bmatrix} \begin{bmatrix} u v 1 \end{bmatrix} \times B[x​y​1​][u​v​1​]×​abc​def​001​​[u​v​1​]×B在这种形式中矩阵出现在向量之后因此我称之为后乘约定postmultiply convention。请注意AAA和BBB通过矩阵转置相关联AB⊤A B^{\top}AB⊤且BA⊤B A^{\top}BA⊤。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询