文章目录
参考:
https://www.cnblogs.com/clarenceliang/p/6704970.html
3.1. epipolar geometry 对极几何介绍
对极几何(Epipolar Geometry)是Structure from Motion(sfm)问题中,在两个相机位置产生的两幅图像的之间存在的一种特殊几何关系,是sfm问题中2D-2D求解两帧间相机姿态的基本模型。
baseline
极平面epipolar plane
极线epipolar line
极点epipoles
当两个image plane平行时,会出现如下图的情况,极点在无线远处。极线平行与image plane中的u轴。
我们知道,以及p,p’在image plane的座标,可以确定极平面。并假设世界座标系是,之间关系。
从而有M,M’表示从3D点(世界座标系下)到两个image plane的projection metrices(映射矩阵)
3.2. Essential Matrix
首先假设canonical cameras(简单的相机),,那么
is normal to 垂直于
更多的是,由于,所以都在极平面上,我们用两者外积(叉积)构造一个垂直于极平面的向量
.
所以该向量垂直于p,有
矩阵变换:外积变内积:
所以有:
Essential Matrix(本质矩阵) :
(基本矩阵Fundamental Matrix定义类似,相见下文)
E是3x3矩阵,5个自由度,rank(秩)=2,奇异矩阵
利用E和p,p’求极线,和
另一个特征:image plane1中任意一点x(当作一个P点),对应的极线,包含e’点,所以,所以,同理
3.3. Fundamental Matrix
substituting 替代
当不是canonical cameras时,
所以公式为:
我们定义 fundamental matrix(基本矩阵)
F是3x3矩阵,7个自由度
利用F和p,p’求极线,和
当知道了F和一个点p,可以求出p’所在的极线,所以我们不用P点的3D座标,也不用相机内外参,就可以得到p和p‘之间的关系
3.4. (Standard)Eight point Algorithm
1981提出,1995改进
需要8对点:,都有
这个scalar equation(标量等式),只限制了一个维度,需要:
W是Nx9,N大于等于8(通常N会大于8,为了去除噪声)
可以通过奇异值分解(SVD)在最小二乘意义上找到该齐次方程组的解,因为w是不满秩的
解出的预测,可能是满秩的,但实际F是rank=2,所以需要处理下述优化问题,得到rank=2的
这个问题再次用SVD解决,,最优预测为:
3.5. Normalized Eight point Algorithm
magnitude 大小
对于SVD方法,W应该有一个奇异值接近\等于0,其余不等于0。然而的前两个值可能很大,当和相对小的图片对应时,会有一个奇异值很大,剩下的相对小。
先对W进行translation(新座标系的原点位于图像点的质心)和scaling(变换后图像点和原点的均方距离应该为2个像素),两个camera分别用变换矩阵T,T’.
再通过上述计算得到,不过是normalized coordinates,所以要变换乘普通的F
3.6. Image Rectification
当两个image plane平行时(),有
那么对应的极线
l是平行于baseline的,同理l’也是,两者也平行。
用我们得到.
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’后是,那么R是:
,做完R变换后,只需要应用G就可以变换到(f,0,0):
做完G变换后,再用T‘变换回regular image space(规则图像空间),所以是:
之后再找,利用p和p’在三维空间中是一个点优化:
求解:
3x3斜对称矩阵特性 。
有Wa=b以及下图,可求出a,得到,最终得到.
(中间省略一部分,没太看明白)