stereolabs/zed-ros2-wrapper

ROS 2 wrapper for the ZED SDK

是什么

zed-ros2-wrapper 是一个官方 ROS 2 包,可让您在 ROS 2 机器人系统中使用 Stereolabs 的 ZED 深度感知摄像头。它封装了在 CUDA 支持的 GPU 上运行的 ZED SDK,并将摄像头的数据作为标准 ROS 2 主题发布。

主要功能(如 README 所述)

功能 在 ROS 2 中可获得的内容
图像流 校正/未校正的彩色和灰度图像。
深度 每像素的深度图。
点云 带颜色的 3D 点云(支持可选的点云传输压缩)。
定位跟踪与建图 里程计、SLAM 风格建图,以及可选的 GNSS 融合以实现地球参考定位。
物体检测 内置 GPU 加速物体检测器,以及可选的自定义 YOLO 风格 ONNX 模型。
人体追踪 人体骨骼提取。
传感器数据 IMU、气压计、磁力计(当摄像头支持时)。
仿真模式 可在 NVIDIA Isaac Sim 流式传输的虚拟 ZED 上运行相同管道,便于无硬件测试。
集成 可与 NVIDIA Isaac ROS / NITROS 集成,实现加速数据传输。

如何运行

  1. 前置条件 – Ubuntu 20.04/22.04/24.04/26.04,ZED SDK v5.2,CUDA,以及支持的 ROS 2 发行版(Humble、Jazzy、Lyrical、Foxy(向后兼容),或开发人员用的 Rolling)。
  2. 安装 – 将仓库克隆到 ROS 2 工作空间,使用 rosdep 安装依赖项,然后使用 colcon build --symlink-install 构建。
  3. 启动 – 使用提供的启动文件:
    ros2 launch zed_wrapper zed_camera.launch.py camera_model:=<model>
    
    将 <model> 替换为您实际的 ZED 型号(例如 zed2i、zedx、virtual 等)。
  4. 配置 – 所有参数位于 zed_wrapper/config 目录下的 YAML 文件中(例如 common_stereo.yaml、zed2.yaml)。您可以编辑这些文件以更改分辨率、帧率、启用/禁用物体检测、建图、GNSS 融合等。
  5. 可视化 – 提供了预配置的 RViz2 配置;运行 rviz2 -d ./zed_wrapper/config/rviz2/<model>.rviz 或启动辅助包 zed_display_rviz2。
  6. 仿真 – 在启动命令中添加 sim_mode:=true use_sim_time:=true,以连接到流式传输合成摄像头数据的 Isaac Sim 实例。

谁会使用它?

  • 机器人开发者:在 ROS 2 上构建感知流水线,需要高分辨率深度、物体检测或人体姿态估计的开发者。
  • 研究人员:在实时视频流上实验 SLAM、GNSS 融合定位或基于 AI 的物体检测的研究人员。
  • 仿真工程师:希望在 NVIDIA Isaac Sim 中使用虚拟 ZED 摄像头进行原型设计,再部署到硬件上的工程师。

README 中注明的限制

  • 部分功能(物体检测、人体追踪、GNSS 融合、2D 模式等)在旧款第一代 ZED 摄像头或 ZED X One 型号上不可用。
  • 点云传输为可选功能;如需压缩点云,需自行安装 ros-$ROS_DISTRO-point-cloud-transport。
  • 该包仅在 LTS ROS 2 发行版上经过官方测试;较新的非 LTS 发行版可能可用,但无法保证。
  • 在使用 JP6 的 Jetson 平台上,可能需要通过 nvidia-jetpack 包设置 CUDA_TOOLKIT_ROOT_DIR。

快速入门速查表

# 1. 设置工作空间
mkdir -p ~/ros2_ws/src && cd ~/ros2_ws/src
git clone https://github.com/stereolabs/zed-ros2-wrapper.git
cd ..
rosdep update && rosdep install --from-paths src --ignore-src -r -y

# 2. 构建
colcon build --symlink-install --cmake-args=-DCMAKE_BUILD_TYPE=Release
source install/local_setup.bash

# 3. 运行 ZED 摄像头(根据需要替换模型)
ros2 launch zed_wrapper zed_camera.launch.py camera_model:=zed2i

以上所有信息均直接取自仓库的 README;未推断任何额外功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目