Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
ARTag
Information
Type Software development kit
Industry Augmented reality
Developer Mark Fiala, National Research Council Canada
Operating System Windows, Linux, Mac OS X (PowerPC and Intel)
License Proprietary; non-commercial research use only
Release Date 2004


ARTag is a fiducial marker system for augmented reality developed by Mark Fiala at the Institute for Information Technology of the National Research Council Canada (NRC). It consists of a library of square, black-and-white markers and the computer vision software that finds them in camera images, so that an application can calculate the camera's pose relative to the markers and align virtual graphics with the real scene.[1] Fiala first described the system in a July 2004 NRC report that presented it as an improved marker system based on ARToolKit, and the main conference paper appeared at the IEEE Conference on Computer Vision and Pattern Recognition (CVPR) in 2005.[2][3]

Unlike ARToolKit, which identifies a marker by correlating its interior picture against stored template files, ARTag encodes each marker's ID as a digital word protected by checksums and forward error correction, and it finds marker outlines from image edges instead of a fixed greyscale threshold. Fiala reported that this gave very low and numerically quantifiable false positive and inter-marker confusion rates, along with better tolerance of uneven lighting and partial occlusion.[3][1] Later marker systems such as AprilTag and ArUco discuss ARTag as earlier work and compare their own coding schemes against it.[4][5] The software itself was never released as open source,[4] and its NRC download had been withdrawn by early 2009.[6]

Reviewed 6 October 2026. Checked dates, report numbers, marker specifications, quotations, licensing and availability against the NRC reports, archived artag.net pages, the CVPR, TPAMI, HAVE, VR 2007, INTETAIN 2008, AprilTag, ArUco, Sagitov and STag papers, Goblin XNA pages, InfoWorld and Crossref metadata. About review dates.

History

ARTag came out of augmented reality and computer vision research at the NRC's Institute for Information Technology. The first technical report, ARTag, an improved marker system based on ARToolkit (ERB-1111, July 2004), opens by describing ARToolKit as "a very successful and robust marker system used for Augmented Reality" whose performance "has spawned many applications in AR and computer vision".[2] A longer follow-up, ARTag Revision 1. A Fiducial Marker System Using Digital Techniques (ERB-1117), is dated 24 November 2004. It characterizes the system's false positive and false negative rates, inter-marker confusion, lighting and occlusion immunity, minimum marker size, vertex jitter, library size and speed.[1] The project's own website later gave November 2004 as the date ARTag "came out", describing it as inspired by ARToolKit but "taking advantage of the increased computing processing power available".[7]

The University of Washington's Human Interface Technology Laboratory, which distributed ARToolKit, listed ARTag on its download page under "Modified Modules" as "A modified marker detection module, by Mark Fiala".[8] Fiala described the system in a series of reports and papers between 2004 and 2010:

Year Publication Venue Subject
2004 ARTag, an improved marker system based on ARToolkit NRC report ERB-1111 First description of ARTag[2]
2004 ARTag Revision 1. A Fiducial Marker System Using Digital Techniques NRC report ERB-1117 Detailed characterization of the marker system[1]
2005 ARTag, a fiducial marker system using digital techniques IEEE CVPR 2005, San Diego Main conference paper on the coding and detection design[3]
2005 Comparing ARTag and ARToolkit Plus fiducial marker systems IEEE International Workshop on Haptic Audio Visual Environments and their Applications (HAVE 2005), Ottawa Reliability, detection rate, lighting and occlusion tests against ARToolKitPlus[9]
2007 Magic Mirror System with Hand-held and Wearable Augmentations IEEE Virtual Reality 2007 Public AR display using marker-tagged props[10]
2010 Designing Highly Reliable Fiducial Markers IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 32, no. 7 Design criteria behind ARTag[11]

