對極幾何-本質矩陣-基本矩陣


對極幾何-本質矩陣-基本矩陣

轉自知乎文章:https://zhuanlan.zhihu.com/p/33458436

記得之前的相機矩陣,這是針對單個相機的,可我們知道單個相機圖片並不能告訴我們物體的深度信息,這時至少需要兩個相機,這樣在兩視圖間內在的射影幾何關系就是對極幾何,而基本矩陣就算對極幾何的代數表示。

對極幾何

如果僅看一個相機,我們並不能知道深度信息,可如果有兩個相機的話(就像人有兩只眼睛)我們就能得到深度的信息,

上圖O和O'是兩個相機中心,P點是物體所在,如果我們只看左邊圖像 \pi 上的點p,我們不能知道物體到底是在哪,點P1、P2或其他地方,可有了右邊圖像 \pi' 上的p'我們就能得到物體點P

在上圖,我們把兩相機中心的連線OO'成為基線,把他們與觀測物體的平面OO'P成為對極平面,對極平面與兩相機圖像的交線l和l'稱為對極線,而OO'與兩圖像的交點e,e'就是對極點。

隨着觀測點P的上下移動,對極平面也會圍繞基線旋轉

我們可以看到在左圖對極平面旋轉時對極點是不變的,而在相機圖像上所有對極線都會交於對極點,這個對極點就是另一個相機中心在其圖像上的像,當然正如右圖所示,對極點可以在圖像外。

本質矩陣(Essential matrix)

幾何表示是便於理解的,可是計算機並不懂,我們要將其轉為代數形式。

我們知道由相機1到相機2是剛體運動,那么觀測點P在相機1坐標系的坐標就可以通過剛體轉換變成相機2坐標系下,

P'=RP+T\\

其中R和T分別表示旋轉和平移,如果我們將其左叉乘一個T,即 T\times P'=T\times RP+T\times T=T\times RP\\

其中 T\times P' 表示對極平面的法線,若再左點乘一個P'得到

P'(T\times P')=P'(T\times RP)\\

由於P'與法線TxP'是垂直的,所以有

0=P'(T\times RP)\\

我們知道兩向量的叉乘可以轉換為一向量的反對稱矩陣與另一向量的點乘,於是 P'(T\times RP)=P'[T_\times]RP=0\\

[T_\times] 表示T的反對稱矩陣,我們讓 E=[T_\times]R ,那么

P'^TEP=0\\

這個E就是本質矩陣.

基本矩陣

還記得我們將世界坐標系的觀測點轉換到2D圖像點的方法嗎,沒錯,就是用相機矩陣,而相機矩陣又分為內參和外參的,代數表示為 P_{im}=K_{int}\Phi_{ext}P_w\\

K和 \Phi 分別表示內參矩陣和外參矩陣,P_im和P_w分別表示圖像點和世界點,如果我們把經外參矩陣轉換到相機坐標系的世界點稱作P_c,那么上式可化為 P_{im}=K_{int}P_c\\

現在我們考慮左右兩視圖,又由於K是可逆的,有 P_{c,left}=K^{-1}_{int,left}P_{im,left}\\P_{c,right}=K^{-1}_{int,right}P_{im,right}

還記得上面的本質矩陣嗎

P_{c,left}^TEP_{c,right}=0\\

將矩陣相乘

(K^{-1}_{int,left}P_{im,left})^TE(K^{-1}_{int,right}P_{im,right})=0\\ P_{im,left}^T((K^{-1}_{int,left})^TEK^{-1}_{int,right})P_{im,right}=0

我們另 F=((K^{-1}_{int,left})^TEK^{-1}_{int,right}) ,上式化簡為 P_{im,left}^TFP_{im,right}=0\\

而F就是我們的基本矩陣

結尾

關於基本矩陣的性質和計算,希望大家能自己去了解,我就在此打住了

參考資料

  • 《計算機視覺中的多視圖幾何》—Richard等
  • intro to computer vision——Udacity

 

相關網址:

Monocular slam 的理論基礎(1):https://blog.csdn.net/heyijia0327/article/details/50758944

Monocular slam 的理論基礎(2):https://blog.csdn.net/heyijia0327/article/details/50774104

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM