RSLO:自監(jiān)督激光雷達(dá)里程計(jì)(實(shí)時(shí)+高精度,ICRA2022)
論文閱讀:Robust Self-Supervised LiDAR Odometry Via Representative Structure Discovery and 3D Inherent Error Modeling(RAL 2022& ICRA2022)
Motivation
激光雷達(dá)在自動(dòng)駕駛中是個(gè)必要的傳感器,但是激光雷達(dá)由于自身數(shù)據(jù)的稀疏性和信噪比的問題會(huì)給運(yùn)動(dòng)估計(jì)的魯棒性帶來比較大的挑戰(zhàn),如下圖,即使是兩幀相鄰的激光雷達(dá)點(diǎn)云,也會(huì)由于動(dòng)態(tài)物體和錯(cuò)位帶來一個(gè)誤匹配,這種誤匹配對(duì)于激光雷達(dá)里程計(jì)是非常致命的,所以如何發(fā)現(xiàn)并且減輕這些不可靠區(qū)域的權(quán)重是一個(gè)值得研究的問題。
另一方面,雖然基于3D CNN的模型已經(jīng)證明了能在一定程度上解決上述問題,但是現(xiàn)在有的基于3D CNN的自監(jiān)督激光雷達(dá)里程計(jì)并沒有明確的設(shè)計(jì)來強(qiáng)制網(wǎng)絡(luò)自適應(yīng)地聚焦于可靠區(qū)域,并且自監(jiān)督方法通常利用掃描之間的幾何一致性來實(shí)現(xiàn)自我運(yùn)動(dòng)估計(jì)。如上圖所示,幾何一致性在實(shí)踐中可能無法完全保持。并且現(xiàn)有的大多數(shù)方法都是通過估計(jì)不確定性標(biāo)量從而在類別級(jí)別上建模并優(yōu)化固有誤差。但是如下圖所示,固有誤差大小不僅在不同類別中不同,而且在不同方向上也不同,所以需要一個(gè)更細(xì)致的固有誤差模型來區(qū)分訓(xùn)練過程中不同方向上的不確定性差異。

