Epipolar Geometry(对极几何)是三维重建的数学基础,用于描述三位场景投影到两张图片上的点之间存在的几何关系。

如图所示,O1,O2分别表示相机的中心点,P表示三维场景中的顶点,p和p'表示顶点P点投影到两个相机平面的像素点,e和e'则表示O1和O2连线与相机平面的交点。O1,O2,P三个点确定的平面叫Epipolar plane(极平面),O1,O2的连线叫Baseline(基线),Baseline与相机平面的交点叫做epipole(极点),在图中为e和e',pe和p'e'叫做Epipolar line(极线),这些术语经常在不同的paper里出现,应该熟悉。虽然我们不知道P点的具体位置,但是P点在两个相机平面的投影需要满足一定的约束条件,即与p点对应的p'点应该在p'e'这条直线上,这就减少了搜索的范围。
一.Homography matrix(单应性矩阵)

Homography matrix表示两个平面上的点之间的变换,下面举几个例子:

需要注意到这两个平面的坐标系的选择,是二维平面坐标系而不是三维坐标系统。
这个一般用在camera calibratiion,在一个平面上放置棋盘样的平面投影到相机平面进行相机校准。

简单旋转相机得到的两幅图像之间的关系,
Homography matrix的用处:

在增强现实中,使用带标记点的共面的点来估算相机的位置进而进行虚实的混合。看图片应该是用的OGRE3D引擎。

透视投影效果的去除和矫正。

全景图片的缝合。
二.Essential matrix(本质矩阵)。






以上是Essential matrix的推导过程及性质,需要注意的是这里的p,p'为齐次坐标下的点,而不是像素坐标。Canonical camera指的是相机的intrinsic参数已知。
三.Fundamental matrix(基础矩阵).




以上是Fundamental matrix的推导过程及性质。
四.Fundamental matrix和Essential matrix的关系


需要说明的是,这里的世界坐标系的原点定义在右边相机的位置。
五.Eight-point Algorithm(八点算法).





八点算法用于估算Fundamental matrix,估算Fundamental matrix还有一个七点算法,感兴趣的可以在网上搜索一下,在此不再骜述。需要特别说明的是八点算法和七点算法都是用于non-calibrated camera,求解calibrated camera还有一个专门的五点算法,不过最近的研究发现,五个点也可以估算Fundamental matrix,具体请参阅CVPR2018的论文Five-point Fundamental Matrix Estimation for Uncalibrated Cameras
浙公网安备 33010602011771号