Back to ARTag main page

ARTag Rev1: marker Detection -last updated Dec 12/2006

Underlying Technology: ARTag Marker Detection

ARTag Rev2 is an augmented reality system that uses computer vision acting on video input from a camera to calculate pose to perform the necessary alignment between real and virtual cameras. ARTag uses markers to accomplish this, the markers are detected in the image and the correspondences between the image and their known 3D location used to calculate this pose.

ARTag Rev1 is the system comprising the markers themselves and the computer vision to recognize them. This page talks about this, the detection of the ARTag markers themselves.

ARTag Rev1 is a "fiducial marker system", it consists of a library of markers and the computer vision algorithms to detect them when seen in a camera image. ARTag is one component of an Augmented Reality system, it is the specially designed library of markers and the computer vision software to find them. ARTag allows reliable detection of markers in digital video images.

Screen shots of program "artag_dragonfly" detecting markers.

ARTag has a library of 2002 markers. No pattern files need to be loaded (as with ARToolkit). Each one has a number 0-2047, with (46 illegal ID's in the 11 bit range). The SDK provides a function to create the patterns from an ID number.

ARTag Rev1 included only the fiducial marker system itself, whereas Rev2 provides a complete programming kit including two versions of camera image acquisition software, and 2D,3D rendering to the screen using OpenGL. All the code and project files are included in the full (not demo) download so that you can compile and modify the programs that produced the above screen capture images. ARTag Rev1 has been developed for Windows, Linux, and Mac but is no longer available for non-commercial use. However, for an AR developer, grad student, or someone interested in creating AR systems, the Rev2 library encapsulates the Rev1 functionality and performs the rest of the needed steps for you. Rev2 is available for Windows and Linux, and soon, Mac OSX.

To learn more about how the fiducial marker system of ARTag works, have a look at the most recent artag_rev1.pdf publication, or the older publication for details on ARTag. These describe Rev1, new additions to Rev2 will be added in coming months (research-wise Rev2 adds only the marker arrays). Here is an AVI (3.2 MByte) demonstrating the marker detection, it is a screen capture of a USB camera looking at a panel of ARTag patterns (detected patterns are shown with red squares and their ID).

Comparison between ARTag and ARToolkit

ARTag comes out many years after the original ARToolkit, and benefits from the improved processing power available today. ARTag has improved (lower) false positive and inter-marker confusion rates as well as an edge-based quadrilateral finder that does not use a greyscale threshold. It uses digital encoding methods instead of correlation as in ARToolkit. This results in an almost zero rate of falsely reporting a marker when it's not there, or confusing one marker for another. Thus far I have yet to see a false positive or inter-marker confusion event occur at all in any of my programs.

Marker detection with challenging lighting. ARToolkit performance (Left) and (Middle) demonstrating how a threshold based method cannot recognize all markers simultaneously. (Right) shows how ARTag recognizing all markers. The recognition of a marker is indicated by the overlaid box and number.

ARToolkit performance (Left) and (Middle) shows how recognition is lost if even a small piece of the border is occluded. (Right) shows how ARTag markers can be recognized even despite large occlusions.

ARTag's detection rate with a focused camera drops off cleanly at about 15 pixels wide for greyscale, and 18 pixels wide for colour imagers. I tried 3 USB webcams and got about the same performance as the colour Dragonfly (below right). Read my publication for more.

ARToolkit's detection rate with the greyscale Dragonfly camera, shown with the default ARToolkit pattern files on the left, and ones captured with the MAKE_PATT program on the right. Three curves are shown, for different confidence value (c.f.) thresholds (a concept that does not exist with ARTag).

ARToolkit is faster than ARTag with small numbers of loaded marker patterns, especially if ARToolkit is ran in its default 1/2 resolution mode and ARTag is run in full resolution mode. However, if you want a large number of potential markers, the processing time for ARToolkit rises since it needs to correlate each quadrilateral in the image with all the loaded pattern files. ARTag has no pattern files, all the patterns are implicit in the digital algorithm.

Note: these are old data, processing times are reduced with Rev2k and some enhancements to the marker detection.

Back to ARTag
main page

Related Links