Contribution
提出了一個(gè)兩階段的自我運(yùn)動(dòng)估計(jì)框架,將網(wǎng)絡(luò)的重點(diǎn)放在兩幀LiDAR里程計(jì)的代表性結(jié)構(gòu)上。
通過3D CNN估計(jì)逐點(diǎn)協(xié)方差,并且對(duì)點(diǎn)的不確定性進(jìn)行建模,從而在此基礎(chǔ)上更好地降低自監(jiān)督損失的固有誤差。
引入一個(gè)不確定性感知建圖模塊,該模塊將發(fā)現(xiàn)的代表性結(jié)構(gòu)和CNN的逐點(diǎn)協(xié)方差估計(jì)用于地圖構(gòu)建和scan2map的位姿優(yōu)化。。
在KITTI數(shù)據(jù)集的平移/旋轉(zhuǎn)誤差方面,所提出的自監(jiān)督里程計(jì)比之前的技術(shù)水平高出16%/12%,在Apollo Southbay上的表現(xiàn)也很好。基于建圖模塊和更多的訓(xùn)練數(shù)據(jù),所提出的系統(tǒng)甚至可以實(shí)時(shí)高效地與有監(jiān)督的方法競(jìng)爭(zhēng)。
代碼已開源:https://github.com/SamuelYale/RSLO
Content
幀間激光雷達(dá)里程計(jì)
傳統(tǒng)的激光雷達(dá)里程計(jì)通常是基于環(huán)境是絕對(duì)剛性的前提,但是現(xiàn)實(shí)環(huán)境由于動(dòng)態(tài)物體的存在,必然不是絕對(duì)港行的,為了緩解這種困境,可以將激光雷達(dá)的單幀掃描視為一系列子區(qū)域,并假設(shè)只有一部分子區(qū)域?qū)?yīng)于具有良好測(cè)量條件的靜態(tài)對(duì)象從而可以滿足絕對(duì)剛性假設(shè)。
基于這個(gè)寬松的假設(shè),將自監(jiān)督里程計(jì)分為兩個(gè)階段,第一階段估計(jì)子區(qū)域的剛性變換,第二階段使用這些子區(qū)域變換加權(quán)投票給出最終的自我運(yùn)動(dòng)估計(jì),整體流程如下。幾何特征編碼器將輸入的激光雷達(dá)掃描和編碼進(jìn)高維的特征向量和,每個(gè)特征可以代表掃描的一個(gè)子區(qū)域塊,該子區(qū)域被命名為幾何單元(GU),這些特征的信道連接送到幾何單元變換估計(jì)模塊,從而分層地估計(jì)兩幀之間的幾何單元(GU)變換。在自我運(yùn)動(dòng)估計(jì)投票期間,自我運(yùn)動(dòng)根據(jù)最終層的GU變換估計(jì)進(jìn)行投票。預(yù)測(cè)的投票權(quán)重通過自監(jiān)督訓(xùn)練管道集中于具有代表性結(jié)構(gòu)的GU。
這種設(shè)計(jì)可以減輕非剛性零件的影響,并將網(wǎng)絡(luò)集中在具有代表性結(jié)構(gòu)的子區(qū)域。為了實(shí)現(xiàn)實(shí)時(shí)性,設(shè)計(jì)了一個(gè)異構(gòu)網(wǎng)絡(luò),包含一個(gè)三維幾何特征編碼器和一個(gè)用于子區(qū)域變換估計(jì)的二維幾何單元變換估計(jì)U-Net,用來平衡速度和精度。對(duì)于自我運(yùn)動(dòng)估計(jì)的投票,采用基于自注意力機(jī)制的投票模塊來識(shí)別具有代表性結(jié)構(gòu)的區(qū)域,并調(diào)整不同子區(qū)域的投票權(quán)重。
1)子域表示
采用由子流形卷積層構(gòu)成的3D CNN作為幾何特征編碼器對(duì)子區(qū)域特征進(jìn)行編碼。常規(guī)三維卷積網(wǎng)格中的特征向量天然地與掃描中的矩形子區(qū)域塊相關(guān)聯(lián)。取最后一個(gè)卷積層輸出的特征向量來表示不同的子區(qū)域。我們將這些規(guī)則子區(qū)域命名為幾何單元GU,將特征命名為幾何單元特征。
2)GU變換估計(jì)
識(shí)別兩次掃描之間的幾何單位對(duì)應(yīng)關(guān)系是非常重要,但是傳統(tǒng)方法是非常效率低下的,因此采用了一種高效的U-Net結(jié)構(gòu)作為幾何單元變換估計(jì)模塊,從而一次性估計(jì)所有幾何單元變換。首先將幾何單元特征重塑為鳥瞰圖特征地圖,然后按照通道級(jí)別連接他們,從而維護(hù)空間拓?fù)洳⑶冶3謩傮w運(yùn)動(dòng),最后將這些特征送入編碼器-解碼器網(wǎng)絡(luò)用來進(jìn)行幾何特征變換估計(jì)。
為了使幾何單元變換估計(jì)更具有局部關(guān)聯(lián)性,選擇在當(dāng)前的中心坐標(biāo)系中估計(jì)幾何單元變換。關(guān)于在當(dāng)前中心坐標(biāo)系的剛性全掃描的變換

和剛性掃描子域的變換

的轉(zhuǎn)換關(guān)系可以推導(dǎo)為如下:

是幾何單元幀和雷達(dá)幀之間的偏移,下圖說明了這兩者之間的關(guān)系

為了提升魯棒性,采用分層估計(jì)的方式

,但是只有最精確的最終層預(yù)測(cè)

被用在接下來的自我運(yùn)動(dòng)估計(jì)投票中,h代表尺度級(jí)別,Mh代表在對(duì)應(yīng)的尺度級(jí)別的幾何單元的數(shù)量。
3)自我運(yùn)動(dòng)估計(jì)投票
這個(gè)模塊的主要目的是找到包含代表性結(jié)構(gòu)的可靠幾何單元,并將網(wǎng)絡(luò)集中在這些單元上進(jìn)行自我運(yùn)動(dòng)估計(jì)?;谥皫缀螁卧儞Q估計(jì)模塊中解碼器的最后一個(gè)特征映射,投票模塊可以預(yù)測(cè)出平移和旋轉(zhuǎn)的得分
和

。預(yù)測(cè)得分在所有幾何單元上使用標(biāo)準(zhǔn)softmax函數(shù)進(jìn)行歸一化,從而作為不同幾何單元的投票權(quán)重:

和

??偟膩碚f,投票階段的運(yùn)動(dòng)估計(jì)可以表述為:

投票模塊能夠很好地區(qū)分幾何單元的置信度,下圖顯示了投票權(quán)重的預(yù)測(cè)

2.基于三維固有匹配誤差建模的自監(jiān)督訓(xùn)練
1)三維不確定性感知的幾何一致性loss
為了估計(jì)不同方向的測(cè)量不確定性,對(duì)于每個(gè)點(diǎn),都用一個(gè)3*3的協(xié)方差矩陣進(jìn)行關(guān)聯(lián)從而描述它在三維空間中的不確定性。對(duì)于每個(gè)點(diǎn)在相鄰幀之間的協(xié)方差矩陣,通過一個(gè)三維CNN進(jìn)行估計(jì)。另外推導(dǎo)了一個(gè)損失函數(shù)用來指導(dǎo)協(xié)方差學(xué)習(xí),并以不確定性感知的方式來監(jiān)督自我運(yùn)動(dòng)估計(jì)。
通常來說,在上述假設(shè)下,點(diǎn)對(duì)齊誤差也是滿足高斯分布的


定義

那么點(diǎn)對(duì)齊誤差的負(fù)對(duì)數(shù)似然可以推導(dǎo)為

并且將其作為不確定性感知的幾何一致性損失用來監(jiān)督自我運(yùn)動(dòng)估計(jì)和點(diǎn)協(xié)方差。
2)其他loss
采用一個(gè)殘差提升loss 并且通過ICP生成一個(gè)更精確的自我運(yùn)動(dòng)估計(jì),ICP通過之前的網(wǎng)絡(luò)生成的自我運(yùn)動(dòng)估計(jì)位姿進(jìn)行初始化,并且只迭代2次,然后在不同尺度上對(duì)位姿進(jìn)行近似,之后通過如下的近似目標(biāo)函數(shù)來監(jiān)督幾何單元的變換:

α和 β是對(duì)應(yīng)的超參,對(duì)于不同的幾何單元,
和會(huì)動(dòng)態(tài)的進(jìn)行調(diào)整,從而使得網(wǎng)絡(luò)聚焦在區(qū)域中的代表性結(jié)構(gòu)。
L是之前投票環(huán)節(jié)的預(yù)測(cè)分?jǐn)?shù)。
3.不確定性感知建圖
激光雷達(dá)點(diǎn)云的噪聲和稀疏特性限制了基于兩幀的里程計(jì)的精度。傳統(tǒng)方法通過累積之前的掃描來建圖場(chǎng)景,并通過掃描到地圖匹配進(jìn)一步優(yōu)化自我運(yùn)動(dòng)估計(jì)。但是非剛性部分和噪聲測(cè)量會(huì)導(dǎo)致幀之間的不一致,現(xiàn)實(shí)生活中這是普遍存在的,所以傳統(tǒng)方法并不總是可靠的。所以可以將上述的基于學(xué)習(xí)的點(diǎn)協(xié)方差估計(jì)和發(fā)現(xiàn)代表性結(jié)構(gòu)提供的先驗(yàn)信息合并到建圖模塊中來解決這個(gè)問題。對(duì)于具有不確定性的地圖更新,考慮引入點(diǎn)和舊地圖體素的可靠性從而提高魯棒性,具體來說,如果變換后的新點(diǎn)(即狀態(tài)為
和
)落在空白處,將在那里創(chuàng)建一個(gè)新體素,并直接用新點(diǎn)的狀態(tài)設(shè)置其狀態(tài):
和
。否則直接利用Bayes過濾器進(jìn)行體素更新:
4.實(shí)驗(yàn)
就KITTI數(shù)據(jù)集上的性能來看,效果超過了所有的經(jīng)典方法和有監(jiān)督及無監(jiān)督方法,達(dá)到了非常明顯的sota性能。
在apollo數(shù)據(jù)集上的表現(xiàn)來看,也達(dá)到了sota性能
模塊消融實(shí)驗(yàn)也能證明各個(gè)部分的有效性
Kitti序列10的可視化進(jìn)一步證明了整體和各個(gè)模塊的有效性
對(duì)于不同物體的權(quán)重影響分析,進(jìn)一步說明了所提出的權(quán)重有效性
參數(shù)調(diào)整實(shí)驗(yàn)
關(guān)于點(diǎn)協(xié)方差估計(jì)的可視化,主要是說明可以更有效的提取可靠結(jié)構(gòu)

在Tesla V100的支持下可以達(dá)到實(shí)時(shí)性能

Conclusion
這篇文章效果非常好,作為一個(gè)無監(jiān)督的里程計(jì)達(dá)到了有監(jiān)督及經(jīng)典激光SLAM的精度,并且在算力足夠的情況下可以達(dá)到實(shí)時(shí)的性能。里程計(jì)網(wǎng)絡(luò)首先從高維3D特征中估計(jì)幾何單元變換,然后根據(jù)被檢測(cè)的代表性結(jié)構(gòu)對(duì)自我運(yùn)動(dòng)估計(jì)進(jìn)行投票。不確定性感知建圖模塊利用3D CNN的逐點(diǎn)協(xié)方差估計(jì)構(gòu)建可靠的建圖,并利用先前發(fā)現(xiàn)的代表性結(jié)構(gòu)改進(jìn)基于兩幀的自我運(yùn)動(dòng)估計(jì)。代碼已經(jīng)開源,總的來說是一個(gè)非常好的工作。
本文僅做學(xué)術(shù)分享,如有侵權(quán),請(qǐng)聯(lián)系刪文。
3D視覺工坊精品課程官網(wǎng):https://www.3dcver.com/
1.面向自動(dòng)駕駛領(lǐng)域的多傳感器數(shù)據(jù)融合技術(shù)
2.面向自動(dòng)駕駛領(lǐng)域的3D點(diǎn)云目標(biāo)檢測(cè)全棧學(xué)習(xí)路線!(單模態(tài)+多模態(tài)/數(shù)據(jù)+代碼)
3.徹底搞透視覺三維重建:原理剖析、代碼講解、及優(yōu)化改進(jìn)
4.國(guó)內(nèi)首個(gè)面向工業(yè)級(jí)實(shí)戰(zhàn)的點(diǎn)云處理課程
5.激光-視覺-IMU-GPS融合SLAM算法梳理和代碼講解
6.徹底搞懂視覺-慣性SLAM:基于VINS-Fusion正式開課啦
7.徹底搞懂基于LOAM框架的3D激光SLAM: 源碼剖析到算法優(yōu)化
8.徹底剖析室內(nèi)、室外激光SLAM關(guān)鍵算法原理、代碼和實(shí)戰(zhàn)(cartographer+LOAM +LIO-SAM)
9.從零搭建一套結(jié)構(gòu)光3D重建系統(tǒng)[理論+源碼+實(shí)踐]
10.單目深度估計(jì)方法:算法梳理與代碼實(shí)現(xiàn)
11.自動(dòng)駕駛中的深度學(xué)習(xí)模型部署實(shí)戰(zhàn)
12.相機(jī)模型與標(biāo)定(單目+雙目+魚眼)
13.重磅!四旋翼飛行器:算法與實(shí)戰(zhàn)
14.ROS2從入門到精通:理論與實(shí)戰(zhàn)
15.國(guó)內(nèi)首個(gè)3D缺陷檢測(cè)教程:理論、源碼與實(shí)戰(zhàn)