borglab/gtsfm

End-to-end SFM framework based on GTSAM

解決的問題

GTSfM 提供了一個端對端的 Structure-from-Motion (SfM) 流水線,可從一組 2D 圖像中重建 3D 場景。它特別解決了 3D 重建中對可擴展、分散式運算的需求,允許將處理過程並行化到多台機器或工作節點上,從而更高效地處理更大規模的資料集。

工作原理

此專案基於 GTSAM 建構,並使用 Dask 實現原生平行計算。採用模組化架構,SfM 流水線的不同組件可輕鬆替換:

  • 前端:處理關鍵點檢測、特徵描述(使用 SIFT 或 SuperPoint 等工具)、匹配(例如 SuperGlue)、對應關係驗證。
  • 平均化:實作旋轉與位移平均化,以建立初始位姿。
  • 資料關聯:從 2D 軌跡中進行 3D 點三角化。
  • 束調整:優化 3D 結構與相機位姿。
  • 稠密化:支援高保真場景表示的密集多視角立體(MVS)與 Gaussian Splatting。

適用對象

專為從事電腦視覺、機器人與 3D 重建的研究人員與開發者設計,適用於需要處理多種資料集格式(如 COLMAP、Argoverse 和 Tanks and Temples)的高效率、分散式流水線的使用者。

主要亮點

  • 分散式處理:原生支援透過 Dask 實現平行計算,包含多機器叢集部署。
  • 模組化設計:抽象基底類別允許輕鬆替換檢測器、描述子與匹配器。
  • 深度學習整合:支援 SuperPoint、SuperGlue 與 PatchmatchNet 的預訓練權重。
  • 廣泛相容性:包含多個產業標準資料集的載入器,並提供 Nerfstudio 的轉換腳本。
  • 可視化支援:整合 Open3D 與 COLMAP GUI,用於檢視重建後的場景。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案