9.9 3D 姿勢推定

Docker 使用方法のリファレンス: モジュール 3.7 Docker

Isaac ROS 3D 姿勢推定公式リンク: https://nvidia-isaac-ros.github.io/repositories_and_packages/isaac_ros_pose_estimation/isaac_ros_centerpose/index.html

概要

Isaac ROS 姿勢推定には、6 自由度物体姿勢ワークフロー用の 3 つの主要な ROS 2 パッケージが含まれています。以下の表は、それらの違いをまとめたものです。

パッケージ再学習不要の新規物体TAO サポート相対速度相対品質最適な用途
isaac_ros_foundationposeはいN/A速い最高未見物体に対するゼロショット姿勢推定と追跡
isaac_ros_dopeいいえいいえ最速良好既知物体の成熟した軽量姿勢推定
isaac_ros_centerposeいいえはいより速いより良いNVIDIA TAO 学習サポート付きの既知物体姿勢推定

これらのパッケージは GPU を使用して DNN 推論を加速し、物体の姿勢を推定します。センサー機能は、出力予測を対応する深度と統合して、ナビゲーションまたは操作のための物体の 3D 姿勢と距離を提供できます。

クイックスタート

開発を簡素化するために、主に Isaac ROS Dev Docker イメージを使用し、その上でデモンストレーションを実行します。このデモンストレーションでは、rosbag ファイルを再生してカメラからのデータストリームをシミュレートするため、カメラデバイスをインストールする必要はありません。

実際のハードウェア上または接続されたカメラでワークフローを実行する予定の場合は、サポートされているカメラ設定について Isaac ROS の公式ドキュメントを参照してください。

ターミナルを開き、ワークスペースに移動し、Isaac ROS 開発コンテナに入ります。

bash

cd ${ISAAC_ROS_WS}/src

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

次の起動コマンドを実行します:

bash

ros2 launch isaac_ros_examples isaac_ros_examples.launch.py launch_fragments:=centerpose,centerpose_visualizer interface_specs_file:=${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_centerpose/quickstart_interface_specs.json model_name:=centerpose_shoe model_repository_paths:=[${ISAAC_ROS_WS}/isaac_ros_assets/models]

2 つ目のターミナルを開き、コンテナに入ります。

bash

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

次のコマンドを実行します:

bash

ros2 bag play -l ${ISAAC_ROS_WS}/isaac_ros_assets/isaac_ros_centerpose/quickstart.bag

結果を表示する

3 つ目のターミナルを開き、コンテナに入ります。

bash

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh

次のコマンドを実行して結果を表示します:

bash

ros2 run rqt_image_view rqt_image_view /centerpose/image_visualized