Package Summary

The AR pair tracking package


Configured by two AR Markers this package tracks the markers and computes a relative pose from the robot to the midpoint(of the baseline) between two markers.

Why two markers

You can do this with a single ar marker - it will supply you with all the information you need - a full six degrees of position and orientation information. However, the orientation data can often be quite dodgy. Detection rates and the position data on the other hand is quite reliable, so here we use position data from the two ar markers to provide more robustness than we could get with ar marker data from one.


The node can track a multiple pairs of AR markers. The AR Pair lists are configurable through subscriber topic.

Client source code explains what to configure.



Subscribed Topics

update_ar_pairs (yocs_msgs/ARPairList)
  • Updates a list of ar pairs to track.

Published Topics

~spotted_markers (invalid message type for MsgLink(msg/type))
  • string identifying which markers are spotted - 'none', 'left', 'right', 'both'.
~initial_pose (geometry_msgs/PoseWithCovarianceStamped)
  • pose with covariance stamped for use to set an initial pose for amcl (assuming /map is at the base of the midpoint of the two ar markers.
~relative_target_pose (geometry_msgs/PoseStamped)
  • 2d pose between sensor and target location, use for an approach controller.


publish_transforms (bool, default: true)
  • Publish transform tree
global_frame (string, default: ar_global)
  • global frame of robot. e.g) map
marker_frame (string, default: camera_rgb_optical_frame)
  • frame where marker is detected.
base_frame (string, default: base_footprint)
  • robot's root frame

Wiki: yocs_ar_pair_tracking (last edited 2014-08-17 08:19:50 by jihoonl)