文章來自團隊微信公眾號,可以直接搜尋“PrecisionEngineering”關注。

單目相機標定回顧:視覺感測 | 相機標定

從上一節的單目相機標定後,我們得到了相機的內參和外參,能夠透過計算得到影象平面上畫素點的座標與對應的棋盤格平面上的座標。

回憶相機標定時的假設條件,世界座標系的XY平面與棋盤格紙面重合,即Z向座標為零。因此也就無法得出棋盤格上物點和影象平面之間的相對深度。在無先驗知識的情況下,單個靜止的相機無法獲得影象的深度資訊。

2. 可以透過典型的三角測量的方法來實現深度的測量。

視覺感測 | 雙目立體視覺

“Sailing School: Fun with Triangulation & Weird Headsl‘s”

一個關於航海的油管影片,可以大概瞭解航海用三角測距的用法,測量標誌物(如燈塔)的距離來確定船隻在地圖中的位置。

雙目相機同樣採用三角測量的原理:三角形全等條件中,一邊兩角可以確定唯一的三角形,因此也就可以得出特定物點的深度。

在雙目相機的具體實現層面上,則是透過找到兩個相機中對應物理世界點P的兩個對應點Pl和Pr的影象座標,對三角形OlpOr進行求解可以獲得物理世界點P的深度資訊Z。如下圖所示。

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

實際操作過程中,我們拿到的資料是兩個相機拍得的影象,那麼在兩幅影象中找到特定物點對應的兩個像點是求得這個物點深度的關鍵步驟。

3. 如何找到兩個視覺相機影象上的對應點:

視覺感測 | 雙目立體視覺

如圖中所示,左側相機影象平面裡的特定點,對應的右側相機影象平面裡的點會分佈在如圖所示的黑色線段上。

在這裡,引入對極約束的概念。

相機中心的連線OO‘稱為基線(Baseline);

基線與物理座標點P組成的平面OO’P稱為對極平面(Epipolar Plane);

對極平面與兩個相機影象平面的交線pe和p‘e’稱為對極線(Epipolar Lines);

基線與兩個影象平面的交點e和e‘為對極點(Epipoles),也是相機中心對另一個影象平面的像點。

視覺感測 | 雙目立體視覺

圖中可以看到,位於OP射線段上的物理空間點,在左側影象平面的像點始終為點p,在右側影象平面上的像點則分佈線上段p’e‘上;位於O’P射線段上的物理空間點,在左側影象平面的像點始終為點p’,在右側影象平面上的像點則分佈線上段pe上。因此,可以說對極線pe和對極線p’e‘在兩個影象平面上共軛。同時可以看到所有的對極線l都經過對極點e。

如下圖中為雙目相機拍攝影象中的共軛對極線。

視覺感測 | 雙目立體視覺

4。

如何確定對極線。

視覺感測 | 雙目立體視覺

左右兩個

相機座標系

可以透過旋轉矩陣R和平移矩陣T建立聯絡。

視覺感測 | 雙目立體視覺

可以得到如下關係式。

視覺感測 | 雙目立體視覺

由矩陣的叉乘定義

視覺感測 | 雙目立體視覺

其中

視覺感測 | 雙目立體視覺

代入上式中,可以得到

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

圖中X向量和p向量等價,於是有

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

分別是點p和p’的對極線(?)。

E是本質矩陣;求解出本質矩陣E後就能得出對極線的方程。

從相機座標系到影象座標系需要考慮到相機標定時的內參矩陣,x為畫素座標系上的座標,

視覺感測 | 雙目立體視覺

為相機座標系上的座標。K為內參矩陣。則原來的式子變為

視覺感測 | 雙目立體視覺

其中畫素座標系和相機座標系的關係為

視覺感測 | 雙目立體視覺

代入可以得到

視覺感測 | 雙目立體視覺

F稱為基礎矩陣;

5。

基礎矩陣F的求解。

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

8點法:取8個點求解,使得

視覺感測 | 雙目立體視覺

最小。

奇異值分解SVD。

6. 影象矯正

影象矯正把兩個不同方向的影象平面重新投影到頭一個平面且光軸互相平行,這樣兩個相機影象平面的極線也變成水平的。

視覺感測 | 雙目立體視覺

7。

尋找特徵點:滑動視窗匹配

影象矯正後,對應的極線都處於水平狀態,因此可以在對應的極線上採用滑動視窗來進行影象匹配,視窗的尺寸大小影響到深度圖的計算結果。

視覺感測 | 雙目立體視覺

視覺感測 | 雙目立體視覺

8。

總結:

本文主要敘述了雙目專案的基本流程和基本演算法;在實際應用中,有一些演算法可以進一步得到改進,例如求取基礎矩陣時的8點法和找對應特徵點的其他演算法等。