視覺SLAM 視覺里程計解決方案分析(間接法)

2021-10-08 06:18:21 字數 2847 閱讀 6433

目錄

基本問題

視覺里程計是視覺slam技術的起點,其核心問題同slam技術一樣,主要是定位構圖,但視覺里程計解決的核心是定位問題,也就是相機的位姿。通俗地講就是利用多張影象資訊還原相機的運動

以兩幀影象為例。設空間點p

pp為路標點,p1,

p2p_1,p_2

p1​,p2

​為影象上的投影點。其中p1,

p2p_1,p_2

p1​,p2

​為兩幀影象正確匹配的特徵點,o1,

o2o_1,o_2

o1​,o2

​為影象的座標系。

在o

1o_1

o1​中,p

pp點座標為(x1

,y1,

z1)(x_1,y_1,z_1)

(x1​,y

1​,z

1​),p

1p_1

p1​的座標為(u1

,v1,

z1)(u_1,v_1,z_1)

(u1​,v

1​,z

1​)。

同理,在o

2o_2

o2​中,p

pp點座標為(x2

,y2,

z2)(x_2,y_2,z_2)

(x2​,y

2​,z

2​),p

1p_1

p1​的座標為(u2

,v2,

z2)(u_2,v_2,z_2)

(u2​,v

2​,z

2​)。

同時。座標系o1,

o2o_1,o_2

o1​,o2

​之間的歐式變換矩陣為r

rr(旋轉),t

tt(平移)。

視覺里程計(直接法)的基本問題可描述為,在已知或部分已知上述座標的情況下,求解r

rr,ttt。

根據不同的已知資訊,分為以下不同的解決方案。

各類求解方案

方案一:僅僅採集二維影象(2d-2d)(單目相機)

已知條件:p1(

x1,y

1),p

2(x2

,y2)

p_1(x_1,y_1),p_2(x_2,y_2)

p1​(x1

​,y1

​),p

2​(x

2​,y

2​)。注意z未知.

求解方案:對極約束,求解e=t

∧re=t^\wedge r

e=t∧

r,如何對e

ee進行svd分析,還原出t,r

t,rt,

r。利用三角測量(三角化)可得到p

pp點的深度資訊。

方案二:已知部分三維影象(2d-3d)(雙目相機 or d-rgb相機)

已知條件:p1(

x1,y

1,z1

),p2

(x2,

y2)p_1(x_1,y_1,z_1),p_2(x_2,y_2)

p1​(x1

​,y1

​,z1

​),p

2​(x

2​,y

2​)。注意z

2z_2

z2​未知,此類問題稱為pnp

pnppn

p問題求解方案1:對於pnp

pnppn

p問題的求解方法有很多,如:直接線性變換,ba優化等。當總的來說都是直接求解r,t

r,tr,

t。求解方案2:求解z

2z_2

z2​,得到影象的全部三維資訊,轉換為icp問題(3d-3d)。求解z

2z_2

z2​的方法稱為p3p

p3pp3

p。方案三:已知全部三維影象(3d-3d)(雙目相機 or d-rgb相機)

已知條件:p1(

x1,y

1,z1

),p2

(x2,

y2,z

2)p_1(x_1,y_1,z_1),p_2(x_2,y_2,z_2)

p1​(x1

​,y1

​,z1

​),p

2​(x

2​,y

2​,z

2​)。此類問題稱為icp

icpic

p問題。

解決方案:svd分解,ba優化;

這裡特意提一下ba優化,這是一種同用的非線性優化方法,在slam中應用非常廣泛。

優缺點分析

對極約束對於採集影象的硬體要求低,有著較低的成本,但是求解得到r,t

r,tr,

t有著尺度問題,需要在一開始對t

tt進行歸一化。與此同時,需要利用三角測量才能知道特徵點的深度資訊。

pnp與icp問題在slam中常常混合出現,因為採集的影象可能出現部分影象沒有深度資訊。因此,採用雙目或rgb-d相機避免了尺度問題,但增加了硬體成本。

視覺里程計學習

大四要做畢業設計了,因為保送去了外校,決定畢業 跟研究生導師做。研究生導師是做gps導航的,想發展視覺導航方向,就想讓我做視覺里程計,嘗試把視覺定位研究一下。基本沒有計算機視覺的基礎的我,就這樣子誤打誤撞進了計算機這個深坑。後來發現了清華博士高翔寫的閒半居士部落格,在這裡有了乙個簡單的入門。他這裡還...

里程計 推算定位與視覺里程計

以下內容翻譯自wiki百科。里程計是一種利用從移動感測器獲得的資料來估計物體位置隨時間的變化而改變的方法。該方法被用在許多種機械人系統 輪式或者腿式 上面,來估計,而不是確定這些機械人相對於初始位置移動的距離。這種方法對由速度對時間積分來求得位置的估計時所產生的誤差十分敏感。快速 精確的資料採集,裝...

里程計 推算定位與視覺里程計

以下內容翻譯自wiki百科。里程計是一種利用從移動感測器獲得的資料來估計物體位置隨時間的變化而改變的方法。該方法被用在許多種機械人系統 輪式或者腿式 上面,來估計,而不是確定這些機械人相對於初始位置移動的距離。這種方法對由速度對時間積分來求得位置的估計時所產生的誤差十分敏感。快速 精確的資料採集,裝...