Software package and ROS wrappers of the Aruco Augmented Reality marker detector library
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
aruco 0.2.3 Apr 20, 2018
aruco_msgs 0.2.3 Apr 20, 2018
aruco_ros 0.2.3 Apr 20, 2018
README.md Update README.md Jul 20, 2017

README.md

aruco_ros

Software package and ROS wrappers of the Aruco Augmented Reality marker detector library.

Features

  • High-framerate tracking of AR markers

  • Generate AR markers with given size and optimized for minimal perceptive ambiguity (when there are more markers to track)

  • Enhanced precision tracking by using boards of markers

  • ROS wrappers

Applications

  • Object pose estimation
  • Visual servoing: track object and hand at the same time

ROS API

Messages

  • aruco_ros/Marker.msg

     Header header
     uint32 id
     geometry_msgs/PoseWithCovariance pose
     float64 confidence
    
  • aruco_ros/MarkerArray.msg

     Header header
     aruco_ros/Marker[] markers
    

Test it with REEM

  • Open a REEM in simulation with a marker floating in front of the robot. This will start the stereo cameras of the robot too. Since this is only a vision test, there is nothing else in this world apart from the robot and a marker floating in front of it. An extra light source had to be added to compensate for the default darkness.

    roslaunch reem_gazebo reem_gazebo.launch world:=floating_marker
    
  • Launch the image_proc node to get undistorted images from the cameras of the robot.

    ROS_NAMESPACE=/stereo/right rosrun image_proc image_proc image_raw:=image
    
  • Start the single node which will start tracking the specified marker and will publish its pose in the camera frame

    roslaunch aruco_ros single.launch markerId:=26 markerSize:=0.08 eye:="right"
    

    the frame in which the pose is refered to can be chosen with the 'ref_frame' argument. The next example forces the marker pose to be published with respect to the robot base_link frame:

    roslaunch aruco_ros single.launch markerId:=26 markerSize:=0.08 eye:="right" ref_frame:=/base_link
    
  • Visualize the result

    rosrun image_view image_view image:=/aruco_single/result