楊觀賜,王霄遠(yuǎn),蔣亞汶,李 楊
(貴州大學(xué) 現(xiàn)代制造技術(shù)教育部重點(diǎn)實(shí)驗(yàn)室,貴州 貴陽 550025)
同時(shí)定位和建圖(simultaneous localization and mapping, SLAM)[1-2]是指將移動(dòng)機(jī)器人置于未知環(huán)境中的未知位置時(shí),移動(dòng)機(jī)器人自動(dòng)逐步構(gòu)建與環(huán)境一致的地圖,并同時(shí)使用該地圖確定其自身在地圖中的位置。SLAM系統(tǒng)由前端和后端組成,前端主要負(fù)責(zé)執(zhí)行數(shù)據(jù)關(guān)聯(lián),后端主要負(fù)責(zé)狀態(tài)推斷。在確保計(jì)算效率的同時(shí),如何確保地圖和位姿估計(jì)的全局一致性和高精度,如何解決非線性、數(shù)據(jù)關(guān)聯(lián)和界標(biāo)特性等問題引起了眾多學(xué)者的關(guān)注。
典型SLAM解決方案[3]主要利用視覺傳感器,雖然取得了不錯(cuò)的效果,但是當(dāng)移動(dòng)機(jī)器人處于低紋理、光照變化和圖像模糊、以及高速運(yùn)動(dòng)時(shí)表現(xiàn)欠佳。視覺傳感器低速運(yùn)行時(shí)能夠有較精確地環(huán)境特征跟蹤表現(xiàn),但是隨著速度的增大,特征跟蹤的準(zhǔn)確性迅速降低;慣性傳感器(inertial measurement unit,IMU)能夠跟隨運(yùn)動(dòng)速度變化,不受運(yùn)動(dòng)場景和運(yùn)動(dòng)速度的限制而準(zhǔn)確測量出角速度和線性加速度,但是當(dāng)其長時(shí)間運(yùn)行時(shí),IMU因其自身偏置而產(chǎn)生估計(jì)累計(jì)漂移[3-4]。融合使用視覺和慣性傳感器可以提供豐富的運(yùn)動(dòng)和環(huán)境結(jié)構(gòu)信息。為了發(fā)揮視覺傳感器和IMU的優(yōu)勢,規(guī)避它們的劣勢,人們研制了視覺傳感器和IMU融合的SLAM(visual-inertial SLAM, VI-SLAM)系統(tǒng)(見圖1)[5],采用基于優(yōu)化或基于濾波的技術(shù)采集物理量,然后運(yùn)用特定的方法估算這些物理量,從而獲得對自身運(yùn)動(dòng)和場景結(jié)構(gòu)的可靠估計(jì)[6-7]。
圖1 幾種典型的視覺慣性傳感器
當(dāng)前,VI-SLAM已廣泛應(yīng)用于機(jī)器人導(dǎo)航[5,12-18],無人機(jī)[19-27],增強(qiáng)現(xiàn)實(shí)[28-32],虛擬現(xiàn)實(shí)[33]以及無人駕駛[34]等領(lǐng)域,而傳感器的校準(zhǔn)、系統(tǒng)的初始化、數(shù)據(jù)的處理和融合方法、閉環(huán)檢測的精度和效率等因素都會(huì)對VI-SLAM系統(tǒng)產(chǎn)生影響[8]。為了更好地把握VI-SLAM領(lǐng)域取得的成果,本文從VI-SLAM系統(tǒng)、視覺慣性里程計(jì)、定位和建圖技術(shù)以及VI-SLAM的研究平臺(tái)方面進(jìn)行了綜述,并展望了發(fā)展趨勢。
圖2是VI-SLAM系統(tǒng)的框架結(jié)構(gòu)圖。系統(tǒng)啟動(dòng)時(shí),首先校準(zhǔn)傳感器;系統(tǒng)運(yùn)行過程中,不同傳感器分別采集環(huán)境結(jié)構(gòu)信息和機(jī)器人運(yùn)動(dòng)信息;在預(yù)處理所采集的數(shù)據(jù)后,使用不同的融合策略進(jìn)行數(shù)據(jù)融合;最后利用融合的數(shù)據(jù)實(shí)現(xiàn)定位和建圖。接下來,將綜述基于關(guān)鍵幀的VI-SLAM系統(tǒng)、稠密VI-SLAM系統(tǒng)、緊密耦合的VI-SLAM系統(tǒng)和協(xié)作式的VI-SLAM系統(tǒng)的技術(shù)特點(diǎn)。
圖2 視覺慣性SLAM系統(tǒng)的框架
對于傳感器數(shù)據(jù)的融合,基于過濾的融合策略與非線性優(yōu)化方法相比,后者在魯棒性、精度和計(jì)算復(fù)雜度上更具優(yōu)勢。文獻(xiàn)[35]將慣性測量數(shù)據(jù)集成到基于關(guān)鍵幀的視覺SLAM中,將IMU誤差項(xiàng)以全概率的方式與界標(biāo)重投影誤差集成在一起進(jìn)行聯(lián)合優(yōu)化非線性成本函數(shù),并利用“關(guān)鍵幀”概念邊緣化過去狀態(tài)部分來維持有限大小的優(yōu)化窗口,從而確保實(shí)時(shí)性操作。文獻(xiàn)[36]提出了基于關(guān)鍵幀的視覺慣性協(xié)作式同時(shí)定位和建圖框架,在建圖和定位高效協(xié)作方面具有優(yōu)勢。文獻(xiàn)[37]提出的基于關(guān)鍵幀的單目和雙目相機(jī)視覺慣性融合的SLAM系統(tǒng),能夠獲得更好的局部一致軌跡和地圖估計(jì),并通過局部跟蹤、位姿圖優(yōu)化和閉環(huán)檢測實(shí)現(xiàn)VI-SLAM的定位準(zhǔn)確性和全局一致性。此外,它能夠根據(jù)先前構(gòu)建的地圖進(jìn)行重新定位并繼續(xù)執(zhí)行SLAM。文獻(xiàn)[38]提出的實(shí)時(shí)單目VI-SLAM系統(tǒng)在消除漂移方面性能良好,它通過融合單目視覺慣性里程計(jì)特征實(shí)現(xiàn)重定位,然后執(zhí)行4-DOF位姿圖優(yōu)化校正漂移。此系統(tǒng)可以通過重用地圖和重新定位相機(jī)獲得機(jī)器人在已有地圖中的絕對位姿,通過全局位姿圖優(yōu)化將當(dāng)前地圖與先前地圖合并。
文獻(xiàn)[39]提出的稠密VI-SLAM系統(tǒng),可以同時(shí)優(yōu)化相機(jī)的位姿、速度、IMU偏置和重力方向,構(gòu)建稠密的環(huán)境3D場景地圖。文獻(xiàn)[40]構(gòu)建了一種基于動(dòng)態(tài)網(wǎng)格與雙目攝像頭的稠密視覺慣性SLAM系統(tǒng)。該系統(tǒng)將空間劃分為網(wǎng)格,在線重建場景的完全稠密地圖。文獻(xiàn)[41]研究了具有結(jié)構(gòu)約束的稠密平面慣性SLAM框架。它使用手持式RGB-D傳感器和IMU重建大型室內(nèi)環(huán)境的稠密3D模型,通過結(jié)構(gòu)約束減少輸出建圖中的漂移和失真。文獻(xiàn)[42]提出的方法能夠從攝像頭的運(yùn)動(dòng)情況和稀疏深度推斷稠密深度信息,從極稀疏的點(diǎn)云中恢復(fù)場景幾何形狀。文獻(xiàn)[10]使用直接法同時(shí)優(yōu)化IMU測量和視覺數(shù)據(jù),形成了基于直接法的VI-SLAM,可以用于實(shí)時(shí)的場景稠密地圖在線重建和跟蹤。而為了平衡精度和計(jì)算效率,文獻(xiàn)[43]提出了基于半直接法的VI-SLAM,它集成了特征法的準(zhǔn)確性和直接法的快速性,在估計(jì)機(jī)器人的運(yùn)動(dòng)和稀疏場景的結(jié)構(gòu)方面具有優(yōu)勢。
移動(dòng)機(jī)器人具有實(shí)時(shí)定位和地建圖功能才能真正自主地運(yùn)行。其路徑規(guī)劃和決策依賴于機(jī)器人對周圍環(huán)境的及時(shí)準(zhǔn)確建圖和狀態(tài)估計(jì)。對此,文獻(xiàn)[44]提出了基于傳感器時(shí)間同步校準(zhǔn)的緊密耦合實(shí)時(shí)VI-SLAM框架,它能夠在動(dòng)態(tài)的環(huán)境中進(jìn)行準(zhǔn)確、實(shí)時(shí)的位姿估計(jì)和建圖。文獻(xiàn)[45]提出的多合一多傳感器視覺慣性融合SLAM,通過同步和校準(zhǔn)多傳感器,實(shí)現(xiàn)緊密耦合的視覺慣性跟蹤和并行建圖。此方法能夠與其他傳感器模態(tài)松散耦合。由于視覺慣性系統(tǒng)具有非線性的特點(diǎn),其性能在很大程度上取決于初始值的準(zhǔn)確性,因此,文獻(xiàn)[46]提出了提高初始狀態(tài)估計(jì)準(zhǔn)確性的方法。即:在已知重力大小的基礎(chǔ)上,通過優(yōu)化其切線空間上的二維誤差狀態(tài)細(xì)化估計(jì)的重力矢量,然后分別估計(jì)加速度計(jì)的偏置。此外,它還提出了確定何時(shí)初始化成功的自動(dòng)終止條件,一旦初始狀態(tài)估計(jì)收斂,就使用初始估計(jì)值啟動(dòng)非線性緊密耦合的VI-SLAM系統(tǒng)。
鑒于視覺慣性里程計(jì)(visual-inertial odometry, VIO)方法缺乏閉合回路的能力,并且即使傳感器不斷地重新訪問同一位置,軌跡估計(jì)也會(huì)出現(xiàn)累積漂移,文獻(xiàn)[47]提出了一種新穎的緊密耦合的VI-SLAM系統(tǒng)。該系統(tǒng)可以閉合回路并重用其地圖,能在已建圖的區(qū)域?qū)崿F(xiàn)對傳感器的零漂移定位;其局部建圖線程在插入新的關(guān)鍵幀之后將執(zhí)行局部BA(bundle adjustment),優(yōu)化最后N個(gè)關(guān)鍵幀和由這些關(guān)鍵幀所觀察到的所有點(diǎn)特征。為了獲得魯棒的SLAM,文獻(xiàn)[48]提出了可以實(shí)時(shí)匹配全局最優(yōu)結(jié)果的基于緊密耦合的非線性優(yōu)化單目VI-SLAM。此系統(tǒng)采用多線程、異步自適應(yīng)數(shù)值優(yōu)化求解器,自適應(yīng)地識(shí)別SLAM圖的邊界條件并進(jìn)行同步和異步求解。為了實(shí)現(xiàn)移動(dòng)機(jī)器人重啟后快速的實(shí)時(shí)定位,文獻(xiàn)[49]提出了基于地圖元素與關(guān)鍵幀數(shù)據(jù)庫的離線地圖構(gòu)建方法,并通過序列化方法進(jìn)行保存與加載,之后,設(shè)計(jì)了基于離線地圖的加載重定位方法,并形成了離線地圖與建圖軌跡的可視化方法。此系統(tǒng)能根據(jù)所得離線地圖進(jìn)行重定位和全局定位跟蹤。
近年來,協(xié)作式VI-SLAM系統(tǒng)研究也得到了快速的發(fā)展。針對多個(gè)單目攝像頭,文獻(xiàn)[50]研究了兩個(gè)智能體間協(xié)作實(shí)現(xiàn)VIO的方法;文獻(xiàn)[51]提出了基于交換的視覺慣性數(shù)據(jù)包的分散數(shù)據(jù)共享方法;文獻(xiàn)[52]利用多攝像頭采集的數(shù)據(jù)融合慣性測量數(shù)據(jù)進(jìn)行在線校準(zhǔn)初始化。圍繞同時(shí)存在攝像頭-IMU和雙目攝像頭的慣性里程計(jì)系統(tǒng),文獻(xiàn)[53]設(shè)計(jì)了可以在線估計(jì)初始值并同時(shí)校準(zhǔn)傳感器的方法;文獻(xiàn)[54]通過融合事件相機(jī)和慣性測量數(shù)據(jù),提供準(zhǔn)確的狀態(tài)估計(jì)。文獻(xiàn)[55]將較大室內(nèi)空間內(nèi)多個(gè)用戶在不同時(shí)刻使用移動(dòng)設(shè)備收集的視覺和慣性測量數(shù)據(jù)進(jìn)行融合,從而實(shí)現(xiàn)協(xié)作建圖。協(xié)作式VI-SLAM系統(tǒng)能夠最大限度地感知周圍環(huán)境、提供豐富的傳感數(shù)據(jù)供系統(tǒng)使用。雖然在環(huán)境退化的情況下,系統(tǒng)也能表現(xiàn)出高精度和魯棒性,但是協(xié)作式VI-SLAM系統(tǒng)要求較大的計(jì)算能力。
視覺慣性里程計(jì)使用相機(jī)與IMU采集的數(shù)據(jù)進(jìn)行融合以估算機(jī)器人狀態(tài)。VIO系統(tǒng)將來自視覺傳感器和IMU的數(shù)據(jù)融合處理,獲得對視覺傳感器運(yùn)動(dòng)的更好測量。機(jī)器人高速運(yùn)動(dòng)時(shí),相機(jī)幀之間可能無法進(jìn)行特征匹配,IMU可以提供信息,使系統(tǒng)仍然保持較準(zhǔn)確的位姿估計(jì)。同時(shí),視覺圖像信息可以彌補(bǔ)機(jī)器人低速運(yùn)動(dòng)時(shí)IMU存在的漂移問題[56]。在VIO和VI-SLAM系統(tǒng)中,視覺圖像和IMU采集數(shù)據(jù)主要使用基于濾波方法或非線性優(yōu)化方法進(jìn)行數(shù)據(jù)融合。根據(jù)傳感器融合測量方法不同,VIO系統(tǒng)分為松耦合和緊密耦合的方法。松耦合方法分別對圖像和IMU數(shù)據(jù)進(jìn)行預(yù)處理,然后進(jìn)行融合;緊密耦合方法則直接融合相機(jī)和IMU的原始測量值找到最佳估計(jì)。表1是視覺慣性傳感器數(shù)據(jù)融合方法的比較情況。與松耦合方法相比,緊密耦合方法更準(zhǔn)確,更可靠[57]。
表1 融合方法對比
圖3是視覺慣性里程計(jì)的結(jié)構(gòu)圖。VIO方法主要分為基于傳統(tǒng)的方法和基于深度學(xué)習(xí)的方法。其中,傳統(tǒng)的方法又細(xì)分為5類:基于擴(kuò)展卡爾曼濾波器(extended Kalman filter,EKF)的VIO,基于點(diǎn)線特征的VIO,基于優(yōu)化的VIO,基于直接方法的VIO和基于事件相機(jī)的VIO。值得注意的是,雖然當(dāng)前基于事件相機(jī)的VIO方法較少,但是由于事件相機(jī)具有擅長捕捉亮度變化、在較暗和強(qiáng)光場景下也能輸出有效數(shù)據(jù)的特點(diǎn),基于事件相機(jī)的VIO方法值得期待,因此對此類方法進(jìn)行了單獨(dú)分析。基于深度學(xué)習(xí)的方法又細(xì)分為基于端到端學(xué)習(xí)的方法和基于監(jiān)督學(xué)習(xí)的方法。
圖3 視覺慣性里程計(jì)結(jié)構(gòu)圖
2.1.1基于EKF的VIO
為充分利用視覺和慣性傳感器采集的信息,文獻(xiàn)[58]提出基于擴(kuò)展卡爾曼濾波器的半直接VIO方法,該方法幾乎可以在原始傳感器級別上緊密融合視覺傳感器和慣性測量數(shù)據(jù),同時(shí)結(jié)合了緊密耦合的視覺慣性擴(kuò)展卡爾曼濾波器的優(yōu)點(diǎn)以及直接光度法的魯棒性和精度。文獻(xiàn)[59]提出的基于全密集緊密耦合直接濾波的VIO方法同時(shí)估計(jì)所有像素的深度和機(jī)器人狀態(tài),通過向狀態(tài)向量添加深度和強(qiáng)度信息,能夠一步更新所有條目。文獻(xiàn)[60]提出以機(jī)器人為中心的基于擴(kuò)展卡爾曼濾波器的直接VIO框架。該方法以機(jī)器人為中心,結(jié)合光度誤差的直接反饋,通過迭代擴(kuò)展卡爾曼濾波器處理界標(biāo)跟蹤,可以實(shí)現(xiàn)多相機(jī)支持,對相機(jī)和IMU進(jìn)行在線校準(zhǔn)。文獻(xiàn)[61]直接使用圖像塊的像素強(qiáng)度誤差來實(shí)現(xiàn)精確的跟蹤性能,具有良好的魯棒性。
考慮到濾波器中計(jì)算雅可比的標(biāo)準(zhǔn)方法會(huì)導(dǎo)致準(zhǔn)確性下降,文獻(xiàn)[62]提出的多狀態(tài)約束卡爾曼濾波器算法主要包括3個(gè)部分: EKF誤差狀態(tài)轉(zhuǎn)換矩陣的封閉式計(jì)算、定向誤差的參數(shù)化、在過濾器中選擇線性化的點(diǎn)。在此基礎(chǔ)上,文獻(xiàn)[63]提出的基于濾波器的雙目VIO方法,在計(jì)算效率和魯棒性方面表現(xiàn)更優(yōu)。與此同時(shí),文獻(xiàn)[64]基于文獻(xiàn)[62]的框架,通過構(gòu)建新的初始化方法設(shè)計(jì)了一種新的VIO算法,能夠通過分析跟蹤的特征自動(dòng)檢測靜止場景,并根據(jù)靜態(tài)IMU數(shù)據(jù)初始化濾波器狀態(tài)。文獻(xiàn)[65]提出了一種實(shí)時(shí)VIO算法。該算法通過確保其線性化系統(tǒng)模型的正確可讀,對相機(jī)-IMU校準(zhǔn)參數(shù)進(jìn)行在線估算,從而確保實(shí)現(xiàn)一致性的估計(jì)。為了確保提供的測量信息足以在線校準(zhǔn)相機(jī)的固有參數(shù),文獻(xiàn)[66]設(shè)計(jì)了視覺慣性系統(tǒng)的非線性可觀測性分析方法,通過在線校準(zhǔn)相機(jī)固有參數(shù)提高位姿估計(jì)的準(zhǔn)確性。而文獻(xiàn)[67]提出的基于RGB-D相機(jī)和IMU的VIO方法,不僅可以估算相機(jī)的運(yùn)動(dòng)軌跡,還可以在線校準(zhǔn)重力場和相機(jī)與IMU之間的相對位姿以提高位姿估計(jì)準(zhǔn)確性,并通過迭代優(yōu)化減少線性誤差。此外,文獻(xiàn)[68]將IMU測量值與相機(jī)提供的視覺特征軌跡的觀察結(jié)果相融合,實(shí)時(shí)生成高精度狀態(tài)估計(jì)值。
2.1.2基于點(diǎn)線特征的VIO
相比于點(diǎn)特征,線特征能夠提供更多的環(huán)境幾何結(jié)構(gòu)信息,在無法可靠檢測或跟蹤點(diǎn)特征的低紋理環(huán)境或照明變化場景中,線特征可以有效提高系統(tǒng)的魯棒性。為了同時(shí)使用點(diǎn)和線特征,文獻(xiàn)[69]提出了基于濾波的緊密耦合雙目視覺慣性里程計(jì)系統(tǒng)。此系統(tǒng)在滑動(dòng)窗口上對點(diǎn)和線要素進(jìn)行處理,并使用閉環(huán)技術(shù)減少累計(jì)漂移。為了解決相機(jī)軌跡估計(jì)的問題并構(gòu)建基于慣性測量和視覺觀察結(jié)構(gòu)的3D地圖,文獻(xiàn)[57]提出了基于點(diǎn)線特征的緊密耦合VIO系統(tǒng)。系統(tǒng)主要包含兩個(gè)模塊:前端負(fù)責(zé)傳播IMU主體狀態(tài),檢測/匹配點(diǎn)線特征(見圖4),后端用于估計(jì)和優(yōu)化自身狀態(tài)。文獻(xiàn)[70]通過構(gòu)建具有幾何信息的環(huán)境特征圖,合并IMU測量數(shù)據(jù)為視覺定位算法提供先驗(yàn)和比例信息。然后,基于稀疏圖像對準(zhǔn)的運(yùn)動(dòng)估計(jì)獲得初始位姿估計(jì),進(jìn)一步執(zhí)行特征對準(zhǔn)以獲得子像素級特征相關(guān)性。最后,通過最小化局部地圖點(diǎn)和線的重投影誤差,獲得高精度的位姿和3D界標(biāo)。文獻(xiàn)[71]通過使用平行線的圖像投影相交點(diǎn)消除角度漂移,從而提高了基于特征的VIO精度。文獻(xiàn)[72]簡化了基于融合點(diǎn)和線特征匹配的方法和VIO初始化策略。在VIO初始化過程中,將恒定速度約束應(yīng)用于運(yùn)動(dòng)中的機(jī)器人,動(dòng)態(tài)地加快了初始狀態(tài)變量的獲取;通過優(yōu)化滑動(dòng)窗口模型構(gòu)造點(diǎn)特征和由線特征表征的稀疏圖。
圖4 視覺慣性傳感器、點(diǎn)和線觀測示意圖[57]
2.1.3基于優(yōu)化的VIO
雖然VIO能夠通過非線性優(yōu)化獲得較高精度的狀態(tài)估計(jì),但是隨著運(yùn)行時(shí)間增長、運(yùn)動(dòng)軌跡增長,實(shí)時(shí)優(yōu)化變得不可行。鑒于此,文獻(xiàn)[73]將選定關(guān)鍵幀之間的慣性測量值預(yù)先集成到單個(gè)相對運(yùn)動(dòng)約束中。為了更好地利用視覺慣性測量值、減少線性化導(dǎo)致的次優(yōu)性,文獻(xiàn)[8]提出了基于關(guān)鍵幀的緊密耦合視覺慣性融合框架。此方法中,速度和IMU偏置作為時(shí)間序列,利用線性化和邊緣化獲取關(guān)鍵幀、估計(jì)位姿以及輸出稀疏地標(biāo)的3D地圖。文獻(xiàn)[74]通過特征檢測和稀疏光流算法跟蹤特征,將加速度計(jì)偏置納入測量模型,采用緊密耦合的非線性優(yōu)化方法將預(yù)集成的IMU測量值與雙目攝像頭的視覺測量值進(jìn)行融合,進(jìn)而提高了系統(tǒng)的準(zhǔn)確性和效率。
2.1.4基于直接方法的VIO
文獻(xiàn)[75]提出的緊密耦合的直接雙目VIO方法,將雙目相機(jī)與IMU結(jié)合,可以實(shí)時(shí)準(zhǔn)確地估計(jì)相機(jī)運(yùn)動(dòng),實(shí)現(xiàn)對環(huán)境的半密集3D重建。鑒于單目視覺里程計(jì)無法測距,基于直接稀疏的單目里程計(jì)算法,文獻(xiàn)[76]提出了直接的緊密耦合的VIO系統(tǒng)。此系統(tǒng)通過添加IMU和最小化能量函數(shù)中的光度和IMU測量誤差,估計(jì)相機(jī)的位姿和稀疏場景幾何形狀。文獻(xiàn)[77]研究了融合IMU和雙目攝像頭的直接稀疏VIO方法,能夠獲得可讀的半稠密地圖,重建3D場景。
2.1.5基于事件相機(jī)的VIO
基于事件相機(jī)的VIO,通過異步檢測相機(jī)上所有像素的圖像強(qiáng)度變化構(gòu)建視覺感應(yīng)模型。相機(jī)高速率捕獲場景變化,可以處理非??斓倪\(yùn)動(dòng)而不會(huì)出現(xiàn)圖像模糊,文獻(xiàn)[78]提出了融合事件相機(jī)和慣性測量數(shù)據(jù)的VIO方法。此方法可以精確跟蹤相機(jī)6自由度位姿,以較小的漂移來跟蹤較長的相機(jī)軌跡。文獻(xiàn)[79]考慮重疊時(shí)空窗口中的事件,通過使用當(dāng)前的相機(jī)運(yùn)動(dòng)和場景結(jié)構(gòu)進(jìn)行對準(zhǔn),從而產(chǎn)生補(bǔ)償運(yùn)動(dòng)的事件幀,然后將所獲得的特征軌跡集成到基于關(guān)鍵幀的非線性優(yōu)化VIO算法,從而實(shí)現(xiàn)相機(jī)的6自由度位姿、速度和IMU偏置的估計(jì)。
傳統(tǒng)的視覺慣性融合方法依賴于已有圖像特征,在無特征區(qū)域、運(yùn)動(dòng)模糊、環(huán)境中的動(dòng)態(tài)元素多和照明變化大、以及無紋理場景等情況下表現(xiàn)不佳,這限制了其應(yīng)用。深度學(xué)習(xí)方法因其強(qiáng)大的特征提取能力,能從高維數(shù)據(jù)中輸出有意義的特征,這為視覺慣性融合提供了新途徑。
2.2.1基于端到端學(xué)習(xí)的方法
文獻(xiàn)[80]研究了以機(jī)器人為中心的EKF端到端可訓(xùn)練VIO算法。它的EKF在IMU的基礎(chǔ)上傳播其狀態(tài),并在更新步驟中融合了來自深度學(xué)習(xí)網(wǎng)絡(luò)的視覺相對位姿測量值和噪音;系統(tǒng)通過反向傳播進(jìn)行端到端訓(xùn)練,能根據(jù)目標(biāo)優(yōu)化整個(gè)系統(tǒng)。為了增強(qiáng)SLAM系統(tǒng)的魯棒性,文獻(xiàn)[56]提出了一種端到端慣性網(wǎng)絡(luò)模型。此模型能夠建模相機(jī)位姿和IMU之間的關(guān)系,能夠根據(jù)圖像序列預(yù)測相機(jī)的旋轉(zhuǎn)等復(fù)雜的運(yùn)動(dòng)軌跡。為了處理不完備的傳感數(shù)據(jù),文獻(xiàn)[81]提出了一種新穎的端到端學(xué)習(xí)傳感器數(shù)據(jù)融合框架。此框架能夠融合單目攝像頭圖像和慣性測量數(shù)據(jù),能夠選擇性地處理傳感器模態(tài)特征,并按比例生成魯棒的軌跡估計(jì)。受處理原始高維數(shù)據(jù)的深度學(xué)習(xí)模型啟發(fā),文獻(xiàn)[82]設(shè)計(jì)了用于執(zhí)行VIO的完全可訓(xùn)練的端到端遞歸網(wǎng)絡(luò)訓(xùn)練模型。該方法將VIO視為逐序列回歸問題,將中間特征進(jìn)行數(shù)據(jù)融合,通過自適應(yīng)學(xué)習(xí)校準(zhǔn)錯(cuò)誤以緩解漂移。
2.2.2基于監(jiān)督學(xué)習(xí)的方法
為了集成深度學(xué)習(xí)和傳統(tǒng)VIO方法的優(yōu)點(diǎn),文獻(xiàn)[83]將傳統(tǒng)的VIO方法集成到端到端的無監(jiān)督的深度神經(jīng)網(wǎng)絡(luò)。通過引導(dǎo)學(xué)習(xí)的深度圖像比例估計(jì)按比例縮放的軌跡,在學(xué)習(xí)的過程中執(zhí)行VIO估計(jì)場景深度。文獻(xiàn)[84]提出了無監(jiān)督的深度神經(jīng)網(wǎng)絡(luò)框架,將來自不同參考系的未校準(zhǔn)的、時(shí)間上松散的同步多模態(tài)數(shù)據(jù)組進(jìn)行里程計(jì)估計(jì);通過整合IMU測量并生成假設(shè)軌跡,根據(jù)縮放后的圖像投影誤差的雅可比矩陣相對于像素坐標(biāo)的空間網(wǎng)格,在線校正假設(shè)軌跡估計(jì)。文獻(xiàn)[85]提出使用在線糾錯(cuò)模塊解決定位問題。通過訓(xùn)練,檢測和糾正中間網(wǎng)絡(luò)輸出的誤差,并最小化所產(chǎn)生的誤差估計(jì)。
針對動(dòng)態(tài)目標(biāo)和無紋理場景,文獻(xiàn)[86]研究了從3D幾何約束中獲取監(jiān)督信號的自監(jiān)督端對端單目VIO網(wǎng)絡(luò)(DeepVIO)。通過融合網(wǎng)絡(luò)的姿態(tài)反饋,更新IMU的附加偏置,改善IMU位姿估計(jì),根據(jù)3D圖像序列估算視覺慣性傳感器的絕對軌跡。表2是基于深度學(xué)習(xí)的VIO方法特點(diǎn)總結(jié)。
表2 基于深度學(xué)習(xí)的VIO方法總結(jié)
實(shí)現(xiàn)高精度和高效率的同時(shí)定位與建圖是機(jī)器人在復(fù)雜環(huán)境下執(zhí)行特定任務(wù)的前提。本小節(jié)將綜述具有代表性的基于視覺慣性傳感器融合的同時(shí)定位與建圖方法。
在長時(shí)間的運(yùn)行過程中,估計(jì)器的漂移往往會(huì)破壞與全局地圖的對準(zhǔn)。文獻(xiàn)[87]提出的實(shí)時(shí)快速定位系統(tǒng),集成了VIO和定位功能,運(yùn)用已構(gòu)建的地圖消除估計(jì)器漂移的影響。文獻(xiàn)[88]將VIO估計(jì)器的局部地圖合并到全局一致性的地圖中,然后針對該地圖執(zhí)行在線重新定位,以削減VIO系統(tǒng)中的漂移。
由于大型地圖定位技術(shù)存在高計(jì)算復(fù)雜性以及高模型內(nèi)存消耗,因此當(dāng)前的方法要么局限于小型工作區(qū),要么依賴服務(wù)器端系統(tǒng)在跟蹤本地位姿的同時(shí)查詢?nèi)帜P团c之匹配。文獻(xiàn)[89]提出了針對全局3D地圖估計(jì)和相機(jī)位姿跟蹤的框架,將全局位姿估計(jì)融合到視覺慣性SLAM系統(tǒng)中,使用搜索結(jié)構(gòu)加快在地圖中的全局定位,能夠在資源有限的移動(dòng)平臺(tái)上執(zhí)行實(shí)時(shí)姿態(tài)估計(jì)和跟蹤。文獻(xiàn)[90]提出了以機(jī)器人為中心的視覺慣性導(dǎo)航系統(tǒng)。它通過所設(shè)計(jì)的高效、輕巧的機(jī)器人視覺慣性里程計(jì)算法,僅使用單目視覺讓機(jī)器人能夠在充滿挑戰(zhàn)的環(huán)境中實(shí)現(xiàn)一致的定位。
視覺傳感器和IMU在自我運(yùn)動(dòng)估計(jì)和環(huán)境建圖中可作為互補(bǔ)傳感器用于增強(qiáng)SLAM系統(tǒng)的魯棒性。對于全局一致性的建圖,將視覺信息和慣性信息組合起來充滿挑戰(zhàn)。通常,大多數(shù)系統(tǒng)的特征提取都作用在具有較大時(shí)間間隔的關(guān)鍵幀上,這使得慣性數(shù)據(jù)隨著時(shí)間間隔的持續(xù),其蘊(yùn)含的有用信息量減少。文獻(xiàn)[91]提出使用非線性因子恢復(fù)從VIO中提取包含在關(guān)鍵幀之間累計(jì)的視覺和慣性信息,用于實(shí)現(xiàn)視覺慣性全局一致性的建圖。文獻(xiàn)[92]構(gòu)建了將所生成的本地深度圖和全局地圖融合與維護(hù)的方法,提出了實(shí)時(shí)視覺慣性建圖系統(tǒng)。而針對傳感器的起始姿勢轉(zhuǎn)換未知的問題,文獻(xiàn)[55]提出了使用多個(gè)傳感器在不同時(shí)段收集的數(shù)據(jù)進(jìn)行協(xié)作建圖的方法。此方法將協(xié)作建圖算法轉(zhuǎn)化為約束優(yōu)化問題,在觀察的點(diǎn)和線要素之間施加幾何約束,將各個(gè)傳感器獨(dú)立估計(jì)的軌跡和地圖融合成一張地圖。針對動(dòng)態(tài)復(fù)雜環(huán)境下系統(tǒng)長期運(yùn)行導(dǎo)致的問題,文獻(xiàn)[93]提出了基于自回歸建模和地圖預(yù)測的長期單目視覺慣性SLAM。首先根據(jù)存儲(chǔ)模型將地圖點(diǎn)分為靜態(tài)和半靜態(tài)地圖點(diǎn),然后對從時(shí)間序列模型中獲取的半靜態(tài)地圖點(diǎn)的不同狀態(tài)進(jìn)行建模和預(yù)測。如果預(yù)測結(jié)果不理想,則將預(yù)測圖與當(dāng)前圖融合,從而利于下一幀獲得更好的預(yù)測效果。
這一節(jié)綜述當(dāng)前用于VI-SLAM研究的平臺(tái):Maplab、VINS-Mono、VINS-RGBD、VersaVINS和OpenVINS。表3是它們的簡要比較統(tǒng)計(jì)表。
表3 VI-SLAM研究平臺(tái)比較
Maplab[94]是一個(gè)通用的視覺慣性建圖和定位的開放框架。該框架提供多會(huì)話建圖工具集合,支撐地圖合并、視覺慣性批處理優(yōu)化和回環(huán)閉合。其在線前端可以創(chuàng)建視覺慣性地圖、跟蹤本地化地圖中的全局無漂移位姿。
VINS-Mono[11]是一種單目視覺慣性狀態(tài)估計(jì)器。系統(tǒng)從測量數(shù)據(jù)預(yù)處理開始,初始化過程提供所有必要的值來引導(dǎo)基于非線性優(yōu)化的VIO;帶有重定位模塊的VIO緊密集成了預(yù)集成的IMU測量值,特征觀察和從閉環(huán)中重新檢測到的特征;最后,位姿圖模塊執(zhí)行4-DOF全局優(yōu)化以消除漂移并實(shí)現(xiàn)重用目的,同時(shí)系統(tǒng)還可以通過有效的保存和加載地圖來實(shí)現(xiàn)地圖的重用。
VINS-RGBD[95]是基于VINS-Mono提出、用于機(jī)器人的軌跡估計(jì)和建圖。它擴(kuò)展了VINS-Mono系統(tǒng),在初始化過程以及VIO階段使用深度數(shù)據(jù)。系統(tǒng)集成了基于二次采樣深度數(shù)據(jù)和八叉樹濾波的建圖系統(tǒng)以支持回環(huán)閉合在內(nèi)的實(shí)時(shí)建圖。
VersaVIS[9]是一種開放式多功能多相機(jī)視覺慣性傳感器研究平臺(tái),支持各種相機(jī)和IMU的傳感器融合,可支持移動(dòng)機(jī)器人部署、集成和擴(kuò)展應(yīng)用程序。該平臺(tái)支持IMU執(zhí)行多臺(tái)相機(jī)的時(shí)間同步,能夠?qū)崿F(xiàn)視覺慣性SLAM、多相機(jī)應(yīng)用、多模式建圖、重建和基于對象的建圖。
OpenVINS[96]集成了塊滑動(dòng)窗口卡爾曼濾波器,支持相機(jī)參數(shù)在線校準(zhǔn)和時(shí)間偏移校準(zhǔn);具有不同表示形式和一致性的第一雅可比估計(jì)的SLAM界標(biāo)處理功能;提供狀態(tài)管理的模塊化系統(tǒng)、可擴(kuò)展的視覺慣性系統(tǒng)模擬器以及用于算法評估的工具箱。
在過去的十幾年中,由于傳感器技術(shù)、計(jì)算機(jī)計(jì)算性能和深度學(xué)習(xí)的快速發(fā)展,視覺慣性融合的SLAM技術(shù)領(lǐng)域取得了突破性進(jìn)展。在工程實(shí)際中,由于機(jī)器人所處環(huán)境結(jié)構(gòu)的復(fù)雜性、傳感器自身的局限性、初始化精度和傳感器校準(zhǔn)以及數(shù)據(jù)融合的處理方式等問題,VI-SLAM仍然面臨諸多挑戰(zhàn),以下幾個(gè)方面可能是值得關(guān)注的方向。
(1)視覺-慣性傳感器在線校準(zhǔn)。相機(jī)-IMU的空間位置校準(zhǔn)和校準(zhǔn)參數(shù)在系統(tǒng)長時(shí)間的運(yùn)行過程中經(jīng)常會(huì)發(fā)生漂移,從而引起后續(xù)定位和建圖累計(jì)誤差。當(dāng)前,雖然已經(jīng)有很多學(xué)者研究了傳感器的校準(zhǔn)方法,但是往往僅針對有限的參數(shù)或者特定型號的傳感器進(jìn)行校準(zhǔn),且實(shí)時(shí)性表現(xiàn)仍然欠佳。因此,高效的視覺-慣性傳感器在線校準(zhǔn)方法是值得深入研究的方面。
(2)基于深度學(xué)習(xí)的狀態(tài)估計(jì)。在實(shí)際的運(yùn)行過程中,高精度可靠的狀態(tài)估計(jì)是機(jī)器人實(shí)現(xiàn)自主功能的重要前提。近年來,深度學(xué)習(xí)方法得到了快速的發(fā)展,在圖像特征提取和匹配方向出現(xiàn)了很多優(yōu)秀的方法,提供了直接處理原始、高維數(shù)據(jù)的能力,而無需使用領(lǐng)域知識(shí)通過人工制作的特征提取器[80-81,85]。同時(shí),基于深度學(xué)習(xí)的圖像處理方法在應(yīng)對視覺退化環(huán)境,如快速運(yùn)動(dòng)、運(yùn)動(dòng)模糊和光照變化等因素具有較強(qiáng)的適應(yīng)性。因此,如何直接利用深度學(xué)習(xí)的方式,從傳感器采集數(shù)據(jù)同本地或者更高級別的數(shù)據(jù)特征、知識(shí)圖譜融合學(xué)習(xí),形成智能高效的狀態(tài)估計(jì)方法是一個(gè)有前景的方面。
(3)VI-SLAM系統(tǒng)化閉環(huán)檢測。如果機(jī)器人能夠進(jìn)行精準(zhǔn)的閉環(huán)檢測,則可以在節(jié)省計(jì)算量的同時(shí)顯著地減少軌跡估計(jì)的累計(jì)誤差,從而提高定位精度和建圖效率。雖然文獻(xiàn)[43,97-98]中的方法可以實(shí)現(xiàn)閉環(huán)檢測的功能,但也有許多需要提升的方面。突破視覺慣性閉環(huán)檢測的新理論和新方法,對于提高機(jī)器人自主探索環(huán)境的能力,提高軌跡估計(jì)的精度和效率、定位和建圖的能力具有重要意義。
(4)VI-SLAM系統(tǒng)自主環(huán)境感知。魯棒的SLAM自主感知要求能夠自主進(jìn)行高級別的場景理解和自主無人執(zhí)行高級別任務(wù)[99]。如何構(gòu)建可用于指導(dǎo)完成高級別任務(wù)的豐富語義地圖,如何提高VI-SLAM系統(tǒng)感知環(huán)境和數(shù)據(jù)并具備認(rèn)知能力等是值得深入研究的方面。
視覺慣性傳感器的互補(bǔ)融合使用極大地促進(jìn)了SLAM技術(shù)的發(fā)展,尤其是在VIO方向;結(jié)合深度學(xué)習(xí)方法也取得了不錯(cuò)的效果。目前,視覺慣性傳感器互補(bǔ)融合的研究中一部分成果已經(jīng)得到了實(shí)際的應(yīng)用。但是,VI-SLAM系統(tǒng)在實(shí)際運(yùn)行時(shí),機(jī)器人所處的環(huán)境是復(fù)雜的、外界干擾因素也是多樣的,這讓VI-SLAM的推廣應(yīng)用變得困難。在未來,隨著智能機(jī)器人技術(shù)的發(fā)展,機(jī)器人所能實(shí)現(xiàn)的功能將會(huì)越來越復(fù)雜,因此在實(shí)現(xiàn)高精度、高效率的定位和建圖方面依然有很多的研究工作要做。只有實(shí)現(xiàn)實(shí)時(shí)的、高精度、魯棒的VI-SLAM系統(tǒng),才能促進(jìn)VI-SLAM技術(shù)向廣泛實(shí)際應(yīng)用轉(zhuǎn)化。