Open Source Robotics

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

Neural Radiance Field

  • 又稱: NeRF, NeRFs, radiance field
  • 類別: Sensing › 3D maps & reconstruction
  • 標籤: 3d-reconstruction, computer-vision, neural-rendering, perception, deep-learning

一種神經場景表示法,把 3D 位置與觀看方向對應到顏色與密度,以帶有姿態的影像訓練而成,因此能渲染出場景的新視角。

定義

神經輻射場(Neural Radiance Field,NeRF)是一種以神經網路表示 3D 場景的方法,由 Mildenhall 等人於 2020 年提出。網路以一個 3D 點與一個觀看方向為輸入,輸出該點的顏色與體積密度。要從新的相機姿態渲染影像時,會讓一條光線穿過每個像素,在光線上的許多取樣點對網路求值,再以傳統的體積渲染依密度加權合成顏色。

NeRF 是以一組已知相機姿態的場景影像訓練而成,相機姿態通常以 COLMAP 等運動回復結構工具估計。訓練會調整網路,讓渲染出的影像與真實照片相符。由於渲染過程可微分,單靠照片就能提供足夠的監督;不需要任何 3D 真值。對輸入座標進行位置編碼,可讓網路捕捉細微的細節。

原始方法的訓練與渲染都很慢。後續研究引入了更快的場景表示法,例如多解析度雜湊網格與體素網格,把訓練時間從數小時縮短到數分鐘,並把 NeRF 擴展到大型場景、動態場景以及沒有已知姿態的影像。3D 高斯潑濺(3D Gaussian Splatting)是後來出現的顯式表示法,如今在需要即時渲染的場合常被選用。

對機器人領域而言,NeRF 能以一般相機提供稠密的幾何與外觀。深度可從密度場讀出,語意場或特徵場可與顏色一起學習,而且這種表示法可在任意一點查詢。其限制包括需要大量姿態良好的視角、只從少數視點看到的區域會產生瑕疵,以及隨場景變化持續更新模型的成本。

為何重要

NeRF 讓機器人只靠相機影像、不需要深度感測器,就能建立場景與物體的精細 3D 模型。它們為建圖、物體重建、抓取規劃與模擬開啟了新的做法,也是連結感知與操作及導航之研究中常見的基礎元件。

主要應用

  • 從相機影像進行場景與物體的 3D 重建
  • 為模擬與合成訓練資料渲染新視角
  • 用於導航與檢測的稠密建圖
  • 在農業場景中定位並計數水果等物體
  • 以重建的幾何進行抓取規劃

實際應用

使用 NeRF 的機器人團隊,通常會用手持相機、無人機或機器人本身的相機拍攝一組影像,以 COLMAP 或從機器人的運動學取得相機姿態,再用 Nerfstudio 等框架訓練模型。訓練好的場接著會離線使用,例如擷取網格或點雲、為抓取規劃渲染深度、定位或計數物體,或為模擬與合成資料產生逼真的視角。由於相較於傳統建圖,訓練與更新的成本仍然較高,NeRF 主要用於靜態場景或一次性的重建;團隊在信任其幾何之前,會從訓練時未使用的視點檢查重建品質。

常見誤解

  • NeRF 儲存的是 3D 網格 — 它在網路權重中儲存一個連續函數;網格或點雲必須事後擷取
  • NeRF 需要深度感測器 — 它們是以已知相機姿態的一般 RGB 影像訓練而成
  • 所有 NeRF 都能即時渲染 — 原始的表述很慢;即時使用仰賴加速的變體或高斯潑濺等其他表示法

誰需要了解

  • 從事 3D 重建的感知工程師
  • 以真實場景建立模擬的機器人學習研究人員
  • 農業與檢測機器人團隊
  • 電腦視覺領域的學生

相關技術

  • 3D 高斯潑濺(3D Gaussian Splatting)
  • COLMAP
  • 運動回復結構(Structure from Motion)
  • Nerfstudio
  • 體積渲染(Volume Rendering)
  • 有號距離場(Signed Distance Field)

相關術語

  • 3D Gaussian Splatting
  • Point Cloud
  • Depth Camera

相關專案

  • LingBot-Map: Streaming 3D reconstruction from one camera: pose and depth for every frame, live
  • Open3D: Modern library for 3D point cloud processing, mesh operations, and 3D machine learning
  • PCL: Industry-standard C++ library for point cloud processing in robotics perception
  • OpenDroneMap: Open-source photogrammetry toolkit that turns drone images into maps and 3D models
  • pySLAM: Hybrid Python/C++ visual SLAM pipeline with classic and deep-learning front-ends
  • OpenMind OM1: AI-native operating system for robots with modular perception, cognition, and action

影片

  • NERFs (No, not that kind) - Neural Radiance Fields - Computerphile: Computerphile

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