文章目录
对极几何
多视图几何利用在不同视点拍摄的图像间关系研究相机或者特征之间的关系,而在多视图几何中最重要的基础就是双视图,如果已经有了一个场景的两个视图以及视图中的对应图像点,则依据相机位置关系,相机性质和三维场景点的位置可以得到图像点的几何关系约束,即对极几何。通过对极几何,我们可以在已知两幅图像中两点是对应关系的前提下,求解两个相机的相对位置和姿态。
如果仅看一个相机,我们并不能知道深度信息,可如果有两个相机的话(就像人有两只眼睛)我们就能得到深度的信息。
上图O和O’是两个相机中心,P点是物体所在,如果我们只看左边图像π上的点p,我们不能知道物体到底是在哪,点P1、P2或其他地方,可有了右边图像π’上的p’我们就能得到物体点P
在上图,我们把两相机中心的连线OO’成为基线,把他们与观测物体的平面OO’P成为对极平面,对极平面与两相机图像的交线l和l’称为对极线,而OO’与两图像的交点e,e’就是对极点。
随着观测点P的上下移动,对极平面也会围绕基线旋转
我们可以看到在左图对极平面旋转时对极点是不变的,而在相机图像上所有对极线都会交于对极点,这个对极点就是另一个相机中心在其图像上的像,当然正如右图所示,对极点可以在图像外。
1. 本质矩阵与基础矩阵
本质矩阵(Essential matrix)
几何表示是便于理解的,可是计算机并不懂,我们要将其转为代数形式。
我们知道由相机1到相机2是刚体运动,那么观测点P在相机1坐标系的坐标就可以通过刚体转换变成相机2坐标系下, P ′ = R P + T P'= RP+T P′=RP+T
其中R和T分别表示旋转和平移,如果我们将其左叉乘一个T,即
T × P ′ = T × R P + T × T = T × R P T×P'= T×RP+T×T=T×RP T×P′=T×RP+T×T=T×RP
其中 表示对极平面的法线,若再左点乘一个P’得到
P ′ ( T × P ′ ) = P ′ ( T × R P ) P'(T×P')= P'(T×RP) P′(T×P′)=P′(T×RP)
由于P’与法线TxP’是垂直的,所以有
0 = P ′ ( T × R P ) 0=P'(T×RP) 0=P′(T×RP)
我们知道两向量的叉乘可以转换为一向量的反对称矩阵与另一向量的点乘,于是
P ′ ( T × R P ) = P ′ [ T × ] R P ) = 0 P'(T×RP)= P'[T×]RP)=0 P′(T×RP)=P′[T×]RP)=0
[ T × ] [T×] [T×]表示 T T T的反对称矩阵,我们让 E = [ T × ] R E=[T×]R E=[T×]R,那么
P ′ T × E P = 0 P'^{T}×EP=0 P′T×EP=0.
这个 E E E就是本质矩阵.
本质矩阵采用的是相机的外部参数,也就是说采用相机坐标(The essential matrix uses CAMERA coordinates),如果要分析数字图像,则要考虑坐标(u,v),此时需要用到内部参数(To use image coordinates we must consider the INTRINSIC camera parameters)
基础矩阵
1)两幅图像之间的约束关系使用代数的方式表示出来即为基本矩阵。
2)基础矩阵F满足: x T F x ′ = 0 x^{T}F{x}'=0 x