
图7-5-1 坐标变换
空间变换是计算机图形学、计算机视觉、工程制图等领域的核心基础,其本质是通过特定数学规则,将空间中的点、线、面或整个物体进行位置、姿态、形状的调整,而2D空间变换、3D空间变换以及二者之间的投影转换,构成了从平面到立体、从立体到平面的完整变换体系,支撑着各类可视化、建模与交互场景的实现。
2D空间变换是基于二维平面(x-y坐标系)的几何变换,核心是保持点、线的二维属性不变,通过线性变换与平移组合,实现物体的位置、形态调整,其本质可通过矩阵运算统一描述,其中齐次坐标的引入的使得平移、旋转、缩放等变换可通过矩阵乘法统一处理,简化了运算逻辑。
2D空间变换的核心类型可分为基础变换与复合变换两类:
基础变换是构成复杂变换的基础,主要包括三种:一是平移变换;二是旋转变换;三是缩放变换;此外,反射变换(镜像变换)也是常用基础变换,通过以某条直线为对称轴,实现物体的镜像复制,本质是特殊的旋转或缩放组合。
复合变换是将多种基础变换按特定顺序组合,实现复杂的平面变换效果。由于矩阵乘法不满足交换律,变换顺序直接影响最终结果,通常遵循"缩放→旋转→平移"的顺序,通过将各基础变换矩阵相乘,得到复合变换矩阵,从而一次性完成多步变换,大幅提升运算效率。
3D空间变换是2D空间变换的延伸,基于三维空间(x-y-z坐标系),核心是在二维变换的基础上增加了z轴方向的维度,实现物体在三维空间中的位置、姿态、形状调整,其变换逻辑同样依赖矩阵运算,通常采用4×4齐次变换矩阵,可统一表示平移、旋转、缩放等所有变换,简化多变换组合的运算过程。
3D旋转变换是重点与难点,主要分为两类:一是绕坐标轴旋转,最基础的是绕x、y、z三个坐标轴的旋转,每个旋转方向都有对应的变换矩阵,例如绕z轴旋转时,x、y坐标按2D旋转规则变化,z坐标保持不变;二是绕任意轴旋转,需通过罗德里格斯公式推导变换矩阵,先将旋转轴标准化,再结合旋转角度,实现任意方向的旋转,适用于复杂的姿态调整场景。
3D复合变换与2D逻辑一致,通过将多个基础变换矩阵按"缩放→旋转→平移"的顺序相乘,得到复合变换矩阵,实现多步变换的统一计算。此外,3D空间变换还包括欧式变换、相似变换、仿射变换、射影变换等类型,其中欧式变换仅包含旋转与平移,保持物体的长度、夹角与体积;相似变换增加了均匀缩放,保持体积比;仿射变换允许非均匀缩放,仅保持平行性与体积比;射影变换是最一般的变换,仅保持平面的相交与相切关系,自由度最高,适用于从真实世界到相机图像的变换场景。3D空间变换广泛应用于3D建模、游戏角色动画、机器人姿态控制等领域。
2D与3D之间的投影转换,是连接平面与立体的关键,核心是通过投影规则,将3D空间中的物体映射到2D平面(正向投影),或从2D平面的投影信息反推3D空间中的物体形态(反向投影)。由于3D空间具有深度维度(z轴),而2D平面缺乏深度信息,正向投影会产生深度丢失,反向投影则存在多解性,这是投影转换的核心特点,也是实际应用中需要重点解决的问题。
正向投影是将3D物体映射到2D平面的过程,核心是"丢弃深度信息"或"将深度信息转化为2D平面的坐标差异",根据投影光线的特性,主要分为两类,广泛应用于工程制图、相机成像、3D可视化等场景:
反向投影是从2D投影图像反推3D物体形态的过程,核心是"恢复深度信息",由于2D图像丢失了z轴维度的信息,单一2D图像无法唯一确定3D物体的形态,因此反向投影通常需要多个2D投影图像(如不同角度的照片),结合相机参数、投影规则,通过三角测量等方法,恢复物体的3D坐标,实现3D重建。
2D空间变换、3D空间变换及二者的投影转换,构成了空间几何变换的完整体系,三者既相互独立又紧密关联:2D空间变换是基础,为3D变换提供了核心逻辑与方法;3D空间变换是2D变换的维度延伸,通过增加z轴维度,实现立体空间的姿态与形状调整;投影转换则是连接二者的桥梁,实现了平面与立体之间的相互映射。
从本质上看,三类变换均依赖数学矩阵运算,齐次坐标的引入统一了各类基础变换的运算形式,简化了复合变换的计算过程;从应用上看,三者广泛应用于计算机图形学、计算机视觉、工程制图、游戏开发等多个领域,是实现可视化、建模、交互、3D重建的核心技术支撑。理解三者的核心原理、变换类型及投影规则,对于掌握相关领域的核心技术,解决实际工程问题具有重要意义。