双目立体视觉1——齐次坐标的理解

前言:前一段时间在看深度学习的视频,等我入了门,再来写深度学习的文章,哈哈哈哈

最近对双目立体视觉感兴趣,正好实验室有师兄在做三维重建,就开始学习了。

 

正文

齐次坐标是多维空间的一个很重要的概念,如果理解不了,以后的学习会有很大困难。但很多地方讲解不够细致,我看到两篇文章后才恍然大悟。在这里记录以便今后学习。

 

1、首先,(1,4,7)代表一个点,还是一个向量?区分两者是引入齐次坐标的原因之一:

假设空间中,基为a,b,c    向量V可以找到坐标(V1,V2,V3),使V=V1a+V2b+V3c

而对于点P,可以找到坐标(P1,P2,P3)使P - 0=P1a+P2b+P3c  (0为0向量,为了表示点P,对原点0进行了位移。)

所以P=P1a+P2b+P3c +0

点和向量分别可以表示为:(以(a,b,c,0)为坐标基矩阵)

 

  (V1,V2,V3,0)*\begin{pmatrix}a \\ b \\ c \\0 \end{pmatrix}        (P1,P2,P3,1)*\begin{pmatrix}a \\ b \\ c \\0 \end{pmatrix} 

所以,(x,y,z,0)表示向量,而(x,y,z,1)表示点,我们就可以区分(x,y,z)到底是点还是向量了。

2、为什么齐次坐标有利于 平移变换

但是不可能找到这样一个矩阵: 它与点无关,只表示平移变换。无论是哪个点,都可以用这个矩阵来平移。(你要是解这个方程,两边同时左乘r逆,会发现这个m矩阵肯定与r有关,不可能是每个点都能用的平移变换)

但是当我们引入新的一维度:,就能找到一个矩阵m=\begin{bmatrix} 1 & 0& 0&0 \\ 0& 1& 0&0 \\ 0& 0& 0& 1\\ t_{x}& t_{y}& t_{z}& 1 \end{bmatrix},使得r\cdot m= \begin{bmatrix} r_{x}& r_{y}& r_{z}& 1 \end{bmatrix}\cdot \begin{bmatrix} 1 & 0& 0&0 \\ 0& 1& 0&0 \\ 0& 0& 1& 0\\ t_{x}& t_{y}& t_{z}& 1 \end{bmatrix}= \begin{bmatrix} r_{x}+ t_{x}& r_{y}+ t_{y}& r_{z}+ t_{z}& 1 \end{bmatrix}

这样就实现了平移,而且平移变换m只与矢量t有关,与哪个点无关。(第四维的1依然表示 它是个点)

 

3、如何变换 普通坐标和齐次坐标

对于空间点P可以有一组齐次坐标\begin{bmatrix} wP_{x} & wP_{y} & wP_{z} & w \end{bmatrix},其中w不为零。例如(1,4,7,1)(0.1,0.4,0.7,0.1)

(2,8,14,2)等。

对于普通点p(p1,p2,p3),三个数同时乘w,加上一维w,就成了齐次坐标。

对于齐次坐标p(p1,p2,p3,m),四个数同时除以m,再减去最后一维,就成了普通坐标。

 

我是对两篇文章进行了整理总结的:

http://www.cnblogs.com/csyisong/archive/2008/12/09/1351372.html

https://www.zhihu.com/question/26655998

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值