hri_fullbody
#
Caution
This documentation page has been auto-generated.
It may be missing some details.
hri_fullbody
Quick Facts
- Category
- Debian package
hri_fullbody-0.1.3
- Author/maintainer
Maintainer: Lorenzo Ferrini <lorenzo.ferrini@pal-robotics.com>
- License
BSD
ROS node implementing 2D/3D full-body pose estimation, using Google Mediapipe. Part of ROS4HRI.
hri_fullbody is a ROS4HRI-compatible 3D body pose estimation node.
It is built on top of Google Mediapipe 3D body pose estimation.
The node provides the 3D pose estimation for the detected humans in the scene, implementing a robust solution to self-occlusions.
This node can be used in two different modes: single body and multi-body. In the former case, the node performs the whole body detection pipeline, publishing information under the ROS4HRI naming convention regarding the body id (on the /humans/bodies/tracked topic), the body bounding box, and the jointstate of the body’s skeleton. In the latter, the node only publishes jointstate information, expecting body detection to be performed by another node and subscribing to /humans/bodies/tracked to read the ids of the currently tracked bodies.
These two modes are required since Mediapipe body estimation is not able to estimate more than one body pose per frame. Therefore, in case we want more than one body pose estimated, the adopted strategy is to use a human bounding box detection algorithm to get a cropped image of each one of the humans in the scene, and then to run body pose estimation for each one of these images.
To estimate the body position, the node does not need a RGB-D camera, only RGB is required. However, using RGB-D camera provides a more accurate depth estimation.
Node management#
How to check the status of the node?#
# this a copy-pastable snippet to check the status
# this a copy-pastable snippet using rosnode/rostopic to check the node is working
How to access the node’s logs?#
# this a copy-pastable snippet
How to start/stop/restart the node#
# this a copy-pastable snippet
Using in your code/application#
Access via the robot’s GUI#
[insert screenshots here]
Access via ROS standard tools#
# this a copy-pastable snippet
[insert screenshots here]
Using in Python#
# this a copy-pastable snippet
Using in C++#
# this a copy-pastable snippet