內容提要:來自蒙特利爾、卡內基梅隆大學的團隊,在 ICRA 2020 上發表的論文中所提出的 ∇SLAM,解決了當下 SLAM 系統普遍所面臨的一個開放性問題。
關鍵詞:SLAM 室內 3D 地圖重建
近兩年來,隨著自動駕駛、無人機等智慧裝置的迅猛發展,其背後的一項關鍵技術——SLAM,(Simultaneous Localization And Mapping,中文譯名:同時定位與地圖構建)也名聲大噪。
SLAM 發展距今已有 30 餘年的歷史,是機器在未知環境下,感知和狀態估計、進行自主作業的關鍵技術,可以說,機器要執行路徑規劃、導航等任務,AR、VR 構建穩定的三維空間,這些技術都離不開 SLAM 的輔助。
通俗點來說,SLAM 就解答兩個問題:「我在哪兒?」和「我的環境裡有啥?」
比如掃地機器人這類,就是依靠鐳射雷達或攝像頭,再結合 SLAM 技術,才能清楚房間的角角落落是如何佈局的,然後構建環境地圖,根據這些資訊來規劃自己的打掃路徑。
SLAM 賦予掃地機器人定位、路徑規劃等核心功能
不過,發展多年以來,傳統的 SLAM 演算法仍面臨端到端不可微的開放性問題,來自蒙特利爾大學、卡內基梅隆大學的團隊在 ICRA 2020 發表的論文,則針對這一問題提出瞭解決辦法。
∇SLAM,解決經典 SLAM 演算法瓶頸問題目前,經典的 SLAM 演算法有 Kinect-Fusion、PointFusion 和 ICP-SLAM 等,但由於這些方法中,很多元件是不可微分的,所以,SLAM 的表示學習一直是一個開放性的問題。這也成為了阻礙 SLAM 發展的瓶頸。
為了解決此類問題,許多研究者開始使用深度學習。但是,這些研究大多限於虛擬資料集或特定環境,甚至為了準確性而犧牲效率。因此,它們不夠實用。
在今年 5 月,在機器人與人工智慧領域的重要會議 ICRA 2020(International Conference on Robotics and Automation,機器人與自動化國際會議)上,來自蒙特利爾大學、卡內基梅隆大學的團隊,發表了論文《∇SLAM: Dense SLAM meets Automatic Differentiation》,提出了以上問題的一個解決方法。
梯度SLAM:一種滿足自動微分的SLAM密集建圖方法
http://montrealrobotics.ca/gradSLAM/paper.pdf
作者指出,在 SLAM 的密集建圖系統中,比如最佳化(Optimization)問題,光線投射(Raycast)問題等,有很多單元是不可被微分的,這也使得基於梯度的方法在 SLAM 中沒有取得很大的成功。
對此,作者在論文中提出了 gradslam(∇SLAM),這是一種在 SLAM 上的可微計算圖。利用計算圖的自動微分功能, gradslam(∇SLAM)允許在其每個元件或整個系統之間進行基於梯度的學習。
∇SLAM 的核心思想是設計了可微分的計算圖來表示 SLAM 密集建圖中不可微分的元件
一個完全可微分的 SLAM 系統,將使任務驅動的表示學習成為可能,因為表示任務效能的誤差訊號,可以透過 SLAM 系統,反向傳播到原始感測器觀察資料中。
最終結果是,團隊在不犧牲效能的情況下,設計了可微分的信賴域(trust-region)最佳化器、表面測量和融合方案,以及對光線上的微分。這種密集的 SLAM 與計算圖形的融合,使大家能夠從 3D 地圖一路回溯到 2D 畫素,為基於梯度的 SLAM 學習開闢了新的可能性。
作者表示, gradslam(∇SLAM)的框架非常具有泛化性,可以擴充套件到任何現有的 SLAM 系統並使其可微。
可微分大法,讓 3D 重建效果更好團隊對典型的 SLAM 方法 ICP-Odometry、ICP-SLAM、Kinect-Fusion 以及 PointFusion,實現為可微分計算圖,並分析了每種方法與其不可微的對應方法的比較。
結果表明:在 ICP-Odometry 和 ICP-SLAM 建圖上的表現良好,絕對軌跡誤差和相對位姿誤差都呈現了一個較低的水平。如下表所示:
每種方法不微分和微分後的效果對比
專案的官方地址:
https://github.com/gradslam/gradslam,可以動手實操一下,感受 gradslam(∇SLAM) 方案的優勢。
除了 Github 以外,我們還找到了一個方便操作的國內服務,算力容器服務平臺 OpenBayes 也上線了該模型訓練教程,可以直接在 JupyterNotebook 中執行。
根據下方提示,可訪問 gradslam(∇SLAM)的完整 JupyterNotebook
只需要訪問 openbayes.com 註冊,就可以獲得 CPU、NVIDIA T4、NVIDIA Tesla V100 等多種算力資源,目前在內測期間每週都有免費算力額度發放至賬戶。
OpenBayes 除了提供各類算力容器,還有公開資料集、預訓練模型、以及很多熱門專案的 Jupyter Notebook,一鍵執行,方便操作。
免費 CPU 額度:300 分鐘/周
免費 vGPU 額度:180 分鐘/周
gradslam(∇SLAM)執行說明
註冊 openbayes 完成後
訪問控制檯-公共教程
SLAM 技術已是業界公認的視覺領域空間定位技術的前沿方向視覺領域空間定位技術的前沿方向,從無人機到無人駕駛,從掃地機器人到 VR/AR 領域,這些熱門領域都可看到 SLAM 的身影。
所以,如果你也想了解 SLAM 方向的最新科研成果,不如在這個週末好好研究gradslam(∇SLAM)專案。
論文地址:
http://montrealrobotics.ca/gradSLAM/paper.pdf
專案 GitHub 地址:
https://github.com/gradslam/gradslam
gradslam(∇SLAM)JupyterNotebook 地址:
https://openbayes.com/console/openbayes/containers/HoveymNsfrT