自 2021 10 月以來, NVIDIA 和 Open Robotics 合作推出了兩項重要的更改,現已發布在簡陋的 ROS 2 版本中,以提高提供硬件加速器的計算平臺的性能。
新的 ROS 2 簡易硬件加速特性稱為類型自適應和類型協商。 NVIDIA 將在下一次 NVIDIA ISAAC ROS 發布( 2022 年 6 月底)中發布一個實現類型自適應和類型協商的軟件包。
這些簡單但功能強大的框架添加將顯著提高開發人員的性能,這些開發人員希望將人工智能/機器學習和計算機視覺功能納入其基于 ROS 的應用程序中。
Open Robotics 首席執行官布萊恩·格基( Brian Gerkey )表示:“隨著 ROS 開發人員向其機器人應用程序添加更多的自主權,機器人上的計算機正變得更加強大。我們一直在努力改進 ROS 框架,以確保它能夠利用這些邊緣計算機中的高性能硬件資源。”。
“與 NVIDIA robotics 團隊密切合作,我們很高興在謙遜的版本中分享新功能(類型調整和協商),這將有助于整個 ROS 社區努力接受硬件加速。”
消除硬件加速的開銷
類型自適應
硬件加速器通常需要不同的數據格式來提供最佳性能。類型適配( REP-2007 )現在可用于 ROS 節點以更適合硬件的格式工作。處理管道可以使用自適應類型消除 CPU 和內存加速器之間的內存拷貝。不必要的內存拷貝會消耗 CPU 計算、浪費電源并降低性能,尤其是隨著圖像大小的增加。
類型協商
另一個新的創新是類型協商( REP-2009 )。處理管道中的不同 ROS 節點可以公布其支持的類型,以便選擇產生理想性能的格式。 ROS 框架執行此協商過程,并與不支持協商的遺留節點保持兼容性。
使用類型適配和協商加速處理管道使硬件加速器零拷貝成為可能。這減少了軟件開銷,并釋放了底層硬件的潛力。隨著機器人專家遷移到更強大的計算平臺,如 NVIDIA Jetson Orin ,他們可以期望實現硬件帶來的更多性能增益。
這些更改完全在 ROS 2 內部完成,這確保了與現有工具、工作流和代碼庫的兼容性。

類型適應和協商已顯示出有希望的結果。在 ROS 2 Foxy 和 ROS 2 Humble 上運行了一個由 ROS 節點圖組成的基準測試,每個節點的計算量最小,因此我們可以觀察底層框架的性能。我們在 Jetson AGX Xavier 和新的 Jetson AGX Orin .我們觀察到 Xavier 提高了 3 倍, Orin 提高了 7 倍。

引入 NVIDIA ISAAC 用于 ROS 運輸
類型自適應和協商的 NVIDIA 實現稱為 NITROS 。這些是由 ISAAC ROS 硬件加速模塊(又稱 GEMs )組成的 ROS 處理管道。這些管道將于 2022 年 6 月底在 ISAAC ROS 開發商預覽( DP )中提供。 NITROS 的首次發布將包括三條管道,計劃在今年晚些時候推出更多管道。
NITROS Pipeline | ROS 2 Nodes in Pipeline |
---|---|
AprilTag Detection Pipeline | ArgusCameraMono (Raw Image) – Rectify – (Rectified Image) – AprilTag (AprilTag Detection) |
Stereo Disparity Pipeline | ArgusCameraStereo (Raw Image) – Rectify – (Rectified Image) – ESSDisparity (DNN Inference) – PointCloud (Point Cloud Output) |
Image Segmentation Pipeline | ArgusCameraMono (Raw Image) – Rectify – (Rectified Image) – DNNImageEncode (DNN Pre-Processed Tensors) – Triton (DNN Inference) – UNetDecode (Segmentation Image) |
強大的新型 GEMs 輔助機器人感知
除了 NITROS 加速管道外, ISAAC ROS DP 版本還包含兩個新的基于 DNN 的 GEM ,旨在幫助機器人專家完成常見的感知任務。
第一個 GEM ESS 是用于立體相機視差預測的 DNN 。 網絡?為機器人應用提供基于視覺的連續深度感知。
另一個 GEM , Bi3D ,是用于基于視覺的障礙預測的 DNN 。基于 NVIDIA Research 的開創性工作,對 DNN 進行了改進,以檢測自由空間,同時預測障礙物。該網絡可預測障礙物是否位于立體攝像頭的四個可編程鄰近區域之一內。
Bi3D 經過優化,可在 NVIDIA DLA 硬件?上運行。利用 DLA ,可以同時保留 GPU 和 CPU 計算資源。
Bi3D 和 ESS 都經過預訓練,可用于使用 synthetic 和真實數據的機器人應用,并用于商業用途。這兩款新的 ISAAC ROS Gem 加入了之前發布的經典計算機視覺立體深度視差例程 stereo \ u image \ u proc ,為立體相機深度感知提供三種不同的獨立功能。


Isaac ROS 2 GEM | Description |
---|---|
Image Pipeline | Camera Image Processing |
NVBlox | 3D Scene Reconstruction |
Visual SLAM | VSLAM and Stereo Odometry |
AprilTags | Apriltag Detection and Pose Estimation |
Pose Estimation | 3D Object Pose Estimation |
Image Segmentation | Semantic Image Segmentation |
Object Detection | DNN for Object Detection using DetectNet |
DNN Inference | DNN Node for using Triton/TensorRT |
Argus Camera | CSI/GSML Camera Support |
快速入門
有興趣將 NVIDIA AI 感知集成到其產品中的 ROS 開發人員應該從今天開始 ISAAC ROS .
?