三维视觉之基础矩阵

三维视觉之基础矩阵

设空间一点X在左相机坐标系中的坐标为x1=(x1,y1,z1)T,在右相机坐标系中的坐标为x2=(x2,y2,z2)T。该点在左相机成像平面的图像齐次坐标为m1=(u1,v1,1)T,在右相机成像平面的图像齐次坐标为m2=(u2,v2,1)T
左相机的内参数矩阵为K1,右相机的内参数矩阵为K2。设左相机坐标系到右相机坐标的旋转和平移分别为R,t。那么:

x2=Rx1+t

根据相机的成像模型:
s1m1s2m2==K1x1K2x2

注意到:
O2X(O2O1×O1X)

将这些统一到右相机坐标系下:
O2XO2O1O1X===x2tx2t=Rx1+tt=Rx1

代入上式可得:
x2([t]×Rx1)=0

进一步可写为:

mT2KT2[t]×RK11m1=0

mT2Fm1=0

F=KT2[t]×RK11为相机的基本矩阵。

三维视觉之基础矩阵

这里实际上涉及到了对极几何(Epipolar Geometry),其中O1O2X表示极平面,其中x1e1表示极线l1x2e2表示极线l2。根据齐次坐标的原理,l1的方程为:l1=e1×m1l2=e2×m2l1满足:mT1l1=0l2满足:mT2l2=0。结合基本矩阵,可得到:

l1l2==FTm2Fm1