stereolabs/zed-ros2-wrapper
ROS 2 wrapper for the ZED SDK
何であるか
zed-ros2-wrapper は、Stereolabs の ZED 深度センシングカメラを ROS 2 ロボットシステム内で使用できるようにする公式 ROS 2 パッケージです。ZED SDK(CUDA 対応 GPU 上で実行)をラップし、カメラのデータを標準的な ROS 2 トピックとして公開します。
主な機能(README に記載)
| 機能 | ROS 2 で得られるもの |
|---|---|
| 画像ストリーム | 正規化/非正規化されたカラーおよびグレースケール画像。 |
| 深度 | ピクセル単位の深度マップ。 |
| ポイントクラウド | 色付き 3D ポイントクラウド(オプションのポイントクラウド・トランスポート圧縮あり)。 |
| 位置追跡およびマッピング | オドメトリ、SLAM スタイルのマッピング、および地球基準の局所化のためのオプションの GNSS フュージョン。 |
| 物体検出 | GPU 加速の組み込み物体検出器と、オプションのカスタム YOLO スタイル ONNX モデル。 |
| ボディトラッキング | 人間のスケルトン抽出。 |
| センサデータ | IMU、気圧計、磁気計(カメラが対応している場合)。 |
| シミュレーションモード | NVIDIA Isaac Sim からストリーミングされる仮想 ZED に対して同じパイプラインを実行可能。ハードウェアなしでテストに有用。 |
| 統合 | NVIDIA Isaac ROS / NITROS と連携し、データ転送を高速化。 |
動作させる方法
- 前提条件 – Ubuntu 20.04/22.04/24.04/26.04、ZED SDK v5.2、CUDA、およびサポートされている ROS 2 ディストロ(Humble、Jazzy、Lyrical、Foxy(後方互換性用)、または開発者向けの Rolling)。
- インストール – リポジトリを ROS 2 ワークスペースにクローンし、
rosdepで依存関係をインストール、colcon build --symlink-installでビルド。 - 起動 – 提供された起動ファイルを使用:
ros2 launch zed_wrapper zed_camera.launch.py camera_model:=<model><model>をお使いの ZED モデル(例:zed2i、zedx、virtualなど)に置き換えてください。 - 設定 – すべてのパラメータは
zed_wrapper/config下の YAML ファイル(例:common_stereo.yaml、zed2.yaml)にあります。解像度、フレームレート、物体検出、マッピング、GNSS フュージョンの有効/無効などを変更できます。 - 可視化 – 事前構成済みの RViz2 設定が提供されています。
rviz2 -d ./zed_wrapper/config/rviz2/<model>.rvizを実行するか、ヘルパーzed_display_rviz2パッケージを起動してください。 - シミュレーション –
sim_mode:=true use_sim_time:=trueを起動コマンドに追加して、合成カメラデータをストリーミングする Isaac Sim インスタンスに接続します。
どのような人にとって有用か?
- ロボット開発者:高解像度深度、物体検出、または人間のポーズ推定が必要な ROS 2 上のセンシングパイプラインを構築する人。
- 研究者:リアルタイム動画ストリーム上で SLAM、GNSS フュージョン局所化、AI に基づく物体検出を実験する人。
- シミュレーションエンジニア:ハードウェアにデプロイする前に、NVIDIA Isaac Sim で仮想 ZED カメラでプロトタイピングしたい人。
README に記載された制限事項
- 一部の機能(物体検出、ボディトラッキング、GNSS フュージョン、2D モードなど)は、古い1世代目の ZED カメラや ZED X One モデルでは利用不可です。
- ポイントクラウド・トランスポートはオプションです。圧縮されたポイントクラウドが必要な場合は、
ros-$ROS_DISTRO-point-cloud-transportを自分でインストールする必要があります。 - このパッケージは公式に LTS ROS 2 リリースでのみテストされています。新しい非LTSリリースは動作する可能性がありますが、保証されません。
- Jetson プラットフォーム(JP6)では、
CUDA_TOOLKIT_ROOT_DIRをnvidia-jetpackパッケージ経由で設定する必要がある場合があります。
クイックスタートチートシート
# 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 から直接取得したものであり、追加の機能は推測されていません。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト