本文接續前文介紹 trifocal tensor 的性質。
Trifocal tensor 表示法
前文用的表示法為 \(T_1, T_2, T_3\),為三個 3*3 的矩陣,而以後會用更直觀的表示法:
- \(a^i_j\) 是矩陣 A 的 i-th row 與 j-th column
- \(T_i^{jk} = a_i^j b_4^k - a_4^j b_i^k\),可以解釋成第 i 個矩陣中的 j-th row 與 k-th column。
- 直線的轉換式為 \(l_i = l'_j l_k'' T_i^{jk}\)。
- 點的 homography 轉換式可寫成:
- \(x''^k=l_j'T_i^{jk}\)
- \(x'^j=l_k''T_i^{jk}\)
Transfer 問題
Transfer 問題為如何利用第一個與第二個 view 的點 x 與 x' 推出第三個點 x''。這裡介紹兩種方法:
- Fundamental matrices:利用前文算出來的 \(F_{31}\) 與 \(F_{32}\),可以計算 epipolar line: \(F_{31}x\) 與 \(F_{32}x'\),利用外積算出兩條 epipolar line 的交點:\(x''=(F_{31}x)\times(F_{32}x')\)。此方法當點 X 在 trifocal plane 時會導致兩條 epipolar line 平行,為 degenerate case。
- Trifocal tensor:利用 point-line-point correspondence,degenerate case 只有當 X 在兩個 view 的中心連線上。
- 計算 \(F_21\)
- 算出一條直線 l',此直線須通過 x' 並與 epipolar line \(l'_e=F_{21}x\) 垂直。假設 \(l'_e=(l_1, l_2, l_3)^T, x'=(x_1, x_2, 1)^T\),則 \(l'=(l_2, -l_1, -x_1l_2+x_2l_1)^T\)
- \(x''^k = x^il'_jT_i^{jk}\)