對極幾何,PnP,ICP 和BA之間的關係

2021-08-23 14:12:26 字數 972 閱讀 2077

注意這裡的ba 指的就是目標函式中的f函式為普通相機的觀測方程的非線性優化解算方法,所以本文中ba與非線性優化同概念.

對極幾何,pnp,icp 一般都只用於前端,為ba提供初值(這裡的ba可能是前端也可能是後端),但是pnp和icp都可能會用到ba的方法.

ba在前端後端都會用到,前後端也就是所謂的範圍的問題,前端可能只在相鄰幾幀進行ba操作,後端的範圍就要大的多

一般使用八點法計算本質矩陣e.然後通過svd分解出相機的運動r和t.

獲得了相機運動,之後再求解三維點的座標(三角測量).注意和ba的邊緣化是不同的啊.

和ransac的關係:要計算基礎矩陣至少需要8 個點(使用8 點演算法)。點越多越好,可以使用ransac 演算法得到更加穩定的結果。

3d-2d,最少只需要四個點,三個點解算,乙個點驗證.

雙目和rgb-d相機可以從一開始就使用pnp進行解算(雖然不知道為什麼rgbd不直接用icp,卻要用pnp),但是單目相機必須一開始用對極幾何然後才可以用pnp.

pnp可以用線性方法求解,往往是先求相機位姿,再求空間點位置,而非線性優化則是把它們都看成優化變數,放在一起優化。這是一種非常通用的求解方式,我們可以用它對 pnp 或 icp 給出的結果進行優化。在 pnp 中,這個 bundle adjustment 問題,是乙個最小化重投影誤差(reprojection error)的問題。

(三)對極幾何

對極約束理解 1.對於有重疊紋理的兩幀影象,通過特徵點匹配可以找到一些匹配對,這是對極幾何約束的基礎 2.匹配對是由同一空間點在不同畫素平面投影得到的不同畫素座標,以參考幀為基礎,假設空間點為 p 參考幀投影畫素為 p 當前幀投影畫素為 p 由於空間點 p 深度值不確定,因此其可能在參考幀光心 o ...

對極幾何 本質矩陣E和基礎矩陣F

如上圖所示,給定乙個目標點p,以左攝像頭光心ol為原點。點p相對於光心ol的觀察位置為pl,相對於光心or的觀察位置為pr。點p在左攝像頭成像平面上的位置為pl,在右攝像頭成像平面上的位置為pr。注意pl pr pl pr都處於攝像機座標系,其量綱是與平移向量t相同的 pl pr在影象座標系中對應的...

2d 2d對極幾何約束

include iostream include include include include include extra.h use this if in opencv2 using namespace std using namespace cv void find feature match...