VIO data from the camera. The detection process is facili-
tated by TensorFlow Lite, a pre-trained deep learning neural
network, specifically a convolutional neural network (CNN).
This type of deep learning AI is designed to recognize patterns
across various media, including video, audio, and text [55, 56].
Upon detecting an AprilTag, the camera places five reference
points: four at the corners and one in the center. These points
are then used to calculate the position of the tag relative to the
drone using trigonometric functions, enabling precise localiza-
tion and navigation.
Utilizing this data for relocalizing the drone involves more
complexity than simply inputting Cartesian coordinates (XYZ).
In autopilot mode, the drone does not navigate using XYZ
coordinates instead, it relies on a different orientation con-
vention known as Euler angles or RPY (roll, pitch, yaw). The
conversion between these two systems is feasible through
the application of Euler angles of angular velocity. However,
a challenge arises because there are 12 possible Euler angle
sequences, and it is not immediately clear which sequence
is being used for the coordinate system conversion. Further
research indicates that the ZYX sequence is commonly
employed for most drones, leading to the following rotation
matrix:
Understanding these conventions is crucial for compre-
hending how the drone calculates its path to relocalize above
the AprilTag. The drone achieves this by rotating its axis and
determining its position over time based on angular velocity.
This underscores the importance of specifying the correct
commands and orientations when working with robot operat-
ing system (ROS) and configuring parameters that enable the
drone to hover above the AprilTag before landing. Additionally,
it is essential for developing algorithms that manage scouting
and landing operations. By leveraging the AprilTag detector
service through the Modal Pipe Architecture, the RPY values
can be extracted and utilized within ROS.
6.2. AprilTag Detection
Data was collected using the drone to assess its AprilTag detec-
tion capabilities in an indoor environment (see Figure 8). The
drone utilized a tag-detection system, which continuously ran
to capture AprilTag location data. Upon detecting the AprilTag’s
size and position, the drone processed its own RPY data to
navigate toward the tag. For this experiment, an AprilTag
1.2
0.6
0
Drone position
at (0,0,0)
Drone position
AprilTag position
AprilTag position
–0.6
–6
6 –0.6 0 0.6 1.2
Y (roll) axis (m)
X (pitch) axis (m) 1.8 2.4 3
–0.2
0
–1.2
VOXL m500
drone
AprilTag location
z
z
x
x y
y
Figure 8. Visual
points from
drone to AprilTag:
(a) graphical
representation
of AprilTag
detection range
(b) experimental
setup and (c) drone
camera view.
A P R I L 2 0 2 5 • M AT E R I A L S E V A L U AT I O N 45
Z
(yaw)
axis
(m)
tated by TensorFlow Lite, a pre-trained deep learning neural
network, specifically a convolutional neural network (CNN).
This type of deep learning AI is designed to recognize patterns
across various media, including video, audio, and text [55, 56].
Upon detecting an AprilTag, the camera places five reference
points: four at the corners and one in the center. These points
are then used to calculate the position of the tag relative to the
drone using trigonometric functions, enabling precise localiza-
tion and navigation.
Utilizing this data for relocalizing the drone involves more
complexity than simply inputting Cartesian coordinates (XYZ).
In autopilot mode, the drone does not navigate using XYZ
coordinates instead, it relies on a different orientation con-
vention known as Euler angles or RPY (roll, pitch, yaw). The
conversion between these two systems is feasible through
the application of Euler angles of angular velocity. However,
a challenge arises because there are 12 possible Euler angle
sequences, and it is not immediately clear which sequence
is being used for the coordinate system conversion. Further
research indicates that the ZYX sequence is commonly
employed for most drones, leading to the following rotation
matrix:
Understanding these conventions is crucial for compre-
hending how the drone calculates its path to relocalize above
the AprilTag. The drone achieves this by rotating its axis and
determining its position over time based on angular velocity.
This underscores the importance of specifying the correct
commands and orientations when working with robot operat-
ing system (ROS) and configuring parameters that enable the
drone to hover above the AprilTag before landing. Additionally,
it is essential for developing algorithms that manage scouting
and landing operations. By leveraging the AprilTag detector
service through the Modal Pipe Architecture, the RPY values
can be extracted and utilized within ROS.
6.2. AprilTag Detection
Data was collected using the drone to assess its AprilTag detec-
tion capabilities in an indoor environment (see Figure 8). The
drone utilized a tag-detection system, which continuously ran
to capture AprilTag location data. Upon detecting the AprilTag’s
size and position, the drone processed its own RPY data to
navigate toward the tag. For this experiment, an AprilTag
1.2
0.6
0
Drone position
at (0,0,0)
Drone position
AprilTag position
AprilTag position
–0.6
–6
6 –0.6 0 0.6 1.2
Y (roll) axis (m)
X (pitch) axis (m) 1.8 2.4 3
–0.2
0
–1.2
VOXL m500
drone
AprilTag location
z
z
x
x y
y
Figure 8. Visual
points from
drone to AprilTag:
(a) graphical
representation
of AprilTag
detection range
(b) experimental
setup and (c) drone
camera view.
A P R I L 2 0 2 5 • M AT E R I A L S E V A L U AT I O N 45
Z
(yaw)
axis
(m)