基本矩阵与本质矩阵

基本矩阵与本质矩阵

基本矩阵与本质矩阵的数学推导:

假设空间中一点\(P = [X, Y, Z]^T\)

P在相机A相平面坐标为\(P_A = [x_A, y_A, 1]^T\);

P在相机B相平面坐标为\(P_B = [x_B, y_B, 1]^T\);

相机A与相机B的内参矩阵为\(K\),即可以假设A、B是同一个相机,但是空间位姿不同。

假设:

  • \(P_A = K · (R_A · P + T_A)\) (0)
  • \(P_A = K · P\) (1)

即,设\(P\)相对与相机A的旋转矩阵\(R_A\)与平移矩阵\(T_A\)为初始值(\(R_A = I, T_A = 0\)),因为总要有一个参考系,此处就是假设相机A为参考系

对相机B又可以得到:

  • \(P_B = K · (R_B · P + T_B)\) (2)

此处,\(R_B\)\(T_B\)示在\(P\)相机B坐标系的相对于在相机A(初始)坐标系下的旋转与平移。

由(1)得到\(P = K^{-1} · P_A\)

代入(2)得到:

  • $P_B = K · (R_B · K^{-1} · P_A + T_B) $ (3)

给"="左右左乘上\(K^{-1}\),则有:

  • \(K^{-1} · P_B = R_B · K^{-1} · P_A + T_B\) (4)

左右左乘\(T_{Bx}\)\(T_{Bx}\) 满足 \(T_{Bx} · C = T_B \times C\))消去\(T_B\),得到:

  • \(T_{Bx} · K^{-1} · P_B = T_{Bx} · R_B · K^{-1} · P_A\) (5)

对(5)左右左乘\((K^{-1} · P_B)^T\)得到:

  • \((K^{-1} · P_B)^T · T_{Bx} · K^{-1} · P_B = (K^{-1} · P_B)^T · T_{Bx} · R_B · K^{-1} · P_A\) (6)

由于\(T_{Bx} · (K^{-1} · P_B)\) 垂直与 \(T_B\)\((K^{-1} · P_B)\) ,所以(6)“=” 左边为0, 即:

  • \((K^{-1} · P_B)^T · T_{Bx} · R_B · K^{-1} · P_A = 0\) (7)

整理得:

  • \(P_B^T · {K^{-1}}^T · T_{Bx} · R_B · K^{-1} · P_A = 0\) (8)

得到的(8)即为最终表达式,又:

  • \(F = {K^{-1}}^T · T_{Bx} · R_B · K^{-1}\) (基础矩阵)
  • \(E = T_{Bx} · R_B\) (本质矩阵)

从而,\(B^T · F · P_A = 0\) (×)

极线推导:

对(×),可以知道,不同两个位姿拍摄的同一地点的两个(或一个)相机,获取的基础矩阵\(F\)是固定的。

那么,不妨代入一已知点\(P_t = [x_t, y_t, 1]^T\),令\(P_A = P_t\),得:

  • \(P^T · F · P_t = 0\) (9)

其中\(F\)为[3 x 3]矩阵,\(P_t\)为[3 x 1]矩阵,那么\(F · P_A\) 为一个[3 x 1]矩阵,记为\(Q = [fp_1, fp_2, fp3]^T\)

\(P^T\) 为 [1 x 3]矩阵,\(P^T = [x, y, 1]\),则\(P · Q = 0\)展开为:

  • \(x \times fp_1 + y \times fp_2 + fp_3= 0\) (10)

\(Q\)为已知,故(10)为二元一次方程,可以确定一条直线,称为极线

posted @ 2018-08-06 11:54  caibingcheng  阅读(881)  评论(0编辑  收藏  举报