基於單目視覺的同時定位與地圖構建方法綜述

摘要:

增強現實是一種在現實場景中無縫地融入虛擬物體或信息的技術, 能夠比傳統的文字、圖像和視頻等方式
更高效、直觀地呈現信息,有着非常廣泛的應用. 同時定位與地圖構建作爲增強現實的關鍵基礎技術, 可以用來在未
知環境中定位自身方位並同時構建環境三維地圖, 從而保證疊加的虛擬物體與現實場景在幾何上的一致性. 文中首
先簡述基於視覺的同時定位與地圖構建的基本原理; 然後介紹幾個代表性的基於單目視覺的同時定位與地圖構建方
法並做深入分析和比較; 最後討論近年來研究熱點和發展趨勢, 並做總結和展望.


增強現實需要實時定位設備在環境中的方位.  定位方案雖然已經有很多種, 但多數方案要麼在實際應用中存在諸多侷限, 要麼代價太高難以普及. 比如, GPS 無法在室內及遮擋嚴重的室外環境中使用, 且定位精度較低; 高精度的慣導系統成本太高且難以民用; 基於無線信號的定位方案需要事先佈置使用場景等. 基於視覺的同時定位與地圖構建技術(visual simultaneous localization and mapping, V-SLAM)以 其 硬 件 成 本 低 廉 (一個普通攝像頭即可)、小場景範圍內精度較高、無需預先佈置場景等優勢, 成爲目前一個較常採用的定位方案. 尤其在增強現實應用中, 由於虛擬物體的疊加目標通 常爲圖像/視頻, 因此基於圖像/視頻等視覺信息的 V-SLAM 方案, 對於確保虛實融合結果在幾何上保持一致有着天然的優勢.

VSLAM原理

 


2 代表性單目SLAM方法

a)基於濾波器 filter-based

MonoSLAM

MonoSLAM 是由 Davison 等發明的第一個成功基於單目攝像頭的純視覺 SLAM 系統. MonoSLAM的狀態 x t 由 t 時刻的相機運動參數 C t 和所有三維點位置 X 1 ... X n 構成, 每一時刻的相機方位均帶有一個概率偏差(如圖 2a 所示); 同樣, 每個三維點位置也帶有一個概率偏差, 可以用一個三維橢球表示, 橢球中心爲估計值, 橢球體積表明不確定程度(如圖 2b 所示); 不同場景點之間, 以及場景點和C t 之間均有概率關聯. 在此概率模型下, 場景點投影至圖像的形狀爲一個投影概率橢圓(如圖 2c)MonoSLAM 爲每幀圖像中抽取 Shi-Tomasi角點, 在投影橢圓中主動搜索(active search)特徵點匹配.

傳統 EKF 方法最主要的侷限性如下: 1) 如果 預測函數和更新函數爲非線性(通常 V-SLAM 問題都是非線性的), 那麼 EKF 並不能保證全局最優,與 Levenberg-Marquardt [20] 等迭代的非線性優化技術相比, 更容易造成誤差累積. 如果上一幀處理完成時刻的估計值尚未精確, 傳遞至下一幀的先驗信息便帶有誤差; 由於上一幀狀態不再變化, 所以先驗信息中的誤差便無法消除, 誤差不斷向後傳遞造成 誤 差 累 積. 2) 若 將 三維 點 引 入 狀態 變 量,則每一時刻的計算複雜度爲 O ( n 3 ) , 因此只能處理幾百個點的小場景.

MSCFK

爲了緩解 EKF 方法的計算複雜度問題, Mourikis於 2007 年提出了 MSCKF. MSCKF 是一個VI-SLAM 方法, 在預測階段, 使用 IMU 數據進行傳遞系統狀態 [14] ; 在更新階段, MSCKF 將鄰近的 l 幀相機運動參數全部包含進一個狀態變量集合C ={ C t-l+1  ... C t } . C 中每個 C i 的估計值均在不斷優化, 通常移出 C 前 C i 已較爲精確, 由此緩解誤差累積. 除此之外, MSCKF 對所有三維點進行消元(Marginalization), 將 C i 與 X j 間的二元約束轉換爲 C ={ C t-l+1  ... C t } 間的多元約束, 從而將 O ( n ^3 ) 的計算複雜度簡化爲 O ( n l ^3 ) . 因爲一般來說 l << n , 而且 爲常數, 所以該方法可以大大降低計算複雜度, 將原來的跟三維點數成立方關係降到了線性關係

----------------------------------------------------------

b)Keyframe-based

PTAM

PTAM 的基本思想如下: 將相機跟蹤(Tracking) 和地圖構建(Mapping)作爲 2 個獨立的任務在 2 個線 程並行執行. 地圖構建線程僅維護原視頻流中稀疏抽取的關鍵幀(如圖 3a 所示)及關鍵幀中可見的三維點(如圖 3b 所示), 這樣就可以非常高效地求解目標函數(4)(即 BA); 有了 BA 恢復的精確三維結構, 相機跟蹤線程作爲前臺線程, 僅需優化當前幀運動參數 C t , 足以達到實時的計算效率.

具體來說, 前臺線程通過一個勻速運動模型預測當前幀方位, 以搜索地圖中的三維點在當前幀圖像中對應的 FAST 角點 [23] , 並根據匹配關係優化當前幀方位

其中 w j 是 Tukey 函數 [24] 對應的權重, 用於緩解誤匹配(Outliers)對結果的影響. 如果成功匹配點(Inliers)數不足(如因圖像模糊、快速運動等), 則判斷跟蹤失敗, 開始重定位 [25] ——將當前幀與已有關鍵幀的縮略圖進行比較, 選擇最相似的關鍵幀作爲當前幀方位的預測, 重複上述特徵匹配和方位優步驟. 如果跟蹤成功, 判斷 C t 是否滿足關鍵幀條件, 一旦符合, 系統將當前幀作爲新的關鍵幀傳遞給後臺構建地圖. 後臺線程沿極線(Epipolar Line)匹配不同關鍵幀之間對應於相同場景點的圖像特徵 點 , 通 過 三 角 化 (Triangulation) 恢 復 這 些 場 景點三維位置, 並對所有關鍵幀和三維點運行 BA恢復精確的三維地圖。

ORB-SLAM

C)直接法

DTAM

DTAM:預測一個與當前幀相機方位Ct十分接近的虛擬相機Cv。在Cv下繪製場景三維模型,由此求解Cv與Ct的相對運動

LSD-SLAM


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章