空间几何变换 之 齐次坐标

在欧式空间(笛卡尔空间)中,使用坐标描述2D/3D几何非常合适,例如2维欧式空间中的点表示为(x , y),3维空间中点表示为(x , y , z)。但是这种方法不适用于透视空间,当一个点位于无穷远处时,该点的欧氏空间坐标中会出现∞,这显然不合适,而使用齐次坐标能够很好的解决此问题。

齐次坐标就是在欧氏空间表示的基础上增加一个额外的变量w来表示原本的坐标(X,Y),并同时需要令x = Xw , y = Yw ,最终得到齐次坐标(x, y, w),w为非0变量,只有点在无穷远处时才等于0

而当该点在二维空间的无穷远处时,它的笛卡尔坐标系为(∞,∞),但是在齐次坐标系中令w = 0就能表示它在无穷处了,而不必使用∞来表示
在这里插入图片描述
如上图,将点(X,Y)移动到无穷远处时,可以直接使用齐次坐标(X,Y,0)来表示它。

笛卡尔坐标与齐次坐标是一对多的关系,齐次坐标族(aX,aY,a),(bX,bY,b)等等都表示笛卡尔坐标(X,Y)

齐次坐标的优点

  • 可以表示无穷远点
  • 可以区分向量与点 :
    普通坐标(Ordinary Coordinate)和齐次坐标(Homogeneous Coordinate)之间进行转换:
    (1)从普通坐标转换成齐次坐标时
    如果(x,y,z)是个点,则变为(x,y,z,1);
    如果(x,y,z)是个向量,则变为(x,y,z,0)
    (2)从齐次坐标转换成普通坐标时
    如果是(x,y,z,1),则知道它是个点,变成(x,y,z);
    如果是(x,y,z,0),则知道它是个向量,仍然变成(x,y,z)
  • 有利于各个坐标系之间的转换,关于这一点可以参考另一篇博客:这里 有提到为什么必须要使用齐次坐标

参考资料:
https://www.matongxue.com/madocs/244/
https://blog.csdn.net/janestar/article/details/44244849

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值