簡單介紹 Epipolar Geometry,並解釋 Epipolar Constraint 成立的原因。
Epipolar Geometry
dL 及 dR 分別代表左、右兩側相機焦點。
場景座標點 Xp 在左側相機的成像座標為 pL,也就是左側相機焦點與場景座標點相連的直接與左側相機影像平面所相交的點。
Epipolar Line:
如果已知左側影像的成像點 pL 的座標,則該點的場景座標 Xp 一定位於左側相機焦點與左側影像的成像點所構成的延伸直線上,雖然無法確認 Xp 在這條直線上的確切位置,不過可以肯定的是,這條延伸直線在右側影像的成像同樣也會是一條直線,所以在右側影像的成像點會位於此像直線上,這條直線也就是 Epipolar Line e(pL)。
Epipolar Plane:
在以影像座標點 pL 及 左、右兩側相機焦點 dL、dR 所構成的平面來看,場景座標 XP 及 右側影像座標點 pR 一定也會位在此平面上,這個平面即稱為 Epipolar Plane。
Epipolar Constraint:
假設某個場景座標點 Xp 在左側相機成像的影像座標點為 pL,則其在右側相機成像的影像座標點一定會位於 Epipolar Line e(pL)。
要注意的一點是,Epipolar Line 會依據左側影像座標點位置的不同而隨之變動。
Epipole:(又稱 Epipolar Point)
所有在右側影像形成的 Epipolar Line 都會相交於同一個點,這個點就稱為 Epipole。這個點同時也是右側影像平面與由左、右兩臺相機焦點 dL、dR所構成的直線所相交的點。
Constraints on Correspondence
顯而易見的,如果將上述論點的 "左側" 及 "右側" 對調,則其分析結果也會成立,所以以哪張影像作為開始並不是太重要。
根據上述的分析結果,在任意一影像的影像座標點,必定會對映到另一影像的 Epipolar Line。這樣的對映關係可以促進計算效率,因為它限制了影像座標點可能出現的位置。
舉例來說,對於每一個出現在影像上的影像座標點,要搜尋其在另一影像上的影像座標座置,只要沿著另一影像的 Epipolar Line 來作搜尋即可。
又或是在另一影像已經數個可能的影像座標點,則可以利用 Epipolar Constraint 來剔除 Outlier。
要完成上述的應用,需要有能將某個影像座標點對映到其 Epipolar Line 的能力,這部份會是本文接下來的重點。
Camera Coordinates and Image Formation
三種座標系統:
世界座標系統 Xw
左、右兩側相機座標系統 XcL 及 XcR
左、右兩側相機座標系統的原點分別為左、右兩側相機的焦點,而 z 軸即為各別的光軸;因此給定一任意三維座標點 XcL,其在左側相機成相的影像座標為:
其中 fL 為焦點到成像平面的距離,也就是焦距。
同樣的表示法也適用於右側相機,只要先將 XcL 轉換為右側相機座標系統;通常轉換的方式會經由 Xw 作轉換。
External Calibration
左側相機的外部相機參數提供了將世界座標轉換成左側相機座標的轉換方式:
XcL = MexL[XwT, 1]T - (2)
又 MexL 為 3x4 矩陣:
MexL = (RL    -RLdwL) - (3)
其中 RL 為 3x3 旋轉矩陣,而 dwL 為左側相機焦點在世界座標系統的座標值。
上述 MexL 的形成原理為:
已知:一物體其世界座標點為 X,左側相機焦點在世界座標系統的座標值為 L,左側相機的旋轉角度為 θ
作法:先將該物體的世界座標作旋轉 θ ,得到 X';接著將 L 也作 θ 的旋轉,得到 L';最後將 X' 減去 L',所得結果即是該物體在左側相機座標系統下的座標 (以 L' 為原點)。
如下圖所示:
同樣的道理,也可以推算出右側相機的外部參數矩陣 MexR。
The Essential Matrix
假定某個三維的場景點 Xw,它的左、右兩側影像座標分別為 pwL、pwR,則根據 Epipolar Constrait,這兩個點會與兩側相機的焦點 dwL、dwR 共平面,因此 Epipolar Constraint 可以寫成:(需注意這邊的座標表示皆以世界座標來表示)
(pwL - dwL)T [ (dwL - dwR) x (pwR - dwR) ] = 0 - (4)
其中 x 指的是 - 外積。
滿足此方程式的原因為:
共平面的兩個向量作外積,其外積值必會垂直此平面,而此外積值與該平面中的任意向量皆為正交,故該外積值與該平面中的任意向量的內積值必為0。
接著,要改寫 Epipolar Constraint 的公式,在外積的運算中,可以利用矩陣與向量相乘來取代:
也就是說:"T(T1, T2, T3) 與 P 的外積運算" 等於 "[T]x 與 P 的矩陣向量運算"。
pwL - dwL = (RL)TPcL
公式左側為兩個世界座標點的座標相差之值,右側為相同的兩個座標點但以相機座標來計算其相差之值,接著再利用該相機的旋轉矩陣,將該相機座標及世界座標之間的旋轉作反旋轉運算,所以等式會成立。
因此公式(4) 可以改寫為:
(pwL - dwL)T [ (dwL - dwR) x (pwR - dwR) ] = 0
=> (pcL)T RL [dwL - dwR]x (RR)T pcR = 0
=> (pcL)T E pcR = 0 - (5)
其中 E 為 3x3 矩陣:
E = RL [dwL - dwR]x (RR)T - (6)
Properties of the Essential Matrix
由算式 (5) 可以得知,任何非零的倍數作用在 E-matrix 上,算式 (5) 的等式仍會成立。
由算式 (6) 可以得知,E-Matrix 的 rank 為 2,包含2個相同的非零奇異值及一個零奇異值。
給定一左側相機的影像座標點 PcL,根據 Epipolar Constraint 算式 (5),則該點在右側相機的影像座標(pcR) 會滿足:
(PcL)T E pcR = 0,令 a = ETPcL,則:
aT pcR = a1p1,cR + a2p2,cR + a3fR = 0
而右側的 Epipole (ecR) 可以被表示為:
ecR = α MexR [(dwL)T, 1]T = α RR(dwL - dwR)
其中 α 為非零常數。
則根據 Epipolar Constraint 算式 (6) ,可以得到:
aT ecR = (pcL)T E ecR = α(pcL)T RL [dwL - dwR]x (RR)T RR (dwL - dwR)
= α(pcL)T RL [dwL - dwR]x (dwL - dwR) = 0
因為任何向量自己跟自己作外積,其值為 0。
相同的算法也可以應用到左側的 Epipole,可以得到結論:
Epipole 存在於每條 Epipolar Line。
Internal Calibration
希望可以將Epipolar Constraint 算式 (5),改寫為以影像像素為座標單位的方式來表示。
相機內部參數矩陣 MinL 可以用來將相機座標轉換為影像座標:
xL = MinLPcL - (7)
舉例來說,某個相機的像素長、高分別為 1/sx、1/sy,焦距為 f,光軸在影像座標的位置為 (ox, oy) (以像素為座標單位),則其內部參數矩陣為:
因此可以利用上述算式 (7) 來改寫 Epipolar Constraint 算式 (5),如下:
(pcL)T E pcR = 0,又因為 pcL = (MinL)-1(xL)
=> ((MinL)-1(xL))T E (MinR)-1 xR = 0
=> (xL)T (MinL)-T E (MinR)-1 xR = 0
=> (xL)T F xR = 0
Fundamental Matrix
承上,將 Epipolar Constraint 以左、右兩張影像的影像座標,以像素為單位表示,可以寫為:
(xL)T F xR = 0 - (9)
其中 Fundamental Matrix 為:
F = (MinL)-T E (MinR)-1 - (10)
其中 M-T 為 M 的反矩陣的轉置矩陣。
和 E-matrix 相同,F-matrix 的 rank 也是 2,不過其兩個非零的奇異值必須不相等。
明確地舉例來說,Epipolar Constraint 算式 (9) 所代表的意思是在左側影像的影像點 xL,則該點在右側影像的成像座標點必定會在 Epipolar Line 上:
aTxR = a1xR + a2yR + a3 = 0
其中 a = FTxL。
目前為止,對於 Fundamental Matrix 及 Essential Matrix 的形成原因已經有作說明,Epipolar Constraint 的公式也有進行推導,接下來是如何求出 Matrix 的值,這部分,待續…。
Estimating the Fundamental Matrix
Reference
Epipolar Geometry
文字內容 或 影像內容 部份參考、引用自網路,如有侵權,請告知,謝謝。
全站熱搜
留言列表