Show EOL distros: 

Package Summary

Skeleton Markers: Publish a list of joint markers for viewing in RViz

Package Summary

Skeleton Markers: Publish a list of joint markers for viewing in RViz

Package Summary

Skeleton Markers: Publish a list of joint markers for viewing in RViz

Package Summary

Skeleton Markers: Publish a list of joint markers for viewing in RViz.

Package Summary

Skeleton Markers: Publish a list of joint markers for viewing in RViz.

Works Only With Microsoft Kinect

Please note that as of ROS Indigo, this package no longer supports the Asus Xtion Pro Live or other Primesense cameras. These cameras generally fail to work with the openni_tracker node due to USB 3.0 incompatibilities on newer machines.

Install Kinect Drivers for Ubuntu 14.04 and ROS Indigo

To make this package work with ROS Indigo, you will need the Kinect drivers for Ubuntu 14.04. The following instructions were taken from here. The steps below are for a 64-bit system. Use the 32-bit files for a 32-bit system.

 $ mkdir ~/src
 $ cd ~/src
 $ git clone https://github.com/avin2/SensorKinect
 $ cd SensorKinect/Bin
 $ tar xjf SensorKinect093-Bin-Linux-x64-v5.1.2.1.tar.bz2
 $ cd Sensor-Bin-Linux-x64-v5.1.2.1
 $ sudo ./install.sh

Overview

Display the skeleton joints returned by the openni_tracker package (or using the skeleton_tracker node included in this package) as markers in RViz. This package contains two nodes for reading the tracked skeleton in two different ways: the skeleton_markers.py node subscribes to the Skeleton message topic returned by the skeleton_tracker node included in the package. The markers_from_tf.py node can read the transforms directly from the openni_tracker package or the included skeleton_tracker node.

Display the skeleton joints returned by the openni_tracker package (or using the skeleton_tracker node included in this package) as markers in RViz. This package contains two nodes for reading the tracked skeleton in two different ways: the skeleton_markers.py node subscribes to the Skeleton message topic returned by the skeleton_tracker node included in the package. The markers_from_tf.py node can read the transforms directly from the openni_tracker package or the included skeleton_tracker node.

Display the skeleton joints returned by the openni_tracker package (or using the skeleton_tracker node included in this package) as markers in RViz. This package contains two nodes for reading the tracked skeleton in two different ways: the markers_from_skeleton_msg.py node subscribes to the Skeleton message topic returned by the skeleton_tracker node included in the package. The markers_from_tf.py node can read the transforms directly from the openni_tracker package or the included skeleton_tracker node.

Installation

$ cd ~/ros_workspace (change to match your rosbuild workspace directory)
$ svn co http://pi-robot-ros-pkg.googlecode.com/svn/trunk/skeleton_markers
$ cd skeleton_markers
$ rosmake

$ cd ~/ros_workspace (change to match your rosbuild workspace directory)
$ git clone https://github.com/pirobot/skeleton_markers.git
$ cd skeleton_markers
$ git checkout groovy-devel
$ rosmake

$ cd ~/catkin_ws/src (change to match your catkin workspace directory)
$ git clone -b hydro-devel https://github.com/pirobot/skeleton_markers.git
$ cd ~/catkin_ws
$ catkin_make
$ rospack profile

How To Use

Method 1

To easiest way to use skeleton markers is as follows:

$ roscd skeleton_markers
$ rosrun rviz rviz -d markers.vcg
$ roslaunch skeleton_markers markers.launch

$ roscd skeleton_markers
$ rosrun rviz rviz -d markers.rviz
$ roslaunch skeleton_markers markers.launch

Then assume the "Psi Pose" in front of the camera while keeping an eye on RViz until calibration is complete and tracking begins.

Method 2

You can also view the TF frames for each joint:

$ roslaunch skeleton_markers markers_from_tf.launch
$ roscd skeleton_markers
$ rosrun rviz rviz -d markers_from_tf.vcg

$ roslaunch skeleton_markers markers_from_tf.launch
$ roscd skeleton_markers
$ rosrun rviz rviz -d markers_from_tf.rviz

Then assume the "Psi Pose" in front of the camera while keeping an eye on RViz until calibration is complete and tracking begins.

Skeleton Markers Node

skeleton_markers.py

A ROS node for displaying RViz markers for the skeleton joints returned by the skeleton_tracker node or the pi_tracker package.

Subscribed Topics

/skeleton (skeleton_markers/Skeleton)
  • Skeleton message published by the skeleton_tracker node

Published Topics

/skeleton_markers (visualization_msgs/Marker)
  • Point type markers that can be displayed in RViz.

Parameters

~fixed_frame (str, default: /openni_depth_frame)
  • Fixed reference frame
~rate (int, default: 20)
  • Update rate
~scale (float, default: 0.07)
  • Height and width of markers in meters.
~lifetime (float, default: 0 (forever))
  • Duration of markers as displayed in RViz.
~ns (str, default: skeleton_markers)
  • Namespace for markers.
~id (int, default: 0)
  • Marker ID within namespace.
~color (dictionary, default: green: { 'r': 0.0, 'g': 1.0, 'b': 0.0, 'a': 1.0 })
  • Marker color.

Markers from Skeleton Message Node

markers_from_skeleton_msg.py

A ROS node for displaying RViz markers for the skeleton joints returned by the skeleton_tracker node or the pi_tracker package.

Subscribed Topics

/skeleton (skeleton_markers/Skeleton)
  • Skeleton message published by the skeleton_tracker node

Published Topics

/skeleton_markers (visualization_msgs/Marker)
  • Point type markers that can be displayed in RViz.

Parameters

~fixed_frame (str, default: /openni_depth_frame)
  • Fixed reference frame
~rate (int, default: 20)
  • Update rate
~scale (float, default: 0.07)
  • Height and width of markers in meters.
~lifetime (float, default: 0 (forever))
  • Duration of markers as displayed in RViz.
~ns (str, default: skeleton_markers)
  • Namespace for markers.
~id (int, default: 0)
  • Marker ID within namespace.
~color (dictionary, default: green: { 'r': 0.0, 'g': 1.0, 'b': 0.0, 'a': 1.0 })
  • Marker color.

Example Launch File

Use the markers.launch file:

<launch>
  <include file="$(find skeleton_markers)/launch/skeleton.launch" />

  <node pkg="skeleton_markers" name="skeleton_markers" type="skeleton_markers.py" output="screen">
    <rosparam file="$(find skeleton_markers)/params/marker_params.yaml" command="load" />
  </node>
</launch>

Example Launch File

Use the markers.launch file:

<launch>
  <include file="$(find skeleton_markers)/launch/skeleton.launch" />

  <node pkg="skeleton_markers" name="skeleton_markers" type="markers_from_skeleton_msg.py" output="screen">
    <rosparam file="$(find skeleton_markers)/params/marker_params.yaml" command="load" />
  </node>
</launch>

Note: use the markers.vcg RViz configuration file.

Note: use the markers.rviz RViz configuration file.

Skeleton Markers From tf Node

markers_from_tf.py

A ROS node for displaying the skeleton joints returned by the openni_tracker package as markers in RViz.

Published Topics

/skeleton_markers (visualization_msgs/Marker)
  • Point type markers that can be displayed in RViz.

Parameters

~fixed_frame (str, default: /openni_depth_frame)
  • Fixed reference frame
~rate (int, default: 20)
  • Update rate
~scale (float, default: 0.07)
  • Height and width of markers in meters.
~lifetime (float, default: 0 (forever))
  • Duration of markers as displayed in RViz.
~ns (str, default: skeleton_markers)
  • Namespace for markers.
~id (int, default: 0)
  • Marker ID within namespace.
~color (dictionary, default: green: { 'r': 0.0, 'g': 1.0, 'b': 0.0, 'a': 1.0 })
  • Marker color.
~tf_prefix (str, default: skeleton)
  • tf_prefix for identifying skeleton frames

Example Launch File

Use the markers_from_tf.launch file:

<launch>
  <include file="$(find openni_camera)/launch/openni_node.launch" />
  
  <node pkg="openni_tracker" name="openni_tracker" type="openni_tracker" output="screen">
    <param name="tf_prefix" value="skeleton" />
  </node>
  
  <node pkg="skeleton_markers" name="skeleton_markers" type="markers_from_tf.py" output="screen">
    <rosparam file="$(find skeleton_markers)/params/marker_params.yaml" command="load" />
  </node>
</launch>

Note: use the markers.vcg RViz configuration file.

Note: use the markers.rviz RViz configuration file.

Wiki: skeleton_markers (last edited 2015-11-29 01:25:28 by Patrick Goebel)