Users Manual

AprilTag
Fig. 7.3.2: A 16h5 tag (left) and a 36h11 tag (right). AprilTags consist of a mandatory white (a) and black (b)
border and a variable amount of data bits (c).
AprilTags are similar to QR codes. However, they are specifically designed for robust identification at large
distances. As for QR codes, we will call the tag pixels modules. Fig. 7.3.2 shows how AprilTags are structured.
They are surrounded by a mandatory white and black border, each one module wide. In the center, they carry a
variable amount of data modules. Other than QR codes, they do not contain any user-defined information but are
identified by a predefined family and ID. The tags in Fig. 7.3.2 for example are of family 16h5 and 36h11 and have
id 0 and 11, respectively. All supported families are shown in Table 7.3.1.
Table 7.3.1: AprilTag families
Family Number of tag IDs Recommended
16h5 30 -
25h7 242 -
25h9 35 o
36h10 2320 o
36h11 587 +
For each family, the number before the “h” states the number of data modules contained in the tag: While a 16h5
tag contains 16 (4x4) data modules ((c) in Fig. 7.3.2), a 36h11 tag contains 36 (6x6) modules. The number behind
the “h” refers to the Hamming distance between two tags of the same family. The higher, the more robust is the
detection, but the fewer individual tag IDs are available for the same number of data modules (see Table 7.3.1).
The advantage of fewer data modules (as for 16h5 compared to 36h11) is the lower resolution of the tag. Hence,
each tag module is larger and the tag therefore can be detected from a larger distance. This, however, comes
at a price: First, fewer data modules lead to fewer individual tag IDs. Second, and more importantly, detection
robustness is significantly reduced due to a higher false positive rate; i.e, tags are mixed up or nonexistent tags are
detected in random image texture or noise.
For these reasons we recommend using the 36h11 family and highly discourage the use of the 16h5 and 25h7
families. The latter families should only be used if a large detection distance really is necessary for an application.
However, the maximum detection distance increases only by approximately 25% when using a 16h5 tag instead
of a 36h11 tag.
Pre-generated AprilTags can be downloaded at the AprilTag project website (https://april.eecs.umich.edu/
software/apriltag.html). There, each family consists of multiple PNGs containing single tags and one PDF con-
taining each tag on a separate page. Each pixel in the PNGs corresponds to one AprilTag module. When printing
the tags, special care must be taken to also include the white border around the tag that is contained in the PNGs
as well as PDFs (see (a) in Fig. 7.3.2). Moreover, the tags should be scaled to the desired printing size without any
interpolation, so that the sharp edges are preserved.
7.3. TagDetect 76