仿射变换的定义与特点

仿射变换(Affine Transformation)是线性变换(如旋转、缩放、剪切)与平移变换的组合,保持直线的平行性和比例关系。数学上可表示为:

[ \begin{pmatrix} x' \ y' \end{pmatrix}

\begin{pmatrix} a & b \ c & d \end{pmatrix} \begin{pmatrix} x \ y \end{pmatrix} + \begin{pmatrix} e \ f \end{pmatrix} ]

其中,矩阵 (\begin{pmatrix} a & b \ c & d \end{pmatrix}) 控制线性变换,向量 (\begin{pmatrix} e \ f \end{pmatrix}) 控制平移。

关键特性

  • 保持直线和平行性。
  • 不保持角度和长度(除非是等距变换)。
  • 包含平移、旋转、缩放、反射和剪切。

映射变换的定义与特点

映射变换(Projective Transformation/Homography)是更一般的变换,用于描述三维空间到二维平面的投影或不同视角间的转换。数学上表示为齐次坐标下的线性变换:

[ \begin{pmatrix} x' \ y' \ w' \end{pmatrix}

\begin{pmatrix} h_{11} & h_{12} & h_{13} \ h_{21} & h_{22} & h_{23} \ h_{31} & h_{32} & h_{33} \end{pmatrix} \begin{pmatrix} x \ y \ 1 \end{pmatrix} ]

最终坐标需除以 (w') 得到 ((x'/w', y'/w'))。

关键特性

  • 保持直线的共线性,但不保持平行性。
  • 可模拟透视效果(如远小近大)。
  • 需要至少4对点求解(仿射变换仅需3对)。

核心区别对比

自由度

  • 仿射变换:6个自由度(矩阵4个参数+平移2个参数)。
  • 映射变换:8个自由度(齐次矩阵的9个参数中比例因子固定)。

几何保持性

  • 仿射变换:平行线在变换后仍平行。
  • 映射变换:平行线可能相交(如铁轨的透视效果)。

应用场景

  • 仿射变换:适用于物体刚体运动或平面形变(如图像平移、旋转)。
  • 映射变换:适用于视角变换、三维投影(如全景拼接、AR标记识别)。

实际应用示例

仿射变换

  • 图像矫正:调整扫描文档的倾斜。
  • 2D动画:对图形进行平移和旋转。

映射变换

  • 虚拟现实:将纹理映射到三维模型表面。
  • 相机标定:校正镜头畸变后的透视投影。

数学联系

仿射变换是映射变换的特例(当 (h_{31}=h_{32}=0) 且 (h_{33}=1) 时)。两者均可通过矩阵运算实现,但映射变换需处理齐次坐标的非线性除法步骤。

Logo

中国智能体开发者社区,聚焦智能体与大模型开发,提供前沿资讯、实用工具链、开源项目及行业案例。通过技术沙龙、开发者大赛等活动,促进经验交流与协作,助力开发者快速构建创新智能应用。

更多推荐