引言
大部分SLAM系統(tǒng)都應(yīng)用了靜態(tài)環(huán)境假設(shè),這使得它們難以在復(fù)雜動態(tài)環(huán)境中部署。此外,傳統(tǒng)的基于學(xué)習(xí)的SLAM方法往往都是利用目標(biāo)檢測或語義分割剔除動態(tài)物體上的特征,但這樣有兩個弊端:其一是實際環(huán)境中的動態(tài)物體不一定被預(yù)訓(xùn)練,另一是算法無法區(qū)分"動態(tài)物體"和"靜止但可能移動的物體"。
2. 摘要
基于學(xué)習(xí)的視覺里程計(VO)算法在常見的靜態(tài)場景中取得了顯著的性能,受益于高容量模型和大規(guī)模注釋數(shù)據(jù),但在動態(tài)、人口稠密的環(huán)境中往往會失敗。語義分割主要用于在估計相機運動之前丟棄動態(tài)關(guān)聯(lián),但是以丟棄靜態(tài)特征為代價,并且難以擴展到看不見的類別。
在本文中,我們利用相機自我運動和運動分割之間的相互依賴性,并表明這兩者可以在一個單一的基于學(xué)習(xí)的框架中共同優(yōu)化。特別地,我們提出了DytanVO,第一個基于監(jiān)督學(xué)習(xí)的VO方法來處理動態(tài)環(huán)境。它實時拍攝兩個連續(xù)的單目幀,并以迭代的方式預(yù)測相機的自我運動。
在真實動態(tài)環(huán)境中,我們的方法在ATE方面比最先進的VO解決方案平均提高了27.7%,甚至在優(yōu)化后端軌跡的動態(tài)視覺SLAM系統(tǒng)中也具有競爭力。大量未知環(huán)境上的實驗也證明了該方法的普適性。
3. 算法分析
如圖1所示是作者提出的DytanVO的整體架構(gòu),整個網(wǎng)絡(luò)是基于TartanVO開發(fā)的。DytanVO由從兩幅連續(xù)圖像中估計光流的匹配網(wǎng)絡(luò)、基于無動態(tài)運動的光流估計位姿的位姿網(wǎng)絡(luò)和輸出動態(tài)概率掩碼的運動分割網(wǎng)絡(luò)組成。
匹配網(wǎng)絡(luò)僅向前傳播一次,而位姿網(wǎng)絡(luò)和分割網(wǎng)絡(luò)被迭代以聯(lián)合優(yōu)化位姿估計和運動分割。停止迭代的標(biāo)準(zhǔn)很簡單,即兩個迭代之間旋轉(zhuǎn)和平移差異小于閾值,并且閾值不固定,而是預(yù)先確定一個衰減參數(shù),隨著時間的推移,經(jīng)驗地降低輸入閾值,以防止在早期迭代中出現(xiàn)不準(zhǔn)確的掩碼,而在后期迭代中使用改進的掩碼。
圖1 DytanVO架構(gòu)總覽
如圖2所示是DytanVO是運行示例,包含兩個輸入的圖像幀、估計的光流、運動分割以及在高動態(tài)AirDOS-Shibuya數(shù)據(jù)集上的軌跡評估結(jié)果。結(jié)果顯示DytanVO精度超越TartanVO達(dá)到了最高,并且漂移量很小。
圖2 DytanVO運行示例
綜上所述,作者提出了第一個基于監(jiān)督學(xué)習(xí)的動態(tài)環(huán)境的VO,主要貢獻如下:
(1) 引入了一種新的基于學(xué)習(xí)的VO來平衡相機自身運動、光流和運動分割之間的相互依賴關(guān)系。
(2) 引入了一個迭代框架,其中自我運動估計和運動分割可以在實時應(yīng)用的時間限制內(nèi)快速收斂。
(3) 在基于學(xué)習(xí)的VO解決方案中,DytanVO在真實世界動態(tài)場景中實現(xiàn)了最先進的性能,而無需微調(diào)。此外,DytanVO甚至可以與優(yōu)化后端軌跡的視覺SLAM解決方案相媲美。
3.1 運動分割
早期使用運動分割的動態(tài)VO方法依賴于由對極幾何和剛性變換產(chǎn)生的純幾何約束,因此它們可以閾值化用于考慮運動區(qū)域的殘差光流。
然而,在兩種情況下,它們?nèi)菀装l(fā)生嚴(yán)重退化:
(1) 在3D移動中,沿著極線移動的點無法從單目圖像中識別出來;
(2) 純幾何學(xué)方法對噪聲光流和較不準(zhǔn)確的相機運動估計沒有魯棒性。
因此,DytanVO通過光學(xué)擴展將2D光流升級到3D后,顯式地將代價地圖建模為分割網(wǎng)絡(luò)的輸入,該網(wǎng)絡(luò)根據(jù)重疊圖像塊的尺度變化估計相對深度。
3.2 相機運動迭代優(yōu)化
在推理過程中,匹配網(wǎng)絡(luò)只前向傳播一次,而姿態(tài)網(wǎng)絡(luò)和分割網(wǎng)絡(luò)進行迭代,共同優(yōu)化自運動估計和運動分割。在第一次迭代中,使用隨機初始化分割掩膜。直覺上會認(rèn)為,在早期迭代過程中估計的運動不太準(zhǔn)確,并導(dǎo)致分割輸出(對靜態(tài)區(qū)域賦予高概率)中的誤報。然而,由于光流圖仍然提供了足夠的對應(yīng)關(guān)系,因此相機運動實際上較為合理。在以后的迭代中,估計越來越準(zhǔn)確。
在實際應(yīng)用中,3次迭代足以使相機運動和分割都得到細(xì)化。圖3所示是迭代過程中的可視化結(jié)果,第一次迭代時的掩碼包含了大量的假陽性,但在第二次迭代后迅速收斂。這也說明姿態(tài)網(wǎng)絡(luò)對分割結(jié)果中的假陽性具有魯棒性。
圖3 當(dāng)未見數(shù)據(jù)上測試時每次迭代的運動分割輸出。(a) 使用DytanVO在多人向不同方向移動的情況下,對AirDOS-Shibuya中最難的序列進行推斷;(b) 從動態(tài)物體占據(jù)超過60%面積的FlyingThings3D推斷序列。
3.3 損失函數(shù)
DytanVO可以以端到端的方式進行訓(xùn)練,損失函數(shù)包括光流損失LM,相機運動損失LP和運動分割損失LU。其中LM為預(yù)測流和真實流之間的L1范數(shù),而LU是預(yù)測概率和分割標(biāo)簽之間的二元交叉熵?fù)p失。具體表達(dá)形式為:
4. 實驗
4.1 數(shù)據(jù)集
DytanVO在TartanAir和SceneFlow上訓(xùn)練,其中前者包含超過40萬個數(shù)據(jù)幀,具有僅在靜態(tài)環(huán)境中的光流和相機姿態(tài)真值。后者在高度動態(tài)的環(huán)境中提供了3.9萬幀,每個軌跡具有向后/向前通過、不同的對象和運動特征。雖然場景流不提供運動分割的真值,但可以通過利用其視差、光流和視差變化圖來恢復(fù)真值。而在評估方面,作者使用AirDOS-Shibuya和KITTI進行測試。
4.2 實施細(xì)節(jié)
DytanVO使用TartanVO的預(yù)訓(xùn)練模型初始化匹配網(wǎng)絡(luò),使用來自CVPR論文"Learning to segment rigid motions from two frames"的預(yù)訓(xùn)練權(quán)重來固定運動分割網(wǎng)絡(luò),使用ResNet50作為姿態(tài)網(wǎng)絡(luò)的backbone,并刪除了BN層,同時為旋轉(zhuǎn)和平移添加了兩個輸出頭。
DytanVO使用的深度學(xué)習(xí)框架為PyTorch,并在2臺NVIDIA A100上訓(xùn)練。在推理時間方面作者在RTX 2080進行測試,不進行迭代的話推理時間為40ms,進行一次迭代推理時間為100ms,進行兩次迭代推理時間為160ms。
4.3 AirDOS-Shibuya數(shù)據(jù)集測試
如表1所示是關(guān)于迭代次數(shù)(iter)的消融實驗,數(shù)據(jù)使用來自AirDOS-Shibuya的三個序列。其中姿態(tài)網(wǎng)絡(luò)在第一次迭代后快速收斂,后續(xù)迭代顯示出較少的改進,這是因為AirDOS-Shibuya上的光流估計已經(jīng)具有高質(zhì)量。
表1 關(guān)于迭代次數(shù)的ATE消融實驗
表2所示是在AirDOS-Shibuya的七個序列上,與現(xiàn)有的最先進的VO算法進行的定量對比結(jié)果。該基準(zhǔn)涵蓋了更具挑戰(zhàn)性的多種運動模式。這七個序列分為三個難度等級:大多數(shù)人站著不動,很少人在路上走來走去,穿越(容易)包含多個人類進出相機的視野,而在穿越道路(困難)中,人類突然進入相機的視野。
除了VO方法之外,作者還將DytanVO與能夠處理動態(tài)場景的SLAM方法進行了比較。包括DROID-SLAM、AirDOS、VDO-SLAM以及DynaSLAM。
表2 來自AirDOS-Shibuya的動態(tài)序列的ATE (m)結(jié)果。最佳和次佳VO性能以粗體和下劃線顯示,"-"來表示初始化失敗
結(jié)果顯示,DytanVO在VO基線的所有序列中實現(xiàn)了最好的性能,甚至在SLAM方法中也是有競爭力的。DeepVO,TrianFlow和CC在AirDOS-Shibuya數(shù)據(jù)集上表現(xiàn)很差,因為它們只在KITTI上訓(xùn)練,不能泛化。TartanVO表現(xiàn)更好,但它仍然容易受到動態(tài)對象的干擾。
DytanVO優(yōu)于動態(tài)SLAM方法,如AirDOS,VDO-SLAM和dyna SLAM 80%以上。雖然DROID-SLAM在大部分時間都保持競爭力,但一旦行人占據(jù)了圖像中的大部分區(qū)域,它就會跟蹤失敗。此外,DytanVO的2次迭代每次推理0.16秒,但DROID- SLAM需要額外的4.8秒來優(yōu)化軌跡。
4.4 KITTI數(shù)據(jù)集測試
表3所示是DytanVO和其他VO方法在KITTI數(shù)據(jù)集上的定量對比結(jié)果,DytanVO在8個動態(tài)序列中的6個中優(yōu)于其他VO基線,比第二個最好的方法平均提高了27.7 %。注意,DeepVO、TrianFlow和CC是在KITTI中的部分序列上訓(xùn)練的,而DytanVO沒有在KITTI上進行微調(diào),純粹使用合成數(shù)據(jù)進行訓(xùn)練。
此外,DytanVO在VO和SLAM中的3個序列上實現(xiàn)了最佳的ATE,無需任何優(yōu)化。圖4中提供了關(guān)于快速移動的車輛或動態(tài)物體在圖像中占據(jù)大片區(qū)域的四個具有挑戰(zhàn)性的序列的定性結(jié)果。注意,從經(jīng)過的高速車輛開始的序列01,ORB-SLAM和DynaSLAM都無法初始化,而DROID-SLAM從一開始就跟蹤失敗。在序列10中,當(dāng)一輛巨大的貨車占據(jù)圖像中心的顯著區(qū)域時,DytanVO是唯一保持穩(wěn)健跟蹤的VO。
表3 KITTI里程計動態(tài)序列的ATE (m)結(jié)果
圖4 KITTI里程計01、03、04和10中動態(tài)序列的定性結(jié)果
5. 結(jié)論
作者提出了一種基于學(xué)習(xí)的動態(tài)VO (DytanVO),它可以聯(lián)合優(yōu)化相機姿態(tài)的估計和動態(tài)物體的分割。作者證明了自運動估計和運動分割都可以在實時應(yīng)用的時間約束內(nèi)快速收斂,并在KITTI和AirDOS-Shibuya數(shù)據(jù)集上評估了DytanVO,還展示了在動態(tài)環(huán)境中的一流性能,無需在后端進行微調(diào)或優(yōu)化。DytanVO為動態(tài)視覺SLAM算法引入了新的方向。
審核編輯:劉清
-
SLAM
+關(guān)注
關(guān)注
23文章
426瀏覽量
31931 -
ATE
+關(guān)注
關(guān)注
5文章
128瀏覽量
26683
原文標(biāo)題:DytanVO:動態(tài)環(huán)境中視覺里程計和運動分割的聯(lián)合優(yōu)化
文章出處:【微信號:GiantPandaCV,微信公眾號:GiantPandaCV】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論