In the 2010 journal paper, Fiala set out a list of criteria for robust, practical fiducials and described ARTag as the result of optimizing for them: an edge-based method robust to lighting and partial occlusion for finding candidate markers, and a digital coding system for identifying and verifying them. The paper states that these criteria gave ARTag "large gains in performance" over conventional ad hoc designs.[11]

In January 2008 the Pragmatic Bookshelf published Augmented Reality: A Practical Guide by Stephen Cawood and Mark Fiala. Reviewing it for InfoWorld, Martin Heller wrote that it showed how to set up desktop AR demos with "a computer, Fiala's ARTag system and a webcam" and covered AR programming in C++ with the ARTag API, OpenCV and OpenGL, though he found the book "like an academic paper blown up to book length".[12] The ARTag website linked to the book as a way to "learn to program with ARTag and OpenGL".[6]

How it works

Marker design

An ARTag marker is a bi-tonal planar pattern made of a square outline with a 36-bit digital word encoded in its interior. The word contains a unique ID number protected from false detection by checksums and forward error correction (FEC).[1] Because the patterns are generated from the code itself, no pattern files have to be loaded, as they do in ARToolKit; the software development kit includes a function that creates a marker image from its ID number. According to the project's documentation, each marker has a number from 0 to 2047, and 46 IDs in that 11-bit range are illegal, which leaves a library of 2002 markers.[13][3]

A 2017 comparison by Sagitov and colleagues describes the interior as a 6x6 grid of black and white cells. Their description splits the library into 1001 markers with a white frame and 1001 with a black frame, with the first 10 of the 36 bits forming the marker ID and the remaining 26 bits used to detect and correct errors and to keep the four possible marker orientations distinct.[14] Edwin Olson's 2011 AprilTag paper lists the ARTag code with a length of 36 bits and a minimum Hamming distance of 4 between codewords. The same paper notes that the ARTag encoding explicitly forbids two codes because they are too likely to occur by chance.[4]

Detection

ARTag does not threshold the image into black and white. Its detector links edge pixels into line segments and groups them into quadrilaterals, then reads and verifies the interior code of each candidate.[14][3] Garrido-Jurado and colleagues note that the edge-based square detector tolerates small breaks in the square's sides, and that ARTag applications also handle occlusion by spreading many markers over a scene so that hiding some of them does not stop pose estimation. They also point out a limit: ARTag cannot tell exactly which pixels are occluded, so a hand passing in front of the scene can still be drawn over by virtual objects.[5]

The project's documentation reported that, with a focused camera, the detection rate dropped off at markers about 15 pixels wide for greyscale imagers and 18 pixels wide for color imagers. It also compared processing cost with ARToolKit: ARToolKit was faster when only a few marker patterns were loaded, but its processing time rose with the number of patterns because each candidate quadrilateral had to be correlated against every loaded pattern, whereas ARTag's patterns are implicit in the decoding algorithm.[13]

Revisions

The project distinguished two software releases. ARTag Rev1 was the fiducial marker system on its own: the marker library and the detection software. ARTag Rev2 added marker arrays and a full programming kit with camera image acquisition, 2D and 3D rendering through OpenGL, and, in the full download, the source code and project files for its example programs.[13] The Rev2 Windows demos loaded 3D models in VRML (WRL), Wavefront OBJ and 3D Studio ASE formats, and the package included 2D overlay and 3D augmentation examples and an "ARTag CAD" program for transferring points from one 3D object to another.[7]

Applications in AR and VR

Magic Lens, Augmentorium and Magic Mirror

Fiala and NRC colleague Gerhard Roth used ARTag for "magic lens" AR, in which a person holds up a tablet PC or camera phone and sees virtual content on a table or in a room through the device's screen. The software calculates the device's pose from the video alone, without an external tracking system. For a room-scale version they built an "augmentorium" with ARTag markers on the walls, ceiling and floor, arranged so that the hand-held device could find its position anywhere in the room where its camera was at least 10 cm from the nearest surface. The authors wrote that ARTag's 1001 possible markers made it possible to cover all surfaces of a room, and they networked two 10 by 15 foot rooms at remote sites for collaborative design work.[15]

The Magic Mirror system reversed the arrangement: a single camera looks out from near a large screen, and users see their "reflection" with 3D content added to hand-held and wearable objects that carry ARTag markers.[7] Fiala's IEEE Virtual Reality 2007 paper on the system argued that many onlookers can share the experience without special equipment, unlike AR viewed through head-mounted displays or tablet PCs.[10]

Goblin XNA and the AR racing game

At Columbia University, Ohan Oda and Steven Feiner created Goblin XNA, a platform built on Microsoft's XNA framework for research on 3D user interfaces, including mobile augmented reality and virtual reality, with an emphasis on games. Its project page states that it supported 6DOF position and orientation tracking "using marker-based camera tracking through ARTag with OpenCV or DirectShow", and that its predecessor, Goblin v2, tracked web cameras through an ARTag interface when students used it in Feiner's 3D User Interface Design course in spring 2007.[16] The ARTag website pointed developers to Goblin XNA as a way to create ARTag applications for Windows and the Xbox.[7]

Oda, Levi Lister, Sean White and Feiner used Goblin XNA and ARTag for an AR racing game presented at INTETAIN 2008. The driver wore a tracked video see-through head-worn display and steered a virtual car with a passive controller made from a fiducial marker array fixed to a pair of bicycle handlebars, while the physical game board was a ground plane tracked with an array of markers of different sizes. The authors chose ARTag over ARToolKit because, in their experience, it "performs better in a wider range of lighting conditions, has a lower rate of false marker detection, and is more robust to partial marker occlusions". They also found that ARTag needed relatively high-resolution, high-frame-rate video for accurate dynamic tracking, and used FireWire cameras at 640x480 and up to 60 Hz instead of web cameras.[17] The project's later README, written for Goblin XNA version 4.1 (released on 27 June 2012), describes marker tracking through the ALVAR package instead of ARTag.[18]

Tracking in a CAVE

Celozzi, Paravati, Sanna and Lamberti described a 6-DOF tracking system based on ARTag in IEEE Transactions on Consumer Electronics in 2010. It tracks a camera-equipped mobile device against a set of fiducial markers of variable size to recover the device's position and orientation for 3D user interfaces, and the authors integrated it into a CAVE (Cave Automatic Virtual Environment) using projectors and polarizers.[19]

Influence on later marker systems

Benligiray, Topal and Akinlar, the authors of the STag marker system, describe ARTag as the first marker system with forward error correction based on digital coding and the first to detect markers from edges.[20] Olson's AprilTag paper says that ARTag's performance inspired improvements to ARToolKit that became ARToolKitPlus; like AprilTag, ARTag based its detection on the image gradient. Olson also wrote that ARTag's detection algorithm was not public and that the closed nature of ARTag and Studierstube Tracker "was a challenge" for his experimental evaluation. AprilTag, by contrast, was released under an open source license. On 180,829 images from the LabelMe dataset, none of which contained a tag, Olson reported that ARToolKitPlus's BCH code had the highest false positive rate, followed by ARTag, with AprilTag's 36h10 code performing better than both.[4]

The ArUco paper of 2014 compared its generated marker dictionaries with the first 1000 recommended ARTag markers and reported larger inter-marker distances in most cases, and more bit transitions per marker. The authors also stated that their error correction method, applied to a 30-marker ARTag dictionary, could recover from errors of 5 bits instead of the 2 bits ARTag recovers from.[5] The ArUco library from the University of Córdoba can detect several dictionaries, including ARTAG, AprilTag and ARToolKit+.[21] Sagitov and colleagues used the ArUco library to detect ARTag markers in their 2017 occlusion and rotation comparison with AprilTag and CALTag.[14]

Availability and status

During its active period ARTag was distributed as compiled packages from an NRC download site. In July 2007 the project page offered Windows demos and the Rev2 SDK for Windows and Linux (its header also announced Mac Intel and PPC versions), available only to users who agreed to use them for non-commercial research, while commercial licensing was listed as "check back later".[7] The Rev1 page stated that Rev1 had been developed for Windows, Linux and Mac but was no longer available for non-commercial use, with Rev2 encapsulating its functions.[13]

By February 2009 the project page said that ARTag had been taken down from the NRC download site because Fiala's contract had expired and he was no longer an NRC employee, and that "augmented reality and computer vision research has been halted by NRC management". Fiala wrote that he was trying to obtain a license to keep providing ARTag but that "success seems uncertain".[6] The ArUco library's documentation lists ARTAG among the marker dictionaries it can detect.[21]

See also

References

  1. ↑ 1.0 1.1 1.2 1.3 1.4 Mark Fiala (2004-11). "ARTag Revision 1, A Fiducial Marker System Using Digital Techniques". NRC Publications Archive, National Research Council Canada (NRC/ERB-1117, NRCC 47419). https://nrc-publications.canada.ca/eng/view/object/?id=f12d094f-37f6-4fa8-bc4c-7f90a2d22413. Retrieved 2026-10-06.
  2. ↑ 2.0 2.1 2.2 Mark Fiala (2004-07). "ARTag, an improved marker system based on artoolkit". NRC Publications Archive, National Research Council Canada (ERB-1111, NRCC 47166). doi:10.4224/5763247. https://nrc-publications.canada.ca/eng/view/object/?id=b080c6d3-c00c-4527-863b-ee575af5045a. Retrieved 2026-10-06.
  3. ↑ 3.0 3.1 3.2 3.3 3.4 Mark Fiala (2005). "ARTag, a Fiducial Marker System Using Digital Techniques". 2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), vol. 2, pp. 590-596. doi:10.1109/CVPR.2005.74. https://mlanthology.org/cvpr/2005/fiala2005cvpr-artag/. Retrieved 2026-10-06.
  4. ↑ 4.0 4.1 4.2 4.3 Edwin Olson (2011-05). "AprilTag: A robust and flexible visual fiducial system". 2011 IEEE International Conference on Robotics and Automation (ICRA), pp. 3400-3407. doi:10.1109/ICRA.2011.5979561. https://april.eecs.umich.edu/media/pdfs/olson2011tags.pdf. Retrieved 2026-10-06.
  5. ↑ 5.0 5.1 5.2 S. Garrido-Jurado, R. Muñoz-Salinas, F.J. Madrid-Cuevas, M.J. Marín-Jiménez (2014-06). "Automatic generation and detection of highly reliable fiducial markers under occlusion". Pattern Recognition, vol. 47, no. 6, pp. 2280-2292. doi:10.1016/j.patcog.2014.01.005. http://andrewd.ces.clemson.edu/courses/cpsc482/papers/GMMM14_arucoMarkers.pdf. Retrieved 2026-10-06.
  6. ↑ 6.0 6.1 6.2 Mark Fiala (2009-02). "ARTag". ARTag project page (archived 9 September 2009; page last updated February 2009). https://web.archive.org/web/20090909171015/http://www.artag.net/. Retrieved 2026-10-06.
  7. ↑ 7.0 7.1 7.2 7.3 7.4 Mark Fiala (2007-07-23). "ARTag". ARTag project page (archived 11 August 2007; page last updated 23 July 2007). https://web.archive.org/web/20070811162643/http://www.artag.net/. Retrieved 2026-10-06.
  8. ↑ "ARToolKit Download". ARToolKit, Human Interface Technology Laboratory, University of Washington. http://www.hitl.washington.edu/artoolkit/download/. Retrieved 2026-10-06.
  9. ↑ Mark Fiala (2005). "Comparing ARTag and ARToolkit Plus fiducial marker systems". IEEE International Workshop on Haptic Audio Visual Environments and their Applications (HAVE 2005), pp. 147-152. https://doi.org/10.1109/HAVE.2005.1545669. Retrieved 2026-10-06.
  10. ↑ 10.0 10.1 Mark Fiala (2007). "Magic Mirror System with Hand-held and Wearable Augmentations". 2007 IEEE Virtual Reality Conference, pp. 251-254. https://doi.org/10.1109/VR.2007.352493. Retrieved 2026-10-06.
  11. ↑ 11.0 11.1 Mark Fiala (2010-07). "Designing Highly Reliable Fiducial Markers". IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 32, no. 7, pp. 1317-1324. https://doi.org/10.1109/TPAMI.2009.146. Retrieved 2026-10-06.
  12. ↑ Martin Heller (2008-04-01). "Augmented reality". InfoWorld. https://infoworld.com/article/2641458/augmented-reality.html. Retrieved 2026-10-06.
  13. ↑ 13.0 13.1 13.2 13.3 Mark Fiala (2006-12-12). "ARTag Rev1: marker Detection". ARTag project page (archived 17 February 2009; page last updated 12 December 2006). https://web.archive.org/web/20090217140441/http://www.artag.net/rev1.html. Retrieved 2026-10-06.
  14. ↑ 14.0 14.1 14.2 Artur Sagitov, Ksenia Shabalina, Leysan Sabirova, Hongbing Li, Evgeni Magid (2017). "ARTag, AprilTag and CALTag Fiducial Marker Systems: Comparison in a Presence of Partial Marker Occlusion and Rotation". Proceedings of the 14th International Conference on Informatics in Control, Automation and Robotics (ICINCO 2017), vol. 2, pp. 182-191. doi:10.5220/0006478901820191. https://www.scitepress.org/papers/2017/64789/64789.pdf. Retrieved 2026-10-06.
  15. ↑ Mark Fiala, Gerhard Roth. "Magic Lens Augmented Reality: Table-top and Augmentorium". Institute for Information Technology, National Research Council Canada (hosted by Carleton University). https://people.scs.carleton.ca/~roth/iit-publications-iti/docs/gerh-50003.pdf. Retrieved 2026-10-06.
  16. ↑ "Goblin XNA". Computer Graphics and User Interfaces Lab, Columbia University. https://graphics.cs.columbia.edu/projects/goblin/goblinXNA.htm. Retrieved 2026-10-06.
  17. ↑ Ohan Oda, Levi J. Lister, Sean White, Steven Feiner (2008-01). "Developing an Augmented Reality Racing Game". Proceedings of the 2nd International Conference on Intelligent Technologies for Interactive Entertainment (INTETAIN 2008), Cancun. doi:10.4108/icst.intetain2008.2472. http://www.cs.columbia.edu/~ohan/oda08.pdf. Retrieved 2026-10-06.
  18. ↑ "GoblinXNA". ColumbiaCGUI, GitHub. https://github.com/ColumbiaCGUI/GoblinXNA. Retrieved 2026-10-06.
  19. ↑ Cesare Celozzi, Gianluca Paravati, Andrea Sanna, Fabrizio Lamberti (2010-02). "A 6-DOF ARTag-based tracking system". IEEE Transactions on Consumer Electronics, vol. 56, no. 1, pp. 203-210. https://doi.org/10.1109/TCE.2010.5439146. Retrieved 2026-10-06.
  20. ↑ Burak Benligiray, Cihan Topal, Cuneyt Akinlar (2019-07-01). "STag: A Stable Fiducial Marker System". arXiv. https://arxiv.org/abs/1707.06292. Retrieved 2026-10-06.
  21. ↑ 21.0 21.1 "ArUco". AVA research group, University of Córdoba. https://www.uco.es/investiga/grupos/ava/portfolio/aruco/. Retrieved 2026-10-06.