Tag Tracking

November 2014

Overview

This project involved setting up and designing experiments to evaluate several tag tracking packages to assess their usefulness. Programming for this project was done in python and utilized ROS (robot operating system).

A full tutorial with details on the process of camera calibration, package installation, and complete test results can be found in this repository.

qr_code_track

About tag tracking

Tag tracking is a useful technique to be able to identify an object and estimate it’s position and angle. Tags can store a wide range of information based on user need. It can be used in many applications including warehouse shipping and receiving, inventory counts, barcode scanning, and pose estimation. Tag tracking allows added flexibility to systems that comes with an improvement in capturing data.

Project outline

Three tag tracking packages were tested and compared both quantifiably and quantitatively. We were interested in pose estimate noise, minimum and maximum tracking distance, average tracker frequency, ease of use, light sensitivity, and interruptions of visibility.

Step by step

  • Camera calibration
    • A USB webcam was used, however others such as a Kinect may be used for better results.
    • Creates a calibration file by sampling several photos of a known object and calculating a mean.

      Checkerboard calibration

      calibration

  • Download and install tag tracking packages and dependencies
  • Create launch files to nicely package image data and visual display together for ease of use

  • Run experiments and analyze data for comparisons

    Pictured below: ar_track_alvar

    ar_track_alvar