3. epipolar geometry 【cs231a课程笔记】


参考:
https://www.cnblogs.com/clarenceliang/p/6704970.html

3.1. epipolar geometry 对极几何介绍

对极几何(Epipolar Geometry)是Structure from Motion(sfm)问题中,在两个相机位置产生的两幅图像的之间存在的一种特殊几何关系,是sfm问题中2D-2D求解两帧间相机姿态的基本模型。
在这里插入图片描述

baseline O1O2O_1 O_2
极平面epipolar plane O1O2PO_1 O_2P
极线epipolar line pe,pepe,p'e'
极点epipoles e,ee,e'

当两个image plane平行时,会出现如下图的情况,极点在无线远处。极线平行与image plane中的u轴。
在这里插入图片描述
我们知道O1,O2O_1,O_2,以及p,p’在image plane的座标,可以确定极平面。并假设世界座标系是O1O_1O2O1O_2O_1之间关系R,TR,T
在这里插入图片描述
从而有M,M’表示从3D点(世界座标系下)到两个image plane的projection metrices(映射矩阵)
在这里插入图片描述

3.2. Essential Matrix

首先假设canonical cameras(简单的相机),K=K=IK=K'=I,那么
在这里插入图片描述

is normal to 垂直于

更多的是,由于location of p =RTpRTTlocation\ of\ p‘\ = R^Tp'-R^TT,所以RTpRTTRTTR^Tp'-R^TT和R^TT都在极平面上,我们用两者外积(叉积)构造一个垂直于极平面的向量

RTT×(RTpRTT)=RTT×RTp=RT(T×p)R^TT\times(R^Tp'-R^TT)=R^TT\times R^Tp'=R^T(T\times p').

所以该向量垂直于p,有
在这里插入图片描述
矩阵变换:外积变内积:
在这里插入图片描述
所以有:
在这里插入图片描述

Essential Matrix(本质矩阵) E=[TX]RE=[T_X]R

(基本矩阵Fundamental Matrix定义类似,相见下文)
在这里插入图片描述
E是3x3矩阵,5个自由度,rank(秩)=2,奇异矩阵

利用E和p,p’求极线,l=Epl'=Epl=Epl=Ep'

另一个特征:image plane1中任意一点x(当作一个P点),对应的极线l=Exl‘=Ex,包含e’点,所以eT(Ex)=(eTE)x=0e'^T(Ex)=(e'^TE)x=0,所以eTE=0e'^TE=0,同理Ee=0Ee=0

3.3. Fundamental Matrix

substituting 替代

当不是canonical cameras时,
在这里插入图片描述
所以公式为:
在这里插入图片描述我们定义 fundamental matrix(基本矩阵)F=KT[TX]RK1F=K'^{-T}[T_X]RK^{-1}

F是3x3矩阵,7个自由度

利用F和p,p’求极线,l=Fpl'=Fpl=Fpl=Fp'

当知道了F和一个点p,可以求出p’所在的极线,所以我们不用P点的3D座标,也不用相机内外参,就可以得到p和p‘之间的关系

3.4. (Standard)Eight point Algorithm

1981提出,1995改进

需要8对点:pi=(ui,vi,1),pi=(ui,vi,1)p_i=(u_i, v_i, 1), p_i'=(u_i', v_i', 1),都有piFpi=0p_i'Fp_i=0
在这里插入图片描述
这个scalar equation(标量等式),只限制了一个维度,需要:
在这里插入图片描述
在这里插入图片描述

W是Nx9,N大于等于8(通常N会大于8,为了去除噪声)

可以通过奇异值分解(SVD)在最小二乘意义上找到该齐次方程组的解,因为w是不满秩的

解出的预测f^\widehat{f},可能是满秩的,但实际F是rank=2,所以需要处理下述优化问题,得到rank=2的f^\widehat{f}
在这里插入图片描述
这个问题再次用SVD解决,F^=UΣVT\widehat{F}=U\Sigma V^T,最优预测为:
在这里插入图片描述

3.5. Normalized Eight point Algorithm

magnitude 大小

对于SVD方法,W应该有一个奇异值接近\等于0,其余不等于0。然而(ui,vi,1)(u_i,v_i, 1)的前两个值可能很大,当和相对小的图片对应时,会有一个奇异值很大,剩下的相对小。

先对W进行translation(新座标系的原点位于图像点的质心)和scaling(变换后图像点和原点的均方距离应该为2个像素),两个camera分别用变换矩阵T,T’.
在这里插入图片描述
再通过上述计算得到FqF_q,不过FqF_q是normalized coordinates,所以要变换乘普通的F
在这里插入图片描述

3.6. Image Rectification

当两个image plane平行时(R=IR=I),有
在这里插入图片描述
那么对应的极线
在这里插入图片描述
l是平行于baseline的,同理l’也是,两者也平行。

pEp=0p'Ep=0我们得到v=vv=v'.

rectification就是让俩个图片平行

只要通过Normalized Eight Point Algorithm得到F,就可以计算出l,接下来求e,实际中由于误差,所有l不会都交于一点,所以就是优化问题(SVD)
在这里插入图片描述
找到e,e‘后,求H,H’使得将e,e’映射到无穷远(f,0,0)

一般认为H是一个R和一个T,并认为T将中心区域映射到(0,0,1)
在这里插入图片描述
在做完T变换后,认为R将极点映射到(f,0,1),所以如果Te’后是(e1,e2,1)(e_1',e_2',1),那么R是:
在这里插入图片描述
α=1e10α=0\alpha = 1 若e_1' \geq 0否则\alpha=0,做完R变换后,只需要应用G就可以变换到(f,0,0):
在这里插入图片描述
做完G变换后,再用T‘变换回regular image space(规则图像空间),所以H2H_2是:
在这里插入图片描述
之后再找H1H_1,利用p和p’在三维空间中是一个点优化:
在这里插入图片描述
求解:
在这里插入图片描述
在这里插入图片描述
3x3斜对称矩阵特性 A=A3A=A^3
在这里插入图片描述
有Wa=b以及下图,可求出a,得到HAH_A,最终得到H1H_1.
在这里插入图片描述
(中间省略一部分,没太看明白)

发布了6 篇原创文章 · 获赞 0 · 访问量 215
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章