Overview of the system

The system consists of several ROS2 nodes, each specialized for its own task and divided into different ROS2 packages within the repository:

  • panda_interfaces: consisting of messages, services and actions interfaces used in the other packages.
  • panda_world: containing the files relative to the simulation and a few nodes bridging the ROS2 controller and keypoint recognition system with the gazebo simulation.
  • kinect_ros2: the kinect_ros2 package, allowing the publication of images and depth maps from the kinect v1 to the ROS2 network.
  • yolo_ros: the yolo_ros ROS2 package, used for the keypoint recognition using the Ultralytics YOLO models.
  • image_processing: consisting of the skeleton tracker algorithm that publishes the TFs of the keypoint, along with other messages regarding the skeleton, on the ROS2 network.
  • panda_utils: consisting of the nodes used for the control and data publication of the Franka Emika Panda robot used in this work.
  • demo_visulization_app: containing a ROS2 node allowing the activation of the robot's controller and launching the demo.