Open Source Robotics

精選高品質的開源機器人專案、工具與軟體,推動機器人社群向前發展。

Neural Implicit Representation

  • 又稱: neural field, implicit neural representation, INR, coordinate-based network
  • 類別: Sensing › 3D maps & reconstruction
  • 標籤: 3d-representation, neural-fields, mapping, deep-learning, slam

一種把形狀、場景或地圖儲存為神經網路的方式,這個網路把空間座標對應到佔據、符號距離、密度或顏色等值,因此可以在任意點上查詢。

定義

神經隱式表示(Neural implicit representation)不把幾何以點、體素或網格的形式明確儲存,而是儲存一個函數。一個網路(通常是多層感知器,MLP)接收一個 3D 座標(有時還帶有觀看方向或潛在編碼),並回傳該點的一個值:佔據機率(Occupancy Networks)、符號距離(DeepSDF),或體積密度與顏色(NeRF)。表面是隱式的:它被定義為這個函數的一個等位集,例如符號距離的零等位集,可以用體積渲染或球體追蹤來渲染,也可以用行進立方體演算法取出網格。

這種表示是連續的,因此能在任意解析度下查詢;它的記憶體取決於模型大小,而不是直接取決於場景體積;而且它是可微的,因此能透過渲染損失,用深度、光達或影像來訓練。單純的 MLP 難以呈現精細的細節,訓練與查詢也很慢。位置編碼有助於細節,而混合式表示則把學習所得的特徵存放在網格中,例如稠密或稀疏的體素網格,或 Instant-NGP 的多解析度雜湊網格,再用小型網路解碼,以記憶體換取速度與細節。

在機器人領域,神經隱式地圖用於 SLAM 系統,例如針對 RGB-D 輸入的 iMAP 與 NICE-SLAM,以及針對光達的 LONER;這些系統在追蹤感測器姿態的同時,線上最佳化地圖網路。它們也被用作抓取的物體模型,以及規劃時的距離查詢。代價確實存在:每個場景都必須訓練,增量訓練可能會遺忘先前的區域,除非重播過去的關鍵影格,而且評估大量的點比查表更慢。3D 高斯潑濺等顯式的替代方法,犧牲一部分連續性,換來快得多的渲染。

為何重要

神經隱式表示提供精簡、連續且可微的地圖,能融合大量觀測並填補小缺口。它們讓以學習為基礎的建圖、渲染與規劃共用同一個世界模型,這就是它們出現在 SLAM、操作與模擬各類研究中的原因。

主要應用

  • 以光達或 RGB-D 感測器進行稠密 SLAM 與建圖
  • 用於抓取規劃的物體形狀模型
  • 用於模擬與資料生成的新視角合成
  • 用於運動規劃的距離與碰撞查詢
  • 從部分觀測進行形狀補全

實際應用

一個光達 SLAM 系統把地圖表示成一個特徵網格,搭配一個預測密度的小型 MLP 解碼器。每次新的掃描都提供一批光線;系統沿其中一部分光線取樣點,並訓練地圖,讓由預測密度渲染出的深度與量測到的距離相符,同時估測掃描的姿態。訓練期間會重播一組過去的關鍵影格,避免地圖中較早的部分被覆寫。建圖完成後,在網格上評估這個場,並用行進立方體演算法產生網格以供檢視,或在規劃時直接查詢距離。

常見誤解

  • 神經隱式地圖沒有明確的結構 — 大多數即時系統把特徵網格或雜湊表與小型網路結合,因此記憶體仍會隨場景大小增加
  • 隱式表面無法轉成網格 — 它是一個等位集,可以在任意選定的解析度下用行進立方體演算法取出
  • 神經隱式表示就是 NeRF — NeRF 只是預測密度與顏色的一個實例;佔據網路與符號距離網路是其他實例
  • 連續就代表細節無限 — 細節受模型容量、輸入編碼與訓練資料的限制

誰需要了解

  • SLAM 與建圖工程師
  • 3D 視覺研究人員
  • 使用學習所得物體模型的操作研究人員
  • 建立場景重建的模擬工程師

相關技術

  • NeRF
  • DeepSDF
  • 佔據網路(Occupancy Networks)
  • Instant-NGP
  • NICE-SLAM
  • 3D 高斯潑濺(3D Gaussian Splatting)

相關術語

  • Signed Distance Field
  • Neural Radiance Field
  • 3D Gaussian Splatting
  • SLAM
  • Keyframe
  • Marching Cubes

相關專案

  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • oomwoo: Open-source DIY robot vacuum: 3D-printed, ROS2 + 2D LiDAR, fully local.
  • Cartographer: Google's real-time 2D and 3D SLAM system for multi-platform robotics
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
  • FAST-LIVO2: Fast, direct LiDAR-inertial-visual odometry from HKU-MARS, published in IEEE T-RO
  • DimOS: Python robotics runtime with agents, SLAM and teleop, no ROS required

影片

  • Computer Vision - Lecture 9.1 (Coordinate-based Networks: Implicit Neural Representations): Tübingen Machine Learning

本網站需要 JavaScript 才能正常運作。請啟用 JavaScript 以瀏覽我們的開源機器人專案。