• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • 機器人

    R2D2:利用 NVIDIA Research 構建AI驅動的3D機器人感知與地圖構建技術

    機器人必須感知和解釋其 3D 環境,才能安全有效地行動。這對于非結構化或陌生空間中的自主導航、對象操作和遠程操作等任務尤為重要。機器人感知的進步越來越側重于在統一的實時工作流程中使用強大的感知模塊來集成 3D 場景理解、通用物體追蹤和持久空間內存。

    本期 NVIDIA 機器人研發摘要 (R2D2)探討了 NVIDIA Research 的多個感知模型和系統,這些模型和系統支持統一的機器人 3D 感知堆棧。它們可在不同的現實世界環境中實現可靠的深度估計、攝像頭和物體姿態追蹤以及 3D 重建:

    • FoundationStereo ( CVPR 2025 最佳論文提名) :用于立體深度估計的基礎模型,可在各種環境 (包括室內、室外、合成和現實世界場景) 中通用,具有零樣本性能。
    • PyCuVSLAM:用于 cuVSLAM 的 Python Wrapper,使 Python 用戶能夠實施 NVIDIA 的 CUDA 加速 SLAM 庫,以實現實時攝像頭姿態估計和環境映射。
    • BundleSDF:用于 RGB-D 視頻中 6-DoF 物體姿態追蹤和密集 3D 重建的神經系統。
    • FoundationPose:通用的 6D 物體姿態估計器和追蹤器,用于具有最少預先信息的新物體。
    • nvblox Pytorch Wrapper:nvblox 庫的 Pytorch 包裝器,這是一個 CUDA 加速庫,用于 PyTorch 的深度攝像頭 3D 重建。

    3D 空間表示:機器人感知的支柱

    這些項目的核心在于強調 3D 空間表示,即以機器人可以使用的形式捕獲環境或物體的結構。FoundationStereo 可處理立體圖像深度估計的基本任務。它引入了一個用于立體深度的基礎模型,專為實現強零樣本泛化而設計。

    Two rows of photos showing disparity images generated with FoundationStero. The five images on top are RGB photos, while the five below show the generated disparity.
    圖 1。使用 FoundationStereo 生成的 Disparity images

    FoundationStereo 已在超過 100 萬個合成立體對上進行訓練。它可以在不同的環境 (包括室內、室外、合成和現實世界場景 (如圖 1)) 中準確推理差異 (從而推理 3D 結構) ,而無需針對特定場景進行調整。輸出由密集深度圖或點云組成,它們代表場景的 3D 結構。

    在環境映射方面,nvblox 和 cuVSLAM 等庫會隨著時間的推移構建空間表示。NVIDIA 的 nvblox 是一個 GPU 加速的 3D 重建庫,可重建體素網格體素網格,并輸出用于導航的 Euclidean signed distance field (ESDF) 熱圖。這為移動機器人實現了視覺 3D 避障,為昂貴的 3D lidar 傳感器提供了經濟高效的替代方案。

    雖然 nvblox 擅長幾何映射,但缺乏對環境的語義理解。借助 nvblox_torch,我們引入了一個 PyTorch Wrapper,它可以將 2D VLM 基礎模型的語義嵌入提升到 3D。

    同樣,cuVSLAM 通過 Isaac ROS 為機器人提供 GPU 加速的視覺慣性 SLAM。cuVSLAM 以前僅限于 ROS 用戶,現在可以通過名為 PyCuVSLAM 的新 Python API 進行訪問。它簡化了數據工程師和深度學習研究人員的集成。

    深度和地圖構建模塊可創建幾何支架(無論是點云、signed distance fields,還是特征網格),并在此基礎上構建更高級別的感知和規劃。如果沒有可靠的 3D 呈現,機器人就無法準確感知、記憶或推理世界。

    用于場景理解的實時 SLAM 和攝像頭姿態估計

    將這些項目連接在一起的一個關鍵方面是通過 SLAM (Simultaneous Localization and Mapping) 實現實時場景理解。cuVSLAM 是一種高效的 CUDA 加速 SLAM 系統,用于在機器人的板載 GPU 上運行的立體視覺慣性 SLAM。

     An image showing the localization with cuVSLAM
    圖 2。使用 cuVSLAM 生成的定位

    對于喜歡使用 Python 的簡單性和通用性的開發者來說,利用強大而高效的 Visual SLAM 系統仍然是一項艱巨的任務。借助 PyCuVSLAM,開發者可以輕松地對 cuVSLAM 進行原型設計并將其用于應用,例如從互聯網級視頻生成機器人訓練數據集。該 API 可以從第一人稱觀看視頻中估計自我攝像頭的姿態和軌跡,從而增強端到端決策模型。此外,將 cuVSLAM 集成到 MobilityGen 等訓練流程中,可以通過學習真實的 SLAM 系統錯誤來創建更穩健的模型。功能示例如圖 2 所示。

    實時 3D 映射

    Three stacked GIFs showing real-time 3D mapping. The top figure shows a reconstruction built with nvblox_torch. The bottom left shows the fusion of vision foundation model features into a 3D voxel grid—a popular approach for representing the semantic content of a scene. The bottom right shows slices of a 3D distance field extracted from the reconstruction.
    圖 3。上圖顯示了使用 nvblox_torch 構建的重建。左下角展示了將視覺基礎模型特征融合到 3D voxel grid 中的過程,這是表示場景語義內容的常用方法。右下角顯示了從重建中提取的 3D 距離場切片。

    Nvblox_torch 是一個易于使用的 Python 接口,用于 nvblox CUDA 加速重建庫,允許開發者輕松地對用于操作和導航應用的 3D 地圖構建系統進行原型設計。

    空間內存是機器人完成更長距離任務的核心能力。機器人通常需要推理場景的幾何和語義內容,其中場景的空間范圍通常大于單個攝像頭圖像所能捕獲的空間范圍。3D 地圖將多個視圖中的幾何和語義信息聚合為場景的統一表示。利用 3D 地圖的這些屬性可以提供空間內存,并支持機器人學習背景下的空間推理。

    Nvblox_torch 是一個 CUDA 加速的 PyTorch 工具箱,用于使用 RGB-D 攝像頭進行機器人映射。該系統允許用戶在 NVIDIA GPU 上將環境觀察結果與場景的 3D 呈現相結合。然后,可以查詢此 3D 表示形式的數量,例如障礙物距離、表面網格和占用概率 (請參見圖 3) 。nvblox_torch 使用來自 PyTorch 張量的零復制輸入/ 輸出接口來提供超快性能。

    此外,nvblox_torch 還添加了一項新功能:deep feature fusion。此功能允許用戶將視覺基礎模型中的圖像特征融合到 3D 重建中。隨后,生成的重建將同時表示場景的幾何圖形和語義內容。3D 中的foundation model特征正在成為基于語義的導航和語言引導操作的熱門表征。此表示現在可在 nvblox_torch 庫中使用。

    6-DoF 物體姿態追蹤和新物體的 3D 重建

    以物體為中心的感知也同樣重要:了解場景中的物體是什么、它們在哪里以及它們如何移動。FoundationPoseBundleSDF 這兩個項目解決了 6-DoF 物體姿態估計和追蹤的挑戰,即使是機器人以前從未見過的物體也是如此。

    FoundationPose 代表一種基于學習的方法:它是用于 6D 物體姿態估計和跟蹤的統一基礎模型,適用于基于模型和無模型的場景。這意味著同一系統可以處理已知對象 (如果有可用的 CAD 模型) 或全新對象 (僅使用少量參考圖像) ,而無需重新訓練,如 Video 1 中所示,機械手會抓取對象。FoundationPose 通過利用神經隱式表示來合成物體的新視圖來實現這一點,有效地彌合了完整 3D 模型與僅有稀疏觀察之間的差距。

    它在大規模合成數據上進行訓練 (借助基于 LLM 的數據生成工作流等技術) ,可以實現魯棒性泛化;事實上,只要提供最少的信息 (模型或圖像) ,它就可以在測試時即時應用于新對象。這種基礎模型方法可在姿態基準測試中實現出色的準確性,優于專門方法,同時在新穎物體上保持零樣本能力。

    Two side-by-side GIFs showing the masking of an object in a robot manipulator on the left and foundation pose detection on the right.
    圖 4。FoundationPose 在機器人機械手中的 Robotics 應用。

    BundleSDF 采用在線優化驅動的方法來解決此問題,提供了一種近實時 (~ 10 Hz) 方法,用于從 RGB-D 視頻中同時進行 6-DoF 姿態追蹤和神經 3D 重建。它僅在第一幀中假設分割;之后不需要先前的 CAD 模型或類別知識。

    BundleSDF 的關鍵是并發學習的 Neural Object Field,一種神經隱式 SDF,可在觀察時捕獲物體的幾何圖形和外觀。當物體移動時,BundleSDF 會使用過去的幀不斷優化姿態圖,隨著時間的推移優化姿態軌跡和形狀估計。姿態估計與形狀學習的集成可有效解決大型姿態變化、遮擋、低紋理表面和鏡面反射等挑戰。在交互結束時,機器人擁有一致的 3D 模型并追蹤動態獲取的姿態序列。

    該框架概述如下圖 5 所示。首先,在連續圖像之間匹配特征,以獲得粗略的姿態估計 (Sec. 3.1) 。一些構圖幀存儲在內存池中,以便日后進行優化 (Sec. 3.2) 。根據池的子集動態創建姿態圖 (Sec. 3.3) ,在線優化會優化圖形中的所有姿態以及當前姿態。更新后的姿勢會重新存儲在池中。最后,池中的所有構圖幀 (在單獨的線程中) 都會學習用于建模幾何圖形和視覺紋理的 Neural Object Field (Sec. 3.4) ,同時調整之前估計的姿勢。

    A diagram of a system that refines object pose from video and learns 3D shape using BundleSDF.
    圖 5。BundleSDF 框架:該框架使用內存增強的姿態圖來估計和優化視頻流中的 3D 物體姿態,并學習幾何圖形和外觀的神經物體表示。

    FoundationPoseBundleSDF 都強調了對象級 3D 理解在機器人開發中的重要性。能夠拾取或操控任意物體的機器人必須能夠感知物體的 3D 位置和方向 (姿態) ,通常還能感知其形狀。這些項目展示了兩條互補的路徑:預訓練的基礎模型 ,通過學習廣泛的先驗來泛化到新對象;以及用于構建自定義模型的對象的在線 neural SLAM 。在實踐中,這些功能甚至可以協同工作,例如,基礎模型可以提供初步猜測,然后通過在線重建進行改進。統一的主題是,機器人正在轉向對新物體的實時 6D 感知,而不是局限于識別一組固定的已知物品。

    基礎模型:跨任務的泛化和統一

    更多的機器人感知系統利用基礎模型,即只需極少調整即可跨任務泛化的大型神經網絡。這在 FoundationStereo 和 FoundationPose 中很明顯,它們分別為立體深度估計和 6D 物體姿態追蹤提供了強有力的基準。

    FoundationStereo 將之前于 DepthAnythingV2 的側調整單目深度整合到立體模型框架中,無需重新訓練即可增強魯棒性和域泛化。它在各種環境中使用超過 100 萬個合成立體對進行訓練,在 Middlebury、KITTI 和 ETH3D 數據集等基準測試中實現了先進的零樣本性能。該模型改進了成本體積編碼器和解碼器,增強了遠程差異估計。

    在圖 6 (下圖) 中,Side-Tuning Adapter (STA) 利用來自凍結的 DepthAnythingV2 的豐富單目先驗,以及來自多級 CNN 的詳細高頻特征來提取一元特征。Attentive Hybrid Cost Filtering (AHCF) 將 Axial-Planar Convolution (APC) 過濾與 Disparity Transformer (DT) 模塊相結合,在 4D 混合成本體積中有效聚合跨空間和差異維度的特征。根據此過濾后的成本量預測初始差異,并使用 GRU 塊進行細化。每個優化階段都會使用更新后的差異從過濾后的混合成本體積和相關體積中查找特征,從而指導下一個優化步驟,并產生最終的輸出差異。

    A diagram showing the flow of the FoundationStero with the AHCF filter.
    圖 6。通過 AHCF 從輸入圖像到輸出差異的 FoundationStereo 流

    FoundationPose 是一個統一模型,用于對新物體進行單幀 6D 姿態估計和多幀姿態追蹤。它通過學習物體幾何圖形的神經隱式表示,支持基于模型和基于圖像的推理。它使用 CAD 模型或一些 RGB 引用泛化到不可見的對象。它基于大語言模型生成的大型合成數據集進行訓練,包括各種任務提示和場景變體。

    FoundationPose 利用對比訓練和基于 Transformer 的編碼器,在 YCB-Video、T-LESS 和 LM-OCC 等基準測試中的表現明顯優于 CosyPose 和 StablePose 等特定任務基準。圖 7 說明了 FoundationPose 的工作原理。為了減少大規模訓練的人工工作量,我們使用新興技術和資源(包括 3D 模型數據庫、LLMs 和 diffusion models)創建了合成數據生成工作流(Sec. 3.1)。為了將無模型設置和基于模型的設置連接起來,我們使用 object-centric neural field(Sec. 3.2)用于新穎的視圖 RGB-D 渲染和渲染與比較。對于姿態估計,我們會在物體周圍均勻地初始化全局姿態,并通過 refinement network 進行優化(Sec. 3.3)。最后,我們將優化后的姿勢發送到 pose selection 模塊,以預測其分數,并選擇具有最佳分數的姿勢作為輸出(Sec. 3.4)。

    A diagram of a system for generating data and estimating 3D poses.
    圖 7。該工作流結合姿勢假設的 neural rendering、refinement 和 ranking,生成合成訓練數據并估算物體姿態。

    這些模型共同代表著朝著機器人領域統一和可重復使用的感知主干邁出的一步。通過將有關深度和物體幾何圖形的通用先驗嵌入到實時系統中,它們可以在零樣本場景中實現可靠的性能,其中機器人必須在環境中運行或在訓練期間看不到物體。隨著機器人向適應性更強的開放世界部署邁進,基礎模型提供了在通用感知框架內支持各種任務所需的靈活性和可擴展性。

    邁向集成式 3D 感知堆棧

    這些項目共同指向一個統一的 3D 感知堆棧,其中深度估計、SLAM、物體追蹤和重建作為緊密集成的組件運行。FoundationStereo 可提供可靠的深度;cuVSLAM 可跟蹤攝像頭姿態以進行實時定位和映射;而 BundleSDF 和 FoundationPose 可處理物體級理解,包括 6-DoF 追蹤和形狀估計,即使是未見過的物體也不例外。

    通過基于 foundation models 和神經 3D 表征構建,這些系統實現了通用的實時感知,支持在復雜環境中進行導航、操作和交互。機器人的未來在于此類集成堆棧,其中感知模塊共享表示和上下文,使機器人能夠感知、記憶并以空間和語義感知的方式行動。

    總結

    本期 R2D2 探討了立體深度估計、SLAM、物體姿態追蹤和 3D 重建方面的最新進展如何融合到統一的機器人 3D 感知堆棧中。這些工具(其中許多由 foundation models 提供支持)使機器人能夠實時了解環境并與之交互,即使在面對新奇物體或陌生場景時也是如此。

    如需了解詳情,請查看以下資源:

    即將推出:

    • FoundationStereo 商業版

    探索在 CVPR 2025 上展示的所有 NVIDIA 研究論文,并查看研究的實際應用

    本文是我們 NVIDIA 機器人研發摘要 (R2D2)的一部分,旨在讓開發者更深入地了解 NVIDIA Research 在物理 AI 和機器人應用方面的新突破。

    如需了解最新動態,請訂閱時事通訊,并在 YouTubeDiscord開發者論壇上關注 NVIDIA Robotics。要開啟您的機器人開發之旅,請注冊免費的 NVIDIA Robotics Fundamentals 課程

    致謝

    感謝 Joseph Aribido、Stan Birchfield、Valts Blukis、Alex Evans、Dieter Fox、Orazio Gallo、Jan Kautz、Alexander Millane、Thomas Müller、Jonathan Tremblay、Matthew Trepte、Stephen Tyree、Bowen Wen 和 Wei Yang 對本文中提到的研究做出的貢獻。

    ?

    +1

    標簽

    人人超碰97caoporen国产