齐次坐标

齐次坐标就是把n维向量用n+1维向量表示,例如:

(8, 4, 2) = (4, 2, 1) = (4, 2)

为什么要用n+1维向量表示?

因为变换矩阵

T= |a b|
   |c d|

没有平移变换的功能。想要使二维图形产生平移, 必须在变换后的坐标中引入平移量 m、n,即

x' = x + m
y' = y + n

显然,运用

[x' y'] = [x y] * |a b|
                  |c d|  

是无法实现的。为了进行平移变换,要给二维点的位置矢量增加一个附加坐标,使之成为三维行向量[x y l],即用点的齐次坐标表示,这样就可以进行运算了。

比如在直角坐标系中,二维点[x y]的齐次坐标通常用三维坐标[Hx Hy H]表示,一个三维点[x y z]的齐次坐标通常用四维坐标[Hx Hy Hz H]表示。在齐次坐标系中,最后一维坐标H称为比例因子

三维直角坐标与其齐次坐标的关系是:

x = Hx / H
y = Hy / H
z = Hz / H

由于 H 的取值是任意的,所以任一点可用多组齐次坐标表示。在一般使用中,总是将H设为“1”,以保持两种坐标的一致。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

code