吳錦河 范涵奇
摘要:視覺SLAM中閉環(huán)校正能有效減小相機(jī)位姿估計(jì)的累積誤差。針對此問題,本文提出了一種新的閉環(huán)校正策略。為了驗(yàn)證算法的有效性,本文采用公開數(shù)據(jù)集KITTI來測試本文算法。實(shí)驗(yàn)結(jié)果表明本文算法能有效的減小累積誤差。
關(guān)鍵詞:視覺SLAM;閉環(huán)校正;閉環(huán)檢測
中圖分類號:TP212 文獻(xiàn)標(biāo)識碼:A 文章編號:1007-9416(2020)07-0111-02
0 引言
近些年來,視覺SLAM[1](visual Simultaneous localization and mapping,vSLAM)技術(shù)發(fā)展迅速,廣泛應(yīng)用于機(jī)器人、無人機(jī)、AR/VR 等領(lǐng)域。視覺SLAM技術(shù)主要采用視覺傳感器來解決機(jī)器人等在GPS失效環(huán)境中的定位與周圍環(huán)境地圖重建的問題。
解決視覺SLAM問題的方法主要有兩種,即直接法和特征點(diǎn)法。直接法根據(jù)相機(jī)采集圖像的像素信息來直接計(jì)算相機(jī)的運(yùn)動。直接法的基本假設(shè)是同一三維空間點(diǎn)在不同視角下觀測到的像素灰度不變,通過最小化光度誤差來優(yōu)化求解相機(jī)位姿。直接法最具代表性的算法主要有DTAM[2]、LSD-SLAM[3]以及DSO[4]。直接法可以不用提取圖像特征點(diǎn)并且可以在弱紋理環(huán)境中使用,但是直接法的灰度不變是一個很強(qiáng)的假設(shè),實(shí)際中易受光照變化的影響。特征點(diǎn)法是一種間接求解SLAM問題的方法。特征點(diǎn)法[5-7]在求解相機(jī)位姿時對光照不敏感,魯棒性更好,因此該方法也是解決SLAM問題最常用的一種方法。無論是直接法還是特征點(diǎn)法在優(yōu)化相機(jī)位姿時都采用高斯分布分布作為先驗(yàn)假設(shè),在此假設(shè)下來構(gòu)造優(yōu)化的目標(biāo)函數(shù),但是在此假設(shè)下構(gòu)造的目標(biāo)函數(shù)無法剔除大噪音數(shù)據(jù)對優(yōu)化結(jié)果的影響,使得優(yōu)化后的相機(jī)位姿和三維空間點(diǎn)的位置依然不太精確。
以上兩種方法中都面臨的同樣問題是閉環(huán)校正方法較為復(fù)雜。為了解決這個問題,本文提出了一種新的閉環(huán)校正策略。
1 本文算法
本章節(jié)主要詳細(xì)闡述本文算法。本文首先通過詞袋庫的方式來檢測相機(jī)在運(yùn)動過程中的閉環(huán),然后本文在1.2節(jié)詳細(xì)闡述了如何通過閉環(huán)校正優(yōu)化得到全局最優(yōu)的相機(jī)位姿。
1.1 閉環(huán)檢測
視覺SLAM中,閉環(huán)校正能夠有效的減小累積誤差進(jìn)而提升系統(tǒng)的穩(wěn)定性。與ORB-SLAM類似,本文也使用詞袋庫(Bag of words,BOW)方法來檢測閉環(huán)。
1.2 閉環(huán)校正
對于已經(jīng)檢測到的回環(huán),假設(shè)第0幀與第n幀構(gòu)成回環(huán),則在理論上有:
其中,代表相機(jī)旋轉(zhuǎn)。實(shí)際中由于誤差的存在等式不是嚴(yán)格成立的。因此,本文通過固定處的旋轉(zhuǎn)以及各幀之間的相對旋轉(zhuǎn),通過引入回環(huán)信息優(yōu)化各幀相對與世界坐標(biāo)系的旋轉(zhuǎn)來校正回環(huán)。
如圖1所示,假設(shè)幀第0幀與第6幀之間構(gòu)成回環(huán),則應(yīng)滿足公式(1)的約束。由于構(gòu)成回環(huán),因此可以使用初始幾幀的信息來增加約束使得位姿估計(jì)更精確。即本文依據(jù)對極約束首先求得初始各幀相對世界坐標(biāo)系的旋轉(zhuǎn)以及各幀之間的相對旋轉(zhuǎn),其次由于與幀之間構(gòu)成回環(huán),可以引入的信息更精確的估計(jì)的旋轉(zhuǎn),由于各個幀節(jié)點(diǎn)之間的相對旋轉(zhuǎn)固定且相互影響,因此可以逆向的再次優(yōu)化各節(jié)點(diǎn)的旋轉(zhuǎn)。在此過程中,可以使得求得的各幀的旋轉(zhuǎn)的誤差攤平,使得誤差的變化更平滑,本文把這個過程稱為回環(huán)濾波(Loop Filter)。
2 實(shí)驗(yàn)結(jié)果及分析
本文在KITTI數(shù)據(jù)集[8]上測試所提出的算法,實(shí)驗(yàn)環(huán)境的操作系統(tǒng)為ubuntu 18.04,配置為i7-4770 CPU,4G RAM。
為了說明回環(huán)校正的有效性,本文在表1中給出了閉環(huán)前后相機(jī)旋轉(zhuǎn)誤差的方差、均值、中值以及最大值和最小值的變化。從表中數(shù)據(jù)可知,回環(huán)校正后相機(jī)旋轉(zhuǎn)誤差的方差、均值、中值以及最大值均減小,因此回環(huán)校正可以提升相機(jī)位姿估計(jì)的精度。
圖2所示中描述了回環(huán)校正后相機(jī)旋轉(zhuǎn)誤差分布,從圖中可知,相機(jī)旋轉(zhuǎn)的誤差分布更加集中并且最大值明顯減小,圖中誤差的分布跟旋轉(zhuǎn)誤差統(tǒng)計(jì)量的變化一致,因此本文算法通過閉環(huán)能有效的減小累積誤差。
3 結(jié)語
本文針對視覺SLAM中閉環(huán)校正問題提出了一種新的閉環(huán)校正策略。實(shí)驗(yàn)結(jié)果表明,本文算法能有效的減小累積誤差進(jìn)而提升相機(jī)位姿估計(jì)的精確性。
參考文獻(xiàn)
[1] Cadena C,Carlone L,Carrillo H,et al.Past,Present,and Future of Simultaneous Localization and Mapping: Toward the Robust-Perception Age[J].IEEE Transactions on Robotics,2016,32(6):1309-1332.
[2] Newcombe R,Lovegrove S,Davison A J,et al.DTAM: Dense tracking and mapping in real-time[C].international conference on computer vision,2011:2320-2327.
[3] Engel J,Schops T,Cremers D,et al.LSD-SLAM:Large-Scale Direct Monocular SLAM[C].european conference on computer vision, 2014:834-849.
[4] Engel,Jakob,Vladlen Koltun,and Daniel Cremers.Direct sparse odometry[J].IEEE transactions on pattern analysis and machine intelligence,2018,40(3):611-625.
[5] Badino H,Yamamoto A,Kanade T,et al.Visual Odometry by Multi-frame Feature Integration[C].international conference on computer vision,2013:222-229.
[6] Fanfani M,Bellavia F,Colombo C,et al.Accurate keyframe selection and keypoint tracking for robust visual odometry[J]. machine vision applications,2016,27(6): 833-844.
[7] Mur-Artal R,Tardos J D.ORB-SLAM2:An open-source SLAM system for monocular,stereo,and RGB-D cameras[J].IEEE Transactions on Robotics,2017,33(5):1255-1262.
[8] Newcombe R,Lovegrove S,Davison A J,et al.DTAM:Dense tracking and mapping in real-time[C].international conference on computer vision,2011:2320-2327.
數(shù)字技術(shù)與應(yīng)用2020年7期