基于平面几何精确且鲁棒的尺度恢复单目视觉里程计
標題:Accurate and Robust Scale Recovery for Monocular Visual Odometry Based on Plane Geometry
作者:Rui Tian1, Yunzhou Zhang1?, Delong Zhu2?, Shiwen Liang1, Sonya Coleman3, Dermot Kerr3
編譯:點云PCL(2020)
本文僅做學術分享,如有侵權,請聯系刪除。歡迎各位加入免費知識星球,獲取PDF論文,歡迎轉發朋友圈分享快樂。未經允許請勿轉載!
公眾號致力于分享點云處理,SLAM,三維視覺,高精地圖相關的文章與技術,歡迎各位加入我們,一起交流一起進步,有興趣的可聯系微信920177957。
摘要
尺度模糊是單目視覺里程計中的一個基本問題。常見的解決方案包括閉環檢測和環境信息進一步挖掘。對于像自動駕駛這樣的應用,回環閉合并不總是可用的,因此從環境中挖掘先驗信息成為一種更有前途的方法。在本文中,假設相機離地面高度不變,本文提出了一個輕量級的尺度恢復框架,利用對地平面的精確而穩健的估計。該框架包括一種用于在地面上選擇高質量像素點的特征點提取算法,以及一種用于在局部滑動窗口中連接提取的地面點聚合算法。基于聚合數據,使用基于ransac的優化器解決最小二乘問題,最終恢復尺度。當擁有足夠的數據和魯棒的優化器的時候可以實現精確的尺度恢復。在KITTI數據集上的實驗表明,本文提出的框架在保持旋轉誤差的同時,能夠達到最較好的精度。
主要貢獻
本文提出了一種基于平面幾何的精確和魯棒尺度恢復的輕量級方法。該方法包括高效地面點提取(GPE)和三角化算法以及一種從連續幀中聚合地面點的聚合(GPA)算法。在這兩種算法的基礎上,選取了大量高質量的地面三角化點。針對尺度恢復,首先建立最小二乘問題來擬合地平面,然后估計相機的相對高度來計算實際尺度。通過利用高質量地面點和基于ransac的優化器,可以準確且魯棒的估計尺度。得益于算法的輕量化設計,我們的方法可以在基準數據集上實現20Hz的運行頻率。
?提出了一種基于Delaunay三角剖分的GPE算法,該算法能夠準確提取地面點。
?提出了一種GPA算法,可以有效地聚集局部地面點,并對地面參數進行魯棒優化。
?基于所提出的算法,實現了一種具有精確和魯棒尺度恢復的實時單目視覺里程計系統,旨在減少尺度漂移,并在無需閉環的遠程導航中提供精確的視覺里程信息。
內容精華
A、?問題的定義
本文方案的目標是估計相機位姿的絕對尺度,然后利用已知的攝像機高度h*來恢復相機的真實運動軌跡。在尺度模糊的情況下,由圖像特征計算出的相機高度h*與真實高度h保持一定的比值,因此,尺度恢復的實質是計算比例尺度s,其關鍵在于對地平面的準確估計。
B、 系統結構
本工作中提出的系統如圖1所示。系統中有兩個并行線程:第一個是單目視覺里程計線程,它將連續的圖像作為輸入,并估計當前的相機姿態,例如ORB-SLAM2框架。第二個線程用于運行GPE和GPA算法以進行尺度恢復。所提出的系統是基于這樣一個假設,即地面是局部平整的,可以用一個具有表面法線的平面來近似。第二個線程的工作流程如下。如圖1中的紅塊所示,對于來自視覺里程計線程的每個圖像幀,首先應用Delaunay三角化將匹配的特征點分割成一組三角點。然后將每個三角點反投影到相機幀中,并估計相關的平面參數。然后,利用若干幾何約束來選擇和細化接近地面的特征點。請注意,選定的接地特征點不足以精確估計平面參數。因此,提出了GPA算法,使用滑動窗口方法從多個幀中聚集地面特征點,如圖1的橙色方框所示。基于聚集的局部點,進行魯棒參數估計以擬合地平面。因此,可以估計每幀的相對相機高度,并且得到絕對高度。
系統概述。系統中有兩個并行線程:1)單目視覺里程計線程以圖像幀作為輸入,估計當前相機的姿態;2)GPE-GPA線程從單目視覺里程計線程中提取圖像特征,并選擇高質量的地面點進行地面參數估計。
地面特征點的提取
對于給定的匹配特征點集,在當前圖像幀中,對每個特征點進行三角化計算。將三角點從圖像平面反投影到當前相機幀中。每個三角化點的法向量n可以通過叉積得到:
需要注意的是,三角化點散落在整個圖像平面上,因此我們需要識別位于地平面上的三角點,稱為地面三角化點,用于估計平面參數。基于地面三角化點的法線與相機平移量正交,并且在相機的俯仰角為零的情況下,可以通過使用以下約束條件進行測試來識別地面三角化點
在實驗中,不能嚴格滿足相等的條件。因此,我們在實際實施中設定了5°閾值。對于滿足上述約束條件的保留為地面三角點,其頂點被劃分為一個新的點集。由于同一三角點可能被多個三角形共享,因此我們還需要從點集中刪除重復的頂點。這將確保每個點對地平面估計的貢獻相同。地面點已被初步分割出來,但仍可能存在由運動目標和一些遠點引入的離群點。為了進一步提高地面點的質量,采用基于RANSAC的方法對點集進行優化,使平面距離誤差最小化如下:
在實現過程中,我們隨機選擇三個點,用公式估計一個新的平面,然后計算剩余點到估計平面的總距離。這樣的過程重復多次,并保留最小的總距離誤差的平面。然后移除距離保留平面大于0.01m的點。這實際上是一個更嚴格的接地面點選擇標準。經過此過程后,只保留高質量的接地點。在下圖中給出了一個完整的GPE算法實現過程,詳細介紹了該算法的實現過程。
地面點的聚合
由于GPE算法的嚴格標準,內點可能不足以精確估計地平面。因此提出了GPA算法來聚集連續圖像幀中的地面點。如圖2所示,利用滑動窗口方法來選擇圖像幀,并且保持幀緩沖器來存儲當前窗口中的相機位姿和地面點。在每個時間間隔中,隨著新幀的到來,更新緩沖區后,然后通過求解最小二乘問題估計地平面。
GPA算法說明。在左下角的圖中,紅色的點表示接地點,綠色的線段是每個三角化點的法向量線。在右下角的圖中,紅色四邊形是基于當前窗口中聚集的接地點估計的地平面。
GPA算法的細節
基于濾波的尺度恢復
在計算出每一幀的相對相機高度h后,再由s_t=h?/h恢復每一幀的運動尺度比例
通過繪制中每一幀的相機高度的尺度,發現該尺度并不嚴格遵循高斯分布。因此,我們選擇中間點作為當前幀的比例。在時域中,應用滑動平均濾波器,如下圖所示,其可以給出更平滑的結果。
? (a) 相機高度的尺度分布。
在數據集02和05上估計的相機高度
實驗
本文進行了實驗來評估提出的方法的性能。實驗中使用的單目視覺里程計系統是基于ORB-SLAM2實現的,所提出的尺度恢復方法是作為一個獨立的線程集成的。采用KITTI數據集作為基準數據集,其中數據集01沒有使用,因為它使大多數基于特征的視覺里程計系統失效。所有的實驗都是用一臺2.30GHz的Intel(R)Core(TM)i5-6300HQ CPU筆記本電腦進行的。該方法的定性評價結果下圖所示。利用該方法可以恢復系統輸出的軌跡,這意味著與地面真實軌跡相比,不需要進行相似變換。
定性評價結果
定量分析如表二所示。采用平均平移誤差和旋轉誤差作為評價指標。
評估了系統在KITTI序列上的運行時間,實驗重復了五次。從效率上比較的結果如下
KITTI數據集上的恢復尺度的軌跡。藍色和綠色軌跡分別由本文方法和ORB-SLAM2生成。
總結
在這項工作中,我們提出了一個輕量單目視覺里程計系統,該系統具有精確和魯棒的尺度恢復,旨在減少尺度漂移,并在無回環閉合的長距離導航中提供精確的里程計。通過實現GPE-GPA算法來選擇高質量的地面點并在局部滑動窗口中進行優化,從而解決了單目視覺里程計的尺度模糊問題。大量的數據和穩健的優化器并利用估計的相機高度和與真實的比例提供準確的尺度軌跡。大量的實驗表明,提出的框架可以達到最先進的精度和恢復一個公制軌跡且沒有額外的傳感器。該系統采用輕量級結構,在20Hz的工作頻率下實現了實時性。提出的輕型單目視覺里程計系統有助于低成本自主車輛在長距離場景中的定位和導航。
資源
三維點云論文及相關應用分享
【點云論文速讀】基于激光雷達的里程計及3D點云地圖中的定位方法
3D目標檢測:MV3D-Net
三維點云分割綜述(上)
3D-MiniNet: 從點云中學習2D表示以實現快速有效的3D LIDAR語義分割(2020)
win下使用QT添加VTK插件實現點云可視化GUI
JSNet:3D點云的聯合實例和語義分割
大場景三維點云的語義分割綜述
PCL中outofcore模塊---基于核外八叉樹的大規模點云的顯示
基于局部凹凸性進行目標分割
基于三維卷積神經網絡的點云標記
點云的超體素(SuperVoxel)
基于超點圖的大規模點云分割
更多文章可查看:點云學習歷史文章大匯總
SLAM及AR相關分享
【開源方案共享】ORB-SLAM3開源啦!
【論文速讀】AVP-SLAM:自動泊車系統中的語義SLAM
【點云論文速讀】StructSLAM:結構化線特征SLAM
SLAM和AR綜述
常用的3D深度相機
AR設備單目視覺慣導SLAM算法綜述與評價
SLAM綜述(4)激光與視覺融合SLAM
Kimera實時重建的語義SLAM系統
SLAM綜述(3)-視覺與慣導,視覺與深度學習SLAM
易擴展的SLAM框架-OpenVSLAM
高翔:非結構化道路激光SLAM中的挑戰
SLAM綜述之Lidar SLAM
基于魚眼相機的SLAM方法介紹
往期線上分享錄播匯總
第一期B站錄播之三維模型檢索技術
第二期B站錄播之深度學習在3D場景中的應用
第三期B站錄播之CMake進階學習
第四期B站錄播之點云物體及六自由度姿態估計
第五期B站錄播之點云深度學習語義分割拓展
第六期B站錄播之Pointnetlk解讀
[線上分享錄播]點云配準概述及其在激光SLAM中的應用
[線上分享錄播]cloudcompare插件開發
[線上分享錄播]基于點云數據的?Mesh重建與處理
[線上分享錄播]機器人力反饋遙操作技術及機器人視覺分享
[線上分享錄播]地面點云配準與機載點云航帶平差
掃描二維碼
? ? ? ? ? ? ? ? ? ?關注我們
讓我們一起分享一起學習吧!期待有想法,樂于分享的小伙伴加入免費星球注入愛分享的新鮮活力。分享的主題包含但不限于三維視覺,點云,高精地圖,自動駕駛,以及機器人等相關的領域。
分享及合作:微信“920177957”(需要按要求備注) 聯系郵箱:dianyunpcl@163.com,歡迎企業來聯系公眾號展開合作。
點一下“在看”你會更好看耶
總結
以上是生活随笔為你收集整理的基于平面几何精确且鲁棒的尺度恢复单目视觉里程计的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MonoRec:无需激光雷达,只需单个相
- 下一篇: PDAL点云处理库介绍