In this repository, we build ros2 wrapper for trt_pose for real-time pose estimation on NVIDIA Jetson.
- Pose message
- Pose detection image message
- Visualization markers
- Launch file for RViz
- ROS 2 Eloquent:
- trt_pose
- Clone repository under ros2 workspace
$ cd ros2_ws/src/
$ git clone https://github.com/NVIDIA-AI-IOT/ros2_trt_pose.git
- Install requirements using
rosdep
$ rosdep install --from-paths src --ignore-src --rosdistro eloquent -y
- Build and Install ros2_trt_pose package
$ colcon build
$ source install/local_setup.sh
-
Change Power Mode for Jetson
sudo nvpmodel -m2
(for Jetson Xavier NX)
sudo nvpmodel -m0
(for Jetson Xavier and Jetson Nano) -
Input Images are captured using
image_tools
package
ros2 run image_tools cam2image
-
Keep
trt_pose
related model files inbase_dir
, it should include:- Model files for resnet18 or densenet121 download link
- Human Pose points json file
-
For running you can use Launch file or manually run each node:
- Run using Launch file
$ ros2 launch ros2_trt_pose pose-estimation.launch.py
Note: Update rviz file location in launch file in
launch/pose_estimation.launch.py
- Run
ros2_trt_pose
node
$ ros2 run ros2_trt_pose pose-estimation --ros-args -p base_dir:='<absolute-path-to-base_dir>'
- For following use separate window for each:
- See Pose message
$ source install/local_setup.sh $ ros2 run rqt_topic rqt_topic
- Visualize markers
$ ros2 run rviz2 rviz2 launch/pose_estimation.rviz
- See Pose message
- Run using Launch file
- ros2_torch_trt : ROS2 Real Time Classification and Detection
- ros2_deepstream : ROS2 nodes for DeepStream applications
- ros2_jetson_stats : ROS 2 package for monitoring and controlling NVIDIA Jetson Platform resources