<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article article-type="research-article" dtd-version="2.3" xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Robot. AI</journal-id>
<journal-title>Frontiers in Robotics and AI</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Robot. AI</abbrev-journal-title>
<issn pub-type="epub">2296-9144</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">777535</article-id>
<article-id pub-id-type="doi">10.3389/frobt.2021.777535</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Robotics and AI</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Visual Collaboration Leader-Follower UAV-Formation for Indoor Exploration</article-title>
<alt-title alt-title-type="left-running-head">Evangeliou et&#x20;al.</alt-title>
<alt-title alt-title-type="right-running-head">Leader Follower UAV Visual Collaboration</alt-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name>
<surname>Evangeliou</surname>
<given-names>Nikolaos</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<xref ref-type="corresp" rid="c001">&#x2a;</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1444099/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Chaikalis</surname>
<given-names>Dimitris</given-names>
</name>
<xref ref-type="aff" rid="aff2">
<sup>2</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1588749/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Tsoukalas</surname>
<given-names>Athanasios</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/1588805/overview"/>
</contrib>
<contrib contrib-type="author">
<name>
<surname>Tzes</surname>
<given-names>Anthony</given-names>
</name>
<xref ref-type="aff" rid="aff1">
<sup>1</sup>
</xref>
<uri xlink:href="https://loop.frontiersin.org/people/710887/overview"/>
</contrib>
</contrib-group>
<aff id="aff1">
<sup>1</sup>
<institution>Robotics and Intelligent Systems Control (RISC) Lab, Electrical and Computer Engineering Department, New York University Abu Dhabi</institution>, <addr-line>Abu Dhabi</addr-line>, <country>United Arab Emirates</country>
</aff>
<aff id="aff2">
<sup>2</sup>
<institution>Electrical and Computer Engineering Department, New York University</institution>, <addr-line>Brooklyn</addr-line>, <addr-line>NY</addr-line>, <country>United&#x20;States</country>
</aff>
<author-notes>
<corresp id="c001">&#x2a;Correspondence: Nikolaos Evangeliou, <email>nikolaos.evangeliou@nyu.edu</email>
</corresp>
<fn fn-type="other">
<p>This article was submitted to Multi-Robot Systems, a section of the journal Frontiers in Robotics and&#x20;AI</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Edited by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1089222/overview">Rodrigo S. Jamisola Jr</ext-link>, Botswana International University of Science and Technology, Botswana</p>
</fn>
<fn fn-type="edited-by">
<p>
<bold>Reviewed by:</bold> <ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/1484762/overview">Daniel Villa</ext-link>, Federal University of Espirito Santo, Brazil</p>
<p>
<ext-link ext-link-type="uri" xlink:href="https://loop.frontiersin.org/people/237450/overview">Abdelkader Nasreddine Belkacem</ext-link>, United Arab Emirates University, United Arab Emirates</p>
</fn>
</author-notes>
<pub-date pub-type="epub">
<day>04</day>
<month>01</month>
<year>2022</year>
</pub-date>
<pub-date pub-type="collection">
<year>2021</year>
</pub-date>
<volume>8</volume>
<elocation-id>777535</elocation-id>
<history>
<date date-type="received">
<day>15</day>
<month>09</month>
<year>2021</year>
</date>
<date date-type="accepted">
<day>18</day>
<month>11</month>
<year>2021</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#xa9; 2022 Evangeliou, Chaikalis, Tsoukalas and Tzes.</copyright-statement>
<copyright-year>2022</copyright-year>
<copyright-holder>Evangeliou, Chaikalis, Tsoukalas and Tzes</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/">
<p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these&#x20;terms.</p>
</license>
</permissions>
<abstract>
<p>UAVs operating in a leader-follower formation demand the knowledge of the relative pose between the collaborating members. This necessitates the RF-communication of this information which increases the communication latency and can easily result in lost data packets. In this work, rather than relying on this autopilot data exchange, a visual scheme using passive markers is presented. Each formation-member carries passive markers in a RhOct configuration. These markers are visually detected and the relative pose of the members is on-board determined, thus eliminating the need for RF-communication. A reference path is then evaluated for each follower that tracks the leader and maintains a constant distance between the formation-members. Experimental studies show a mean position detection error (5 &#xd7; 5&#x20;&#xd7; 10cm) or less than 0.0031% of the available workspace [0.5 up to 5m, 50.43&#xb0; &#xd7; 38.75&#xb0; Field of View (FoV)]. The efficiency of the suggested scheme against varying delays are examined in these studies, where it is shown that a delay up to 1.25s can be tolerated for the follower to track the leader as long as the latter one remains within its&#x20;FoV.</p>
</abstract>
<kwd-group>
<kwd>UAV</kwd>
<kwd>drone</kwd>
<kwd>swarm</kwd>
<kwd>leader follower</kwd>
<kwd>relative localization</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1 Introduction</title>
<p>The use of Unmanned Aerial Vehicles (UAVs) towards autonomous task completion has received increased attention in the past decade. Indicative tasks include aerial manipulation in <xref ref-type="bibr" rid="B13">Gassner et&#x20;al. (2017)</xref>, <xref ref-type="bibr" rid="B14">Gkountas and Tzes (2021)</xref>, <xref ref-type="bibr" rid="B30">Nguyen and Alexis (2021)</xref>, <xref ref-type="bibr" rid="B20">Li et&#x20;al. (2021)</xref>, surveillance in <xref ref-type="bibr" rid="B4">Bisio et&#x20;al. (2021)</xref>, <xref ref-type="bibr" rid="B53">Tsoukalas et&#x20;al. (2021)</xref>, as well as Simultaneous Localization and Mapping (SLAM) in <xref ref-type="bibr" rid="B34">Papachristos et&#x20;al. (2019a)</xref>, <xref ref-type="bibr" rid="B52">Tsoukalas et&#x20;al. (2020)</xref>, <xref ref-type="bibr" rid="B9">Dang et&#x20;al. (2019)</xref> or inspection in <xref ref-type="bibr" rid="B33">Papachristos et&#x20;al. (2016)</xref>, <xref ref-type="bibr" rid="B46">Steich et&#x20;al. (2016)</xref>, <xref ref-type="bibr" rid="B3">Bircher et&#x20;al. (2015)</xref>; these works necessitate the collaborating agents to exchange their relative pose (position and orientation).</p>
<p>High frequency measurements from the inherent Inertial Measurement Unit (IMU) within each UAV are filtered using an Extended-Kalman-Filter (EKF) for attitude estimation (<xref ref-type="bibr" rid="B1">Abeywardena and Munasinghe, 2010</xref>) in Flight Control Units (FCUs). Migrating from the attitude to the altitude estimation necessitates the use of additional onboard sensors. Among these, the Global Positioning System GPS/GNSS (<xref ref-type="bibr" rid="B37">Qingbo et&#x20;al., 2012</xref>) typically feeds at 5Hz positioning data to the FCU. In GPS-denied indoor environments, other sensing modalities are deployed for estimating the drone position within a swarm. These include LiDaR sensing (<xref ref-type="bibr" rid="B17">Kumar et&#x20;al., 2017</xref>; <xref ref-type="bibr" rid="B50">Tsiourva and Papachristos, 2020</xref>; <xref ref-type="bibr" rid="B63">Yang et&#x20;al., 2021</xref>), RSSI measurements (<xref ref-type="bibr" rid="B64">Yokoyama et&#x20;al., 2014</xref>; <xref ref-type="bibr" rid="B61">Xu et&#x20;al., 2017</xref>; <xref ref-type="bibr" rid="B43">Shin et&#x20;al., 2020</xref>), RF-based sensing (<xref ref-type="bibr" rid="B65">Zhang et&#x20;al., 2019</xref>; <xref ref-type="bibr" rid="B44">Shule et&#x20;al., 2020</xref>; <xref ref-type="bibr" rid="B8">Cossette et&#x20;al., 2021</xref>) and visual methods (<xref ref-type="bibr" rid="B23">Lu et&#x20;al., 2018</xref>).</p>
<sec id="s1-1">
<title>1.1 Visual Relative Pose Estimation Sensors and Techniques</title>
<p>Optical flow sensors in <xref ref-type="bibr" rid="B58">Wang et&#x20;al. (2020)</xref>, <xref ref-type="bibr" rid="B7">Chuang et&#x20;al. (2019)</xref>, <xref ref-type="bibr" rid="B27">Mondragon et&#x20;al. (2010)</xref>, monocular SLAM in <xref ref-type="bibr" rid="B52">Tsoukalas et&#x20;al. (2020)</xref>, <xref ref-type="bibr" rid="B9">Dang et&#x20;al. (2019)</xref>, <xref ref-type="bibr" rid="B35">Papachristos et&#x20;al. (2019b)</xref>, <xref ref-type="bibr" rid="B42">Schmuck and Chli (2017)</xref>, <xref ref-type="bibr" rid="B49">Trujillo et&#x20;al. (2020)</xref>, <xref ref-type="bibr" rid="B28">Mur-Artal et&#x20;al. (2015)</xref>, <xref ref-type="bibr" rid="B12">Dufek and Murphy (2019)</xref>, <xref ref-type="bibr" rid="B26">McConville et&#x20;al. (2020)</xref> and binocular SLAM in <xref ref-type="bibr" rid="B29">Mur-Artal and Tard&#xf3;s (2017)</xref>; <xref ref-type="bibr" rid="B45">Smolyanskiy and Gonzalez Franco (2017)</xref> are typically used to infer the pose of mobile aerial agents. These methods usually require structural features and can result in error accumulation. More recently, deep learning techniques for relative pose estimation have been introduced for accurate results (<xref ref-type="bibr" rid="B24">Mahendran et&#x20;al., 2017</xref>; <xref ref-type="bibr" rid="B39">Radwan et&#x20;al., 2018</xref>; <xref ref-type="bibr" rid="B36">Patel et&#x20;al., 2021</xref>).</p>
<p>Regarding techniques using an external reference shape for pose extraction, these typically include passive markers, including ArUco (<xref ref-type="bibr" rid="B60">Xavier et&#x20;al., 2017</xref>) and April tags (<xref ref-type="bibr" rid="B57">Wang and Olson, 2016</xref>) fiducial markers. These methods introduce a variety of an a-priori known planar, rectangular, black and white pattern, which, when in line of sight, allows the computation of its relative pose to the camera. The extension of this is relative pose estimation for every unit bearing such a marker arrangement.</p>
</sec>
<sec id="s1-2">
<title>1.2 Limitations of Pose Estimation Systems</title>
<p>The onboard IMU on a UAV provides both orientation and position information when coupled to a GPS/GNSS receiver. Its average positioning accuracy (<xref ref-type="bibr" rid="B54">Upadhyay et&#x20;al., 2021</xref>) is close to 3m, with maximum errors reported close to 10m. The causes of such error are: weather conditions and signal refractions from obstacles such as large buildings in the proximity, and poor signal under bad environmental conditions (clouds, dust) (<xref ref-type="bibr" rid="B55">van Diggelen and Enge, 2015</xref>). Even with the use of a Real Time Kinematic (RTK) component, GPS-RTK measurements drift as much as 6.5cm in the horizontal plane and 30cm in the vertical axis under the assumption of 1h tuning of the base station prior to the measurement collection (<xref ref-type="bibr" rid="B47">Sun et&#x20;al., 2017</xref>). Similarly, the orientation accuracy suffers from constant drifting with time (<xref ref-type="bibr" rid="B18">LaValle et&#x20;al., 2014</xref>; <xref ref-type="bibr" rid="B59">Upadhyay et&#x20;al., 2019</xref>) Even with the utilization of bias correction methods, such as the use of magnetometer sensors for correcting the yaw drift, an RMS error of more than 5&#xb0; is found in orientation on every&#x20;axis.</p>
<p>Onboard LiDaR sensors reduce the quantization measurement error from 0.15m up to 1m (<xref ref-type="bibr" rid="B6">Chen et&#x20;al., 2018</xref>), depending on the number of instantaneous scans performed at each position. The main concern with respect to LiDaR is the weight (close to 1Kg) and the high acquisition cost. RSSI and RF-based methods can be a viable alternative having a positioning noise deviation of 0.1m (<xref ref-type="bibr" rid="B8">Cossette et&#x20;al., 2021</xref>). The drawback stems with the requirement for precise placement of at least four external anchor nodes, with additional nodes required for multi-agent experimentation, and need of absence of metallic objects proximity to the antennas (<xref ref-type="bibr" rid="B48">Suwatthikul et&#x20;al., 2017</xref>).</p>
<p>Another viable solution discussed is the use of onboard visual modalities for self-localization in monocular or binocular pose estimation applications. In the case of image feature extraction used in SLAM, a few centimeters error is reported (<xref ref-type="bibr" rid="B10">Daniele and Emanuele, 2021</xref>). However, the feature identification is computationally intensive and passive markers can be employed to ease this load. The black border of these markers assists in their fast detection, and distance error of 15cm, when placed up to 2.75m from the imaging modality (<xref ref-type="bibr" rid="B22">L&#xf3;pez-Cer&#xf3;n and Canas, 2016</xref>) have been reported.</p>
</sec>
<sec id="s1-3">
<title>1.3 Contributions</title>
<p>In this work the utilization of multiple markers placed on an Archimedean solid configuration is used for visual relative localization. The reported distance error is approximately 7.5cm in a hovering scenario of a dual UAV multi-agent system. The overall pose estimation duration is close to 30msec and this scheme provides robustness under varying lighting conditions and partial occlusion, despite any relative yaw-angle between these UAVs. The fiducial-marker carrying UAVs are then used in a leader/follower formation. The UAVs&#x2019; dynamical equations are linearized and the maximum allowable delay that the advocated controller can tolerate is provided. It is shown that as long as the leader remains within the follower&#x2019;s Fov, the controller can tolerate more than 57 samples (missing frames). We should note that the major advantage stems from the lack of using RF-communication for exchanging the UAVs&#x2019; pose and possibly saturating the communication channel in such a&#x20;case.</p>
<p>This article is structured as follows. The concept behind the visual localization is presented in <xref ref-type="sec" rid="s2">Section 2</xref>, followed by the linearized UAV-dynamics in <xref ref-type="sec" rid="s3">Section 3</xref>. The adopted controller and the maximum allowable delay in computing the relative pose is described in <xref ref-type="sec" rid="s4">Section 4</xref>. Experimental studies appear in <xref ref-type="sec" rid="s5">Section 5</xref> followed by concluding remarks.</p>
</sec>
</sec>
<sec id="s2">
<title>2&#x20;Visual-Assisted Relative Pose Estimation</title>
<p>An indicative setup of two drones bearing imaging modalities is showcased in <xref ref-type="fig" rid="F1">Figure&#x20;1</xref> for evaluating the proposed technique in an experimental real-world leader-follower scenario.</p>
<fig id="F1" position="float">
<label>FIGURE 1</label>
<caption>
<p>Developed drone-configuration for pose estimation evaluation.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g001.tif"/>
</fig>
<p>In this work, we assume the existence of multiple UAV agents, each bearing an imaging modality without zooming capabilities, while their cameras are assumed to be mounted at the front of the vehicle. Having already introduced several methods for pose detection in <xref ref-type="sec" rid="s1">Section 1</xref>, this research work focuses and extends the use of the ArUco fiducial markers framework (<xref ref-type="bibr" rid="B40">Romero-Ramirez et&#x20;al., 2018</xref>). The identification process consists of a filtering process with local adaptive thresholding for edge extraction. This is followed by a contour extraction and a polygonal approximation to identify the rectangular markers. Then a size based elimination and marker code extraction is carried out, to be followed by marker identification and marker pose estimation. When applied to visual object pose tracking, assuming object distances of less or equal to 5m, this framework can provide a robust and accurate result of position and orientation (<xref ref-type="bibr" rid="B60">Xavier et&#x20;al., 2017</xref>).</p>
<p>Each UAV is carries the fiducial marker arrangement similar to the one in <xref ref-type="bibr" rid="B51">Tsoukalas et&#x20;al. (2018)</xref>. This so called RhombicubOctahedron (RhOct) arrangement is comprised of squares and isosceles triangles as its facets and has an overall weight of 75g. The utilization of this Archimedean-solid, depicted in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref> (left), allows for concurrent observation of these fiducial markers, as shown in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref> (right).</p>
<fig id="F2" position="float">
<label>FIGURE 2</label>
<caption>
<p>Truncated rhombicuboctahedron geometry and fiducial marker arrangement.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g002.tif"/>
</fig>
<p>The truncated RhOct comprises of 13 squares and 4 triangle facets and has an area of <inline-formula id="inf1">
<mml:math id="m1">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="script">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>13</mml:mn>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mi>a</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:mn>4</mml:mn>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:mfrac>
<mml:mi>a</mml:mi>
<mml:mo>&#xd7;</mml:mo>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>a</mml:mi>
<mml:msqrt>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>5</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
</mml:msqrt>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
<mml:mspace width="0.3333em" class="nbsp"/>
</mml:math>
</inline-formula>, where <italic>a</italic> is the square facet&#x2019;s edge length. The planar-rollover of the 17 facets with their associated markers are presented in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref> (right). Marker 0 corresponds to the one that has axis <italic>Z</italic>
<sub>
<italic>c</italic>
</sub> &#x3d; <italic>Z</italic>
<sub>0</sub> passing thru its center as shown in <xref ref-type="fig" rid="F2">Figure&#x20;2</xref>, and the angles <italic>&#x3b8;</italic>
<sub>
<italic>i</italic>
</sub> and <italic>&#x3d5;</italic>
<sub>
<italic>i</italic>
</sub> for each marker correspond to the horizontal and vertical axes, respectively.</p>
<p>This configuration is expected to improve the pose estimation accuracy when more than one marker is detected. Additionally, it ensures robustness in occlusion and lighting conditions, as the system can identify the pose given only a subset of the markers. Such scenarios are depicted in <xref ref-type="fig" rid="F3">Figure&#x20;3</xref>. In <xref ref-type="fig" rid="F3">Figure&#x20;3C</xref>, the RhOct is partially occluded from the view, however its upper markers are still detected, allowing for the pose estimation process to conclude. Similarly, in <xref ref-type="fig" rid="F3">Figure&#x20;3D</xref> two frames are shown with significant varying lighting conditions compared, and yet the RhOct&#x2019;s pose can be extracted.</p>
<fig id="F3" position="float">
<label>FIGURE 3</label>
<caption>
<p>RhOct configuration <bold>(A)</bold>, Detected marker <bold>(B)</bold>, Occlusion case <bold>(C)</bold> and detection under various lighting conditions <bold>(D)</bold>.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g003.tif"/>
</fig>
<p>The algorithm for pose estimation is initialized by generating each fixed marker&#x2019;s configuration on the RhOct. The marker identifying number and its corner geometry on the solid are obtained from a configuration file. The marker&#x2019;s corner geometry, in this case refers, to the coordinates of its four corners with respect to the axis system <italic>X</italic>
<sub>
<italic>c</italic>
</sub>, <italic>Y</italic>
<sub>
<italic>c</italic>
</sub>, <italic>Z</italic>
<sub>
<italic>c</italic>
</sub> of <xref ref-type="fig" rid="F2">Figure&#x20;2</xref>. Subsequently the online pose extraction is carried out for every new image acquisition using the following steps: 1) Detect fiducial (ArUco) markers in the image, 2) For each marker discovered extract the pixel coordinates of each corner, 3) Feed all pixel coordinates to a Perspective <italic>N</italic>&#x2013;point solver of OpenCV library (<xref ref-type="bibr" rid="B5">Bradski, 2000</xref>) for extracting the RhOct&#x2019;s pose with respect to the camera axis system. The algorithm encountered in the EPnP-formulation (<xref ref-type="bibr" rid="B19">Lepetit et&#x20;al., 2009</xref>) was used to solve Perspective <italic>N</italic>-points (PnP) problem (<xref ref-type="bibr" rid="B21">Quan and Lan, 1999</xref>), due to its recursive nature which starts from the previously encountered solution. This algorithm is a significant enhancement to (<xref ref-type="bibr" rid="B51">Tsoukalas et&#x20;al., 2018</xref>), where the center of the solid was extracted from each individual marker and then averaged, leading to ambiguity in individual marker pose extraction (<xref ref-type="bibr" rid="B31">Oberkampf et&#x20;al., 1996</xref>). To address this, the algorithm simultaneously passes all marker corners (in pixels) to the solvePnP function, which in turn calculates the global optimal pose satisfying the initial fixed geometry of the RhOct.</p>
<p>Additional improvements include changes in the marker arrangement for more accuracy and improved detection frequency using a Region-of-Interest (RoI) approach. The adopted dictionary was &#x201c;ARUCO_MIP_16h3&#x201d; since this provides 4 &#xd7; 4 markers which are easier to detect at larger distance than the default ArUco 6 &#xd7; 6 ones. The markers at the square (triangular) facets were set to 48.75 (22.5)mm to accommodate space for the detection method. This method improved the accuracy, reduced jittering due to the sub-pixel corner refinement.</p>
<p>The adopted recursive RoI implementation assumes that a pose solution from the previous iteration exists, and the subsequent image is only cropped at a 1280 &#xd7; 720 size around the center pixel of that solution and then passed to the pose detection algorithm. This implementation can handle 30 FpS in an i7-CPU implementation and the resulting algorithm is summarized in <xref ref-type="fig" rid="F4">Figure&#x20;4</xref>.</p>
<fig id="F4" position="float">
<label>FIGURE 4</label>
<caption>
<p>Flowchart of RhOct pose estimation algorithm.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g004.tif"/>
</fig>
</sec>
<sec id="s3">
<title>3 Linearized UAV-Dynamics</title>
<p>Owing to inherent delays in the relative pose computation of the leader demands the inference of the maximum allowable lag, so that proper control parameters can be applied to the follower in order to efficiently maintain the leader within its Field-of-View (FoV).</p>
<p>The dynamic model of a quadrotor with mass <italic>m</italic> forms a set of nonlinear ODEs <xref ref-type="bibr" rid="B41">Sabatino, 2015</xref>. Let <inline-formula id="inf2">
<mml:math id="m2">
<mml:msub>
<mml:mrow>
<mml:mi>o</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> the vector containing position and the Euler angle orientation of the quadrotor in earth frame. Let its derivative be <inline-formula id="inf3">
<mml:math id="m3">
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>o</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>p</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>u</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c5;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c9;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> containing the linear and angular velocities with respect to body frame. Let the UAV&#x2019;s inertia matrix with respect to its center of gravity be diagonal <inline-formula id="inf4">
<mml:math id="m4">
<mml:mi>I</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>3</mml:mi>
<mml:mi>x</mml:mi>
<mml:mi>3</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>.</mml:mo>
</mml:math>
</inline-formula> The input forces and torques to the system are assumed proportional to the square rotational speed of the rotors as in <xref ref-type="disp-formula" rid="e1">Eq. 1</xref>, where <italic>l</italic> is the distance of any rotor from the drone center, <italic>b</italic> the thrust factor and <italic>d</italic> the drag factor.<disp-formula id="e1">
<mml:math id="m5">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi mathvariant="bold">u</mml:mi>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>b</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>b</mml:mi>
<mml:mi>l</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c4;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mi>d</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2212;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="normal">&#x3a9;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfenced>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(1)</label>
</disp-formula>
</p>
<p>Let the gyroscopic moments and any ground effect phenomena be absent, then the dynamic model of the quadrotor can be described as in<disp-formula id="e2">
<mml:math id="m6">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:munderover accentunder="false" accent="false">
<mml:mrow>
<mml:mo>&#x2211;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:munderover>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">w</mml:mi>
<mml:mi mathvariant="normal">h</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
<mml:mi mathvariant="normal">r</mml:mi>
<mml:mi mathvariant="normal">e</mml:mi>
</mml:math>
<label>(2)</label>
</disp-formula>
</p>
<p>
<inline-formula id="inf5">
<mml:math id="m7">
<mml:mi mathvariant="bold">x</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>x</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>y</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>z</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>&#x3c8;</mml:mi>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mi>p</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>q</mml:mi>
<mml:mo>,</mml:mo>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>&#x2208;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="double-struck">R</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula>, and <inline-formula id="inf6">
<mml:math id="m8">
<mml:mi>c</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mover>
<mml:mrow>
<mml:mo>&#x3d;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>&#x25b3;</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mover>
</mml:mrow>
<mml:mi>cos</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi>s</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mover>
<mml:mrow>
<mml:mo>&#x3d;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>&#x25b3;</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mover>
</mml:mrow>
<mml:mi>sin</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>, and <inline-formula id="inf7">
<mml:math id="m9">
<mml:mi>t</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mover>
<mml:mrow>
<mml:mo>&#x3d;</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mo>&#x25b3;</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mover>
</mml:mrow>
<mml:mi>tan</mml:mi>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mo>&#x22c5;</mml:mo>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula>.<disp-formula id="equ1">
<mml:math id="m10">
<mml:mi mathvariant="bold">f</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>q</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfrac>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mfrac>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>q</mml:mi>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>p</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>q</mml:mi>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>t</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>r</mml:mi>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>t</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>g</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>q</mml:mi>
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>p</mml:mi>
<mml:mi>r</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi>p</mml:mi>
<mml:mi>q</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">a</mml:mi>
<mml:mi mathvariant="normal">n</mml:mi>
<mml:mi mathvariant="normal">d</mml:mi>
</mml:math>
</disp-formula>
<disp-formula id="e3">
<mml:math id="m11">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>i</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>,</mml:mo>
<mml:mi>i</mml:mi>
<mml:mo>&#x3d;</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mo>&#x2026;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mn>4</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(3)</label>
</disp-formula>
<disp-formula id="e4">
<mml:math id="m12">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1,7</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1,8</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>s</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(4)</label>
</disp-formula>
<disp-formula id="e5">
<mml:math id="m13">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1,9</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
</mml:mfenced>
<mml:mi>c</mml:mi>
<mml:mfenced open="(" close=")">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2,10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mspace width="0.3333em" class="nbsp"/>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3,11</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="bold">g</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4,12</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(5)</label>
</disp-formula>
</p>
<p>Linearizing around a hovering condition <inline-formula id="inf8">
<mml:math id="m14">
<mml:mi mathvariant="bold">x</mml:mi>
<mml:mo>&#xb0;</mml:mo>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x2010;</mml:mo>
</mml:mrow>
<mml:mo>&#xb0;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x2010;</mml:mo>
</mml:mrow>
<mml:mo>&#xb0;</mml:mo>
<mml:mo>,</mml:mo>
<mml:mrow>
<mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x2010;</mml:mo>
</mml:mrow>
</mml:mrow>
<mml:mo>&#xb0;</mml:mo>
<mml:mo>,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>9</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> and <inline-formula id="inf9">
<mml:math id="m15">
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>&#xb0;</mml:mo>
<mml:mo>&#x3d;</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mi mathvariant="italic">m</mml:mi>
<mml:mi mathvariant="italic">g</mml:mi>
<mml:mo>,</mml:mo>
<mml:mn>0,0,0</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> to account for the weight of the quadrotor, where x &#x3d; x&#xb0; &#x2b; &#x394;x and u &#x3d; u&#xb0; &#x2b; &#x394;u.<disp-formula id="equ2">
<mml:math id="m16">
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>&#x3b8;</mml:mi>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mi>g</mml:mi>
<mml:mi>&#x3d5;</mml:mi>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3d5;</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3b8;</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>,</mml:mo>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mo>&#x308;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
</disp-formula>
</p>
<p>These equations can be written in a compact form where the notation <bold>I</bold>
<sub>
<italic>N</italic>
</sub> (<bold>0</bold>
<sub>
<italic>N</italic>
</sub>) refers to an identity (zero) <italic>N</italic>&#x20;&#xd7; <italic>N</italic> matrix.<disp-formula id="e6">
<mml:math id="m17">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>12</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>12</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">u</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>4</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(6)</label>
</disp-formula>
<disp-formula id="e7">
<mml:math id="m18">
<mml:mtable class="align" columnalign="left">
<mml:mtr>
<mml:mtd columnalign="right">
<mml:mo>&#x3d;</mml:mo>
</mml:mtd>
<mml:mtd columnalign="left">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>g</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>g</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>3</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>6</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi mathvariant="bold">x</mml:mi>
<mml:mo>&#x2b;</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="right"/>
<mml:mtd columnalign="left">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mn mathvariant="bold">0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>8</mml:mn>
<mml:mo>&#xd7;</mml:mo>
<mml:mn>4</mml:mn>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi>m</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mfrac>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi mathvariant="bold">u</mml:mi>
<mml:mo>,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:math>
<label>(7)</label>
</disp-formula>
</p>
</sec>
<sec id="s4">
<title>4 Controller Design and Maximum Allowable Delay for Leader/Follower UAV-Formation</title>
<p>The controllers for the altitude and attitude, as shown in <xref ref-type="fig" rid="F5">Figure&#x20;5</xref> within the Ardupilot framework are adopted in this study. For the <italic>z</italic>-axis a P-differentiator converts vertical position error to vertical velocity; this is subsequently converted to desired vertical acceleration through a cascade P-controller and finally through a PID-controller to motor output. For the <italic>xy</italic>-plane control a gain differentiator coverts the <italic>x</italic> and <italic>y</italic> position error to reference velocity, followed by a velocity PID which converts the velocity error to roll (pitch) when <italic>x</italic> (<italic>y</italic>) is referred. Correspondingly this amounts to <italic>a</italic>&#x20;&#x3d; <italic>&#x3d5;</italic> (<italic>&#x3b8;</italic>) when <inline-formula id="inf10">
<mml:math id="m19">
<mml:msubsup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> is used. This reference roll (pitch) is sent to the attitude controller which is a second velocity P-differentiator along with a feedforward term which generates the desired roll (pitch) rate. A second cascade PID-controller is used to generate the necessary torques along the <italic>x</italic> (<italic>y</italic>) axes. The yaw-controller is similar to the attitude component of the roll and pitch components, as shown in <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>.</p>
<fig id="F5" position="float">
<label>FIGURE 5</label>
<caption>
<p>Ardupilot-based controller design for single UAV.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g005.tif"/>
</fig>
<p>The four inputs <italic>f</italic>
<sub>
<italic>t</italic>
</sub>, <italic>&#x3c4;</italic>
<sub>
<italic>x</italic>
</sub>, <italic>&#x3c4;</italic>
<sub>
<italic>y</italic>
</sub> and <italic>&#x3c4;</italic>
<sub>
<italic>z</italic>
</sub> are then used in <xref ref-type="disp-formula" rid="e1">Eq. 1</xref> to compute the &#x3a9;<sub>
<italic>i</italic>
</sub>, <italic>i</italic>&#x20;&#x3d; 1, &#x2026; , 4 which are provided in the ESCs to power up the brushless motors of the quadrotor.</p>
<p>The resulting closed loop stable system takes the torm <disp-formula id="e8">
<mml:math id="m20">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:mi mathvariant="bold">x</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>,</mml:mo>
</mml:math>
<label>(8)</label>
</disp-formula>where the subscript &#x201c;<italic>f</italic>&#x201d; indicates the follower quadrotor.</p>
<p>In a leader/follower configuration the deployment strategy and, thus, reference paths dynamically change upon changes to the position of the leader. Having obtain a dynamic model for a single drone, namely the follower&#x2019;s dynamic behaviour, the potential coupling between a dynamically moving leader and the follower&#x2019;s reference path strategy allows for the generation of a single linear model for the multi-agent UAV configuration, that is used for assessing the system stability. It should be noticed that for a single leader/follower UAV configuration this coupling is not necessary.</p>
<p>In a leader/follower configuration we use the subsript &#x201c;<italic>l</italic>&#x201d; to distinguish the leader from the follower quadrotor. The leader quadrotor performs a motion while the follower attempts to follow the leader&#x2019;s motion at a certain distance in each axis, or <italic>x</italic>
<sub>
<italic>l</italic>
</sub>&#x2212;<italic>x</italic>
<sub>
<italic>f</italic>
</sub> &#x3d; <italic>c</italic>
<sub>
<italic>x</italic>
</sub>, <italic>y</italic>
<sub>
<italic>l</italic>
</sub>&#x2212;<italic>y</italic>
<sub>
<italic>f</italic>
</sub> &#x3d; <italic>c</italic>
<sub>
<italic>y</italic>
</sub> and <italic>z</italic>
<sub>
<italic>l</italic>
</sub>&#x2212;<italic>z</italic>
<sub>
<italic>f</italic>
</sub> &#x3d; <italic>c</italic>
<sub>
<italic>z</italic>
</sub> where <italic>c</italic>
<sub>
<italic>x</italic>
</sub>, <italic>c</italic>
<sub>
<italic>y</italic>
</sub> and <italic>c</italic>
<sub>
<italic>z</italic>
</sub> are constants and <inline-formula id="inf11">
<mml:math id="m21">
<mml:msup>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo>&#x3d;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:math>
</inline-formula>. It should be noted that the presented controllers are continuous in nature, whereas in reality they are implemented with a 400Hz rate on a Pixhawk autopilot. This generates minor inherent delay in the system response, which in most cases can be neglected. However, in a real world scenario, other inherent time delays in pose estimation can affect the follower&#x2019;s tracking performance of the leader. These delays can be attributed to sensing modality refresh rates and communication (if needed) of the relative poses within collaborating aerial agents.</p>
<p>In this work the use of an imaging modality for computing the relative pose between the leader and follower, means that the information does not need to be communicated between agents. Still, the refresh rate for the controller output cannot exceed the refresh rate of the imaging modality. In our case this is 30Hz, however for high resolution cameras of 12&#x20;mega-pixel it can be as low as 5Hz, which might affect tracking performance in the case of aggressive attitude motions from a leader. This scenario is of similar nature with communicating GPS sensed positioning between agents in outdoor environments for relative positioning. Since these sensors are bounded to a 4Hz frequency, the position of a leader will be communicated to a follower at 250msec for processing the calculations. Coupled to the data RF-transmission delay this interval can easily increase up to 350msec (excluding any lost packets). The follower will then need to compute <inline-formula id="inf12">
<mml:math id="m22">
<mml:msubsup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>:</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2243;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>:</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2243;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mrow>
<mml:mo stretchy="false">[</mml:mo>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mo>:</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2243;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mo stretchy="false">]</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> and direct it to its controller shown in <xref ref-type="fig" rid="F5">Figure&#x20;5</xref>.</p>
<p>Hence there is an inherent varying delay in the feedback path since the vector <inline-formula id="inf13">
<mml:math id="m23">
<mml:msup>
<mml:mrow>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>,</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mrow>
</mml:mfenced>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msup>
</mml:math>
</inline-formula> is computed after <italic>h</italic>&#xa0;seconds, where <italic>h</italic>&#x20;&#x2208; [0, 350msec]. Subsequently, there exists a motivation to assess such delays when operating multi-agent systems. We should note that despite <italic>h</italic>(<italic>t</italic>) is time varying, we can use polling to constrain it at a sampling period (in the experimental section <inline-formula id="inf14">
<mml:math id="m24">
<mml:mi>h</mml:mi>
<mml:mo>&#x2208;</mml:mo>
<mml:mfenced open="{" close="}">
<mml:mrow>
<mml:mn>0.25</mml:mn>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mn>1.25</mml:mn>
</mml:mrow>
</mml:mfenced>
</mml:math>
</inline-formula> seconds. The controller employed by the follower is a simple MIMO <italic>P</italic>-controller, and we should note that the yaw is regulated to zero and there is no need to infer the leader&#x2019;s relative yaw; this is due to the used RhOct that can be viewed from any yaw angle of the leader. The employed controller is<disp-formula id="e9">
<mml:math id="m25">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>r</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3d;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>K</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>&#x3c8;</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x2b;</mml:mo>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>.</mml:mo>
</mml:math>
<label>(9)</label>
</disp-formula>
</p>
<p>The follower quadrotor&#x2019;s time-delayed dynamics is expressed as<disp-formula id="e10">
<mml:math id="m26">
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mover accent="true">
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mo>&#x307;</mml:mo>
</mml:mover>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x3d;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mspace width="0.3333em" class="nbsp"/>
<mml:mi mathvariant="normal">&#x394;</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mrow>
<mml:mo stretchy="false">(</mml:mo>
<mml:mrow>
<mml:mi>t</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mo stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mo>&#x2b;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="bold">B</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>z</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msub>
<mml:mrow>
<mml:mi>c</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>y</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mn>0</mml:mn>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>.</mml:mo>
</mml:math>
<label>(10)</label>
</disp-formula>
</p>
<p>This system is asymptotically stable for any constant delay <italic>h</italic>: 0&#x20;&#x3c; <italic>h</italic>&#x20;&#x3c; <italic>h</italic>
<sup>max</sup> of there exist matrices <italic>p</italic>&#x20;&#x3e; 0, <italic>Q</italic>&#x20;&#x3e; 0 and <italic>Z</italic>&#x20;&#x3e; 0 such that (<xref ref-type="bibr" rid="B15">Gouaisbaut and Peaucelle, 2006</xref>; <xref ref-type="bibr" rid="B62">Xu and Lam, 2008</xref>)<disp-formula id="e11">
<mml:math id="m27">
<mml:mfenced open="[" close="]">
<mml:mrow>
<mml:mtable class="matrix">
<mml:mtr>
<mml:mtd columnalign="center">
<mml:mi>P</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:msubsup>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>Z</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mi>P</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>Z</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi>Z</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msubsup>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi>P</mml:mi>
<mml:mo>&#x2b;</mml:mo>
<mml:mi>Z</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>Q</mml:mi>
<mml:mo>&#x2212;</mml:mo>
<mml:mi>Z</mml:mi>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>f</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>T</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:mi>Z</mml:mi>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd columnalign="center">
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mi>Z</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:msup>
<mml:mrow>
<mml:mi>h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>max</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mi>Z</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi>A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
<mml:mo>,</mml:mo>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
<mml:mtd columnalign="center">
<mml:mo>&#x2212;</mml:mo>
<mml:mi>Z</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
<mml:mo>&#x3c;</mml:mo>
<mml:mn>0</mml:mn>
</mml:math>
<label>(11)</label>
</disp-formula>
</p>
<p>An exhaustive search is needed to compute the maximum delay that is allowed under the time-delayed leader/follower configuration. It should be noted: 1) that the provided results are sufficient and higher values of <italic>h</italic>
<sup>max</sup> can still provide a stable system, and 2) the provided analysis is valid for near hovering conditions by the follower forcing a smooth trajectory [<italic>s</italic>(<italic>&#x3d5;</italic>) &#x2243; <italic>&#x3d5;</italic> and <italic>s</italic>(<italic>&#x3b8;</italic>) &#x2243;<italic>&#x3b8;</italic>, or <italic>&#x3d5;</italic>, <italic>&#x3b8;</italic> &#x2264; 10&#xb0;]. Furthermore the inherent assumption is that the leader remains within the FoV of the follower&#x2019;s camera and the marker can be viewed with clarity.</p>
</sec>
<sec id="s5">
<title>5 Experimental Studies</title>
<p>In the following experimental study, the efficiency and accuracy of the suggested scheme is evaluated using two identical drones in a leader/follower formation.</p>
<sec id="s5-1">
<title>5.1 Experimental Setup</title>
<p>The utilized quadrotors bear an imaging modality and a unique RhOct arrangement described in <xref ref-type="sec" rid="s2">Section 2</xref>. Moreover, an Intel NUC i7 onboard computer and a PixHawk flight controller with the open-source ArduPilot (<xref ref-type="bibr" rid="B2">ArduPilot, 2021</xref>) framework are fitted for processing power and carrying out the low level flight actions respectively. The total weight of each UAV is 2.2kg with an allowable flight time of 11min using a 4-Cell LiPo battery. A FLIR BlackFlyS camera is used for image acquisition with a 2048 &#xd7; 1534pixel resolution; the achievable acquisition rate using the onboard computer reached 37&#xa0;FpS. The camera was calibrated using the ArUco calibration board for a fixed focus at 2.75m distance. 8-bit grayscale images were acquired to conform with the ArUco framework image processing methods, while the shutter speed was kept at 5nsec for minimizing blurriness. The utilized algorithms rely on the ROS (<xref ref-type="bibr" rid="B38">Quigley et&#x20;al., 2009</xref>) framework and can be accessed from the following Github repository. A rendered version and the actual prototype are depicted in <xref ref-type="fig" rid="F6">Figure&#x20;6</xref> respectively. A motion capture system, comprising of 24 high resolution VICON cameras (<xref ref-type="bibr" rid="B56">Vicon motion systems, 2021</xref>) operating at 120&#xa0;Hz was utilized for validating drones&#x2019; pose with 0.5mm and 0.5&#xb0; accuracy.</p>
<fig id="F6" position="float">
<label>FIGURE 6</label>
<caption>
<p>Developed UAV-rendering <bold>(A)</bold> and physical prototype <bold>(B)</bold>.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g006.tif"/>
</fig>
</sec>
<sec id="s5-2">
<title>5.2 Relative Pose Measurement With Stationary UAVs</title>
<p>This section investigates the maximum allowable detection distance for the RhOct configuration and the relative pose error as a function of the leader/follower distance. Both stationary UAVs were set so as to increase the distance between them &#x7c;<italic>x</italic>
<sub>
<italic>l</italic>
</sub>&#x2212;<italic>x</italic>
<sub>
<italic>f</italic>
</sub>&#x7c; &#x2208; {1, 1.25, &#x2026; , 4}m. At each distance we perform pose estimation of the leader&#x2019;s RhOct, using the follower&#x2019;s imaging modality for a duration of 120s. In <xref ref-type="fig" rid="F7">Figure&#x20;7</xref> the average and peak values of the pose estimation errors are depicted.</p>
<fig id="F7" position="float">
<label>FIGURE 7</label>
<caption>
<p>Attainable pose measurement error for stationary UAVs at different distances <inline-formula id="inf15">
<mml:math id="m28">
<mml:mfenced open="|" close="|">
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>l</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>&#x2212;</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi>x</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi>f</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfenced>
</mml:math>
</inline-formula>.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g007.tif"/>
</fig>
<p>All translational and rotational errors seem to drift away as the distance varies away from the optimal focal length distance of 2.75m. The algorithm operates extremely well at distances up to 4&#x20;m with a typical translational (rotational) error (3 &#xd7; 4&#x20;&#xd7; 15)cm (3&#xb0; &#xd7; 0.5&#xb0; &#xd7; 0.1&#xb0;).</p>
</sec>
<sec id="s5-3">
<title>5.3 Relative Pose Measurement With Hovering UAVs</title>
<p>In order to account for the induced UAV-vibrations in measuring their pose, two drones in a hovering condition facing each other are used in this study. The relative error measured by our visual algorithm compared to the one inferred by the motion capture system is shown in <xref ref-type="fig" rid="F8">Figure&#x20;8</xref>, where it is shown that the mean (worst) translational error was 4.9 &#xd7; 13.8 &#xd7; 73.9mm (11.5 &#xd7; 113.8 &#xd7; 203.7mm) for the <italic>XYZ</italic> axes respectively. These small errors are mainly attributed to the ArUco corner refinement algorithm and are consistent with the large deviations reported in the <italic>Z</italic>-axis (<xref ref-type="bibr" rid="B32">Ortiz-Fernandez et&#x20;al., 2021</xref>).</p>
<fig id="F8" position="float">
<label>FIGURE 8</label>
<caption>
<p>Visual vs. Motion Capture System induced pose measurement&#x20;error.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g008.tif"/>
</fig>
<p>For comparison purposes the relative position relying on raw GPS measurements for two stationary drones is shown in <xref ref-type="fig" rid="F9">Figure&#x20;9</xref>. Thee drones are placed at 2.75m relative distance and their GPS receivers recorded their translational coordinates for 160s from six available satellites. The typical error was two orders of magnitude larger compared to the one from the visual system and is in agreement with the one reported in the literature; the rotational error from these measurements was constrained to 5&#xb0; &#xd7; 5&#xb0; &#xd7; 6&#xb0;.</p>
<fig id="F9" position="float">
<label>FIGURE 9</label>
<caption>
<p>GPS-altitude relative error for stationary UAVs.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g009.tif"/>
</fig>
</sec>
<sec id="s5-4">
<title>5.4&#x20;Leader-Follower Scenario Evaluation</title>
<p>In this scenario the leader is commanded to execute two consecutive skewed rectangular paths with predetermined waypoints, while these two rectangles are distanced from each other at 1m. The follower tracks the leader at a distance with parameters (<italic>c</italic>
<sub>
<italic>x</italic>
</sub>, <italic>c</italic>
<sub>
<italic>y</italic>
</sub>, <italic>c</italic>
<sub>
<italic>z</italic>
</sub>) &#x3d; (0, 2, 0)m using the controller from <xref ref-type="disp-formula" rid="e9">Eq. 9</xref>. The relative leader/follower distance is estimated through the leader&#x2019;s detected RhOct. When the leader cannot be detected (i.e.,&#x20;being outside of the follower&#x2019;s FoV or due to occlusion from obstacles) the follower remains in a hovering mode till the subsequent&#x2019;s leader&#x2019;s detection. The theoretical maximum allowable latency <italic>h</italic>
<sup>max</sup> was 1.9s and for emulation purposes such a delay is induced into calculating the follower&#x2019;s reference altitude. Similarly to the previous cases, the positions of the two UAVs are compared using the VICON system for delays of 0.25, 1 and 1.25s.</p>
<p>In <xref ref-type="fig" rid="F10">Figures 10</xref>&#x2013;<xref ref-type="fig" rid="F12">12</xref> the 3D-path of the leader and follower is shown in the top-left portion, while their <italic>X</italic>, <italic>Y</italic> and <italic>Z</italic> trajectories are shown in the top-right, bottom-left and bottom-right parts respectively. These are expressed in the ENU frame configuration (<italic>X</italic>-forward, and <italic>Z</italic>-upward). For delays of <italic>h</italic>&#x20;&#x3d; 0.25s, shown in <xref ref-type="fig" rid="F10">Figure&#x20;10</xref>, the follower closely follows the path of the leader with minimal lag. The leader completes its trajectory at 125s with a small translational velocity, so that it remains as much as possible within the follower&#x2019;s&#x20;FoV.</p>
<fig id="F10" position="float">
<label>FIGURE 10</label>
<caption>
<p>3D Leader/Follower trajectories with <italic>h</italic>&#x20;&#x3d; 0.25s&#x20;delay.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g010.tif"/>
</fig>
<fig id="F11" position="float">
<label>FIGURE 11</label>
<caption>
<p>3D Leader/Follower trajectories with <italic>h</italic>&#x20;&#x3d; 1s&#x20;delay.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g011.tif"/>
</fig>
<fig id="F12" position="float">
<label>FIGURE 12</label>
<caption>
<p>3D Leader/Follower trajectories with <italic>h</italic>&#x20;&#x3d; 1.25s&#x20;delay.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g012.tif"/>
</fig>
<p>Similarly for <italic>h</italic>&#x20;&#x3d; 1s the path patterns are shown in <xref ref-type="fig" rid="F11">Figure&#x20;11</xref>. Again we notice that the follower can accurately follow the path of the leader with an approximate phase lag of 2s. This delay is attributed to the UAV&#x2019;s controller and the imposed <italic>h</italic>&#x20;&#x3d; 1s delay of applying the estimated reference path. It is also worth noticing a partial loss of the leader at 42s for a brief period of 3s due to the leader&#x2019;s disappearance out of the follower&#x2019;s-camera&#x20;FoV.</p>
<p>The last iteration of <italic>h</italic>&#x20;&#x3d; 1.25s delay is included to showcase the behaviour of the leader/follower configuration upon loss of leader&#x2019;s reference path. This is happening owing to the large delay, which leads to the leader&#x2019;s moving out of the follower&#x2019;s FoV. In this case, the follower switches to a hovering case per the adopted strategy, only to re-initiate the controller when the leader reappears within FoV at <italic>t</italic>&#x20;&#x2243;101s. This case appears in <xref ref-type="fig" rid="F12">Figure&#x20;12</xref>, whereas the moments of losing and regaining view of the leader&#x2019;s RhOct are visualized in <xref ref-type="fig" rid="F13">Figure&#x20;13</xref>.</p>
<fig id="F13" position="float">
<label>FIGURE 13</label>
<caption>
<p>Follower&#x2019;s camera FoV upon loss <bold>(A)</bold> and reappearance <bold>(B)</bold> of leader.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g013.tif"/>
</fig>
<p>The relative Euclidean distance errors between the follower&#x2019;s reference and actual position are depicted in <xref ref-type="fig" rid="F14">Figure&#x20;14</xref> for different delays. It should be noticed that the error is still computed when the leader is not within the FoV of the follower. As expected, there is significant drift of the follower&#x2019;s reference path as the delay increases. The mean value of the error is: 1) 0.33m for 0.25s delay, 2) 0.41m for 1s, and 3) 0.81m for 1.25s delay. The loss of the leader is highlighted with the dashed line-segment of the error for the case of 1 and 1.25s&#x20;delay.</p>
<fig id="F14" position="float">
<label>FIGURE 14</label>
<caption>
<p>Follower&#x2019;s Euclidean distance error vs.&#x20;delay.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g014.tif"/>
</fig>
</sec>
<sec id="s5-5">
<title>5.5 Extension to a Multiple-Agent Scenario</title>
<p>The aforementioned scheme can be extended to multi-agent relative localization in a swarm deployment experimentation. Such a case is shown in <xref ref-type="fig" rid="F15">Figure&#x20;15</xref>, where three heterogeneous UAVs &#x201c;1 thru 3&#x201d; are fitted with a RhOct shown in the top-left portion while the pose detection algorithm is extended to multiple agents within the FoV of each drone. In this experiment drone 1 can view 2 and 3 (top-right), drone 2 can view 1 and partially 3 (bottom-left) while drone three can only observe 1 (bottom-right). A directed observation visual observation graph can be generated in this case having selected one of these as the anchor of the graph, In a leader/several followers scenario in this case, drone &#x201c;1&#x201d; is the leader being observable by both &#x201c;2&#x201d; and &#x201c;3&#x201d;. The only limiting factor in this case is the number of available dictionary of markers, where with a 4 &#xd7; 4 fiducial dictionary, 1,000 markers can be generated which can be mounted in <inline-formula id="inf16">
<mml:math id="m29">
<mml:mn>58</mml:mn>
<mml:mo>&#x3d;</mml:mo>
<mml:mrow>
<mml:mo>&#x230a;</mml:mo>
<mml:mrow>
<mml:mfrac>
<mml:mrow>
<mml:mn>1000</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>17</mml:mn>
</mml:mrow>
</mml:mfrac>
</mml:mrow>
<mml:mo>&#x230b;</mml:mo>
</mml:mrow>
</mml:math>
</inline-formula> drones. In this case, the occlusion of some markers from the FoV of each agent necessitates the computation of a proper control strategy (<xref ref-type="bibr" rid="B11">Das et&#x20;al., 2002</xref>; <xref ref-type="bibr" rid="B25">Mariottini et&#x20;al., 2005</xref>).</p>
<fig id="F15" position="float">
<label>FIGURE 15</label>
<caption>
<p>Swarm flying formation and detection view per&#x20;agent.</p>
</caption>
<graphic xlink:href="frobt-08-777535-g015.tif"/>
</fig>
</sec>
</sec>
<sec id="s6">
<title>6 Conclusions</title>
<p>In experimental leader/follower UAV-configurations, there is need to transmit the relative pose between these UAVs. Rather than relying on the individual FCUs and an RF-transmission scheme, fiducial markers are attached in each UAV. Using an onboard camera, these markers are accurately detected and the relative pose can be inferred within 30msec, as long as the leader is within the follower&#x2019;s FoV and at a distance up to 4m. The maximum theoretical latency time is compared to the experimental one, while the FoV can be extended: 1) to cover the complete space if spherical cameras are used (<xref ref-type="bibr" rid="B16">Holter et&#x20;al., 2021</xref>), and 2) focus in multiple agents.</p>
</sec>
</body>
<back>
<sec id="s7">
<title>Data Availability Statement</title>
<p>The raw data supporting the conclusion of this article will be made available by the authors, without undue reservation.</p>
</sec>
<sec id="s8">
<title>Author Contributions</title>
<p>Conceptualisation, NE, ATs, and ATz; Methodology, NE, ATs, and ATz; Software, NE and ATs; Hardware, NE, DC, and ATs; Validation, NE; Formal analysis, NE and ATz; Investigation, NE and ATz; Resources, NE, DC, ATs, and ATz; Experimentation, NE; Data curation, NE; Writing&#x2014;original draft preparation, NE and ATz; Writing&#x2014;review and editing, NE, ATs and ATz; Visualisations, NE; Supervision, ATz; Project administration, ATz; Funding acquisition, ATz. All authors have read and agreed to the published version of the manuscript.</p>
</sec>
<sec sec-type="COI-statement" id="s9">
<title>Conflict of Interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s10">
<title>Publisher&#x2019;s Note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ack>
<p>This work was partially performed at the KINESIS CTP facility, New York University Abu Dhabi, Abu Dhabi, 129188, United Arab Emirates.</p>
</ack>
<sec id="s11">
<title>Supplementary Material</title>
<p>The Supplementary Material for this article can be found online at: <ext-link ext-link-type="uri" xlink:href="https://www.frontiersin.org/articles/10.3389/frobt.2021.777535/full#supplementary-material">https://www.frontiersin.org/articles/10.3389/frobt.2021.777535/full&#x23;supplementary-material</ext-link>
</p>
<supplementary-material xlink:href="Video3.MP4" id="SM1" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video2.MP4" id="SM2" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
<supplementary-material xlink:href="Video1.MP4" id="SM3" mimetype="application/MP4" xmlns:xlink="http://www.w3.org/1999/xlink"/>
</sec>
<sec id="s12">
<title>Abbreviations</title>
<p>ENU, East-North-Up; FoV, Field-Of-View; FCU, Flight Control Unit; GNSS, Global Navigation Satellite System; GPS, Global Positioning System; NWU, North-West-Up; PnP, Perspective N-points; ROS, Robot Operating System; RTK, Real-time kinematic; SLAM, Simultaneous Localization and Mapping; UAV, Unmanned Aerial Vehicle; VOT, Visual Object Tracking.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Abeywardena</surname>
<given-names>D. M. W.</given-names>
</name>
<name>
<surname>Munasinghe</surname>
<given-names>S. R.</given-names>
</name>
</person-group> (<year>2010</year>). &#x201c;<article-title>Performance Analysis of a Kalman Filter Based Attitude Estimator for a Quad Rotor UAV</article-title>,&#x201d; in <conf-name>International Congress on Ultra Modern Telecommunications and Control Systems</conf-name>, <conf-loc>Moscow, Russia</conf-loc>, <conf-date>18-20 Oct. 2010</conf-date>, <fpage>466</fpage>&#x2013;<lpage>471</lpage>. <pub-id pub-id-type="doi">10.1109/ICUMT.2010.5676596</pub-id> </citation>
</ref>
<ref id="B2">
<citation citation-type="web">
<collab>ArduPilot</collab> (<year>2021</year>). <article-title>ArduPilot Documentation</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://ardupilot.org/ardupilot/index.htm">https://ardupilot.org/ardupilot/index.htm</ext-link> (Accessed on August 20, 2021)</comment>. </citation>
</ref>
<ref id="B3">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Bircher</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Alexis</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Burri</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Oettershagen</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Omari</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Mantel</surname>
<given-names>T.</given-names>
</name>
<etal/>
</person-group> (<year>2015</year>). &#x201c;<article-title>Structural Inspection Path Planning via Iterative Viewpoint Resampling with Application to Aerial Robotics</article-title>,&#x201d; in <conf-name>2015 IEEE International Conference on Robotics and Automation (ICRA), 26-30 May, Seattle, WA, USA</conf-name>, <fpage>6423</fpage>&#x2013;<lpage>6430</lpage>. <pub-id pub-id-type="doi">10.1109/ICRA.2015.7140101</pub-id> </citation>
</ref>
<ref id="B4">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Bisio</surname>
<given-names>I.</given-names>
</name>
<name>
<surname>Garibotto</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Haleem</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Lavagetto</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Sciarrone</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>On the Localization of Wireless Targets: A Drone Surveillance Perspective</article-title>. <source>IEEE Network</source> <volume>35</volume>, <fpage>249</fpage>&#x2013;<lpage>255</lpage>. <pub-id pub-id-type="doi">10.1109/MNET.011.2000648</pub-id> </citation>
</ref>
<ref id="B5">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Bradski</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2000</year>). <article-title>The OpenCV Library</article-title>. <source>Dr. Dobb&#x2019;s J.&#x20;Softw. Tools</source> <volume>120</volume>, <fpage>122</fpage>&#x2013;<lpage>125</lpage>. </citation>
</ref>
<ref id="B6">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chen</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Jiang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Zhu</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Lehtom&#xe4;ki</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Kaartinen</surname>
<given-names>H.</given-names>
</name>
<etal/>
</person-group> (<year>2018</year>). <article-title>The Accuracy Comparison of Three Simultaneous Localization and Mapping (SLAM)-Based Indoor Mapping Technologies</article-title>. <source>Sensors</source> <volume>18</volume>, <fpage>3228</fpage>. <pub-id pub-id-type="doi">10.3390/s18103228</pub-id> </citation>
</ref>
<ref id="B7">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Chuang</surname>
<given-names>H.-M.</given-names>
</name>
<name>
<surname>He</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Namiki</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Autonomous Target Tracking of UAV Using High-Speed Visual Feedback</article-title>. <source>Appl. Sci.</source> <volume>9</volume>, <fpage>4552</fpage>. <pub-id pub-id-type="doi">10.3390/app9214552</pub-id> </citation>
</ref>
<ref id="B8">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Cossette</surname>
<given-names>C. C.</given-names>
</name>
<name>
<surname>Shalaby</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Saussie</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Forbes</surname>
<given-names>J.&#x20;R.</given-names>
</name>
<name>
<surname>Le Ny</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Relative Position Estimation between Two UWB Devices with IMUs</article-title>. <source>IEEE Robot. Autom. Lett.</source> <volume>6</volume>, <fpage>4313</fpage>&#x2013;<lpage>4320</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2021.3067640</pub-id> </citation>
</ref>
<ref id="B9">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Dang</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Mascarich</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Khattak</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Papachristos</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Alexis</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2019</year>). &#x201c;<article-title>Graph-based Path Planning for Autonomous Robotic Exploration in Subterranean Environments</article-title>,&#x201d; in <conf-name>2019 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 3-8 November, Macau, China</conf-name>, <fpage>3105</fpage>&#x2013;<lpage>3112</lpage>. <pub-id pub-id-type="doi">10.1109/IROS40897.2019.8968151</pub-id> </citation>
</ref>
<ref id="B10">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Daniele</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Emanuele</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Virtual Simulation Benchmark for the Evaluation of SLAM and 3d Reconstruction Algorithms Uncertainty</article-title>. <source>Meas. Sci. Technol.</source> <volume>32</volume>. <pub-id pub-id-type="doi">10.1088/1361-6501/abeccc</pub-id> </citation>
</ref>
<ref id="B11">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Das</surname>
<given-names>A. K.</given-names>
</name>
<name>
<surname>Fierro</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Kumar</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Ostrowski</surname>
<given-names>J.&#x20;P.</given-names>
</name>
<name>
<surname>Spletzer</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Taylor</surname>
<given-names>C. J.</given-names>
</name>
</person-group> (<year>2002</year>). <article-title>A Vision-Based Formation Control Framework</article-title>. <source>IEEE Trans. Robot. Automat.</source> <volume>18</volume>, <fpage>813</fpage>&#x2013;<lpage>825</lpage>. <pub-id pub-id-type="doi">10.1109/tra.2002.803463</pub-id> </citation>
</ref>
<ref id="B12">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Dufek</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Murphy</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Visual Pose Estimation of Rescue Unmanned Surface Vehicle from Unmanned Aerial System</article-title>. <source>Front. Robot. AI</source> <volume>6</volume>, <fpage>42</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2019.00042</pub-id> </citation>
</ref>
<ref id="B13">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Gassner</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Cieslewski</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Scaramuzza</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Dynamic Collaboration without Communication: Vision-Based cable-suspended Load Transport with Two Quadrotors</article-title>,&#x201d; in <conf-name>2017 IEEE International Conference on Robotics and Automation (ICRA), 29 May&#x2013;3 June, Singapore</conf-name>, <fpage>5196</fpage>&#x2013;<lpage>5202</lpage>. <pub-id pub-id-type="doi">10.1109/ICRA.2017.7989609</pub-id> </citation>
</ref>
<ref id="B14">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gkountas</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Leader/Follower Force Control of Aerial Manipulators</article-title>. <source>IEEE Access</source> <volume>9</volume>, <fpage>17584</fpage>&#x2013;<lpage>17595</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2021.3053654</pub-id> </citation>
</ref>
<ref id="B15">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Gouaisbaut</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Peaucelle</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2006</year>). <article-title>Delay-dependent Robust Stability of Time Delay Systems</article-title>. <source>IFAC Proc.</source> <volume>39</volume>, <fpage>453</fpage>&#x2013;<lpage>458</lpage>. <pub-id pub-id-type="doi">10.3182/20060705-3-fr-2907.00078</pub-id> </citation>
</ref>
<ref id="B16">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Holter</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Tsoukalas</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Evangeliou</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Giakoumidis</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Relative Spherical-Visual Localization for Cooperative Unmanned Aerial Systems</article-title>,&#x201d; in <conf-name>2021 International Conference on Unmanned Aircraft Systems (ICUAS), 15-18 June, Athens, Greece</conf-name>, <fpage>371</fpage>&#x2013;<lpage>376</lpage>. <pub-id pub-id-type="doi">10.1109/icuas51884.2021.9476734</pub-id> </citation>
</ref>
<ref id="B17">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Kumar</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Patil</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Patil</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Park</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Chai</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>A LiDAR and IMU Integrated Indoor Navigation System for UAVs and its Application in Real-Time Pipeline Classification</article-title>. <source>Sensors</source> <volume>17</volume>, <fpage>1268</fpage>. <pub-id pub-id-type="doi">10.3390/s17061268</pub-id> </citation>
</ref>
<ref id="B18">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>LaValle</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Yershova</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Katsev</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Antonov</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2014</year>). &#x201c;<article-title>Head Tracking for the Oculus Rift</article-title>,&#x201d; in <conf-name>2014 IEEE International Conference on Robotics and Automation (ICRA), 31 May&#x2013;7 June, Hong Kong, China</conf-name>, <fpage>187</fpage>&#x2013;<lpage>194</lpage>. <pub-id pub-id-type="doi">10.1109/icra.2014.6906608</pub-id> </citation>
</ref>
<ref id="B19">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lepetit</surname>
<given-names>V.</given-names>
</name>
<name>
<surname>Moreno-Noguer</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Fua</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2009</year>). <article-title>EPnP: An Accurate O(n) Solution to the PnP Problem</article-title>. <source>Int. J.&#x20;Comput. Vis.</source> <volume>81</volume>, <fpage>155</fpage>&#x2013;<lpage>166</lpage>. <pub-id pub-id-type="doi">10.1007/s11263-008-0152-6</pub-id> </citation>
</ref>
<ref id="B20">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Li</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Ge</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Loianno</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Cooperative Transportation of Cable Suspended Payloads with MAVs Using Monocular Vision and Inertial Sensing</article-title>. <source>IEEE Robot. Autom. Lett.</source> <volume>6</volume>, <fpage>5316</fpage>&#x2013;<lpage>5323</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2021.3065286</pub-id> </citation>
</ref>
<ref id="B21">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Long Quan</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Zhongdan Lan</surname>
<given-names>Z.</given-names>
</name>
</person-group> (<year>1999</year>). <article-title>Linear N-point Camera Pose Determination</article-title>. <source>IEEE Trans. Pattern Anal. Machine Intell.</source> <volume>21</volume>, <fpage>774</fpage>&#x2013;<lpage>780</lpage>. <pub-id pub-id-type="doi">10.1109/34.784291</pub-id> </citation>
</ref>
<ref id="B22">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>L&#xf3;pez-Cer&#xf3;n</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Canas</surname>
<given-names>J.&#x20;M.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Accuracy Analysis of Marker-Based 3d Visual Localization</article-title>,&#x201d; in <conf-name>XXXVII Jornadas de Automatica Workshop, 7-9 September, Madrid, Spain</conf-name>, <fpage>8</fpage>. </citation>
</ref>
<ref id="B23">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Lu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Xue</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Xia</surname>
<given-names>G.-S.</given-names>
</name>
<name>
<surname>Zhang</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>A Survey on Vision-Based UAV Navigation</article-title>. <source>Geo-spatial Inf. Sci.</source> <volume>21</volume>, <fpage>21</fpage>&#x2013;<lpage>32</lpage>. <pub-id pub-id-type="doi">10.1080/10095020.2017.1420509</pub-id> </citation>
</ref>
<ref id="B24">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Mahendran</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Ali</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Vidal</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>3D Pose Regression Using Convolutional Neural Networks</article-title>,&#x201d; in <conf-name>2017 IEEE Conference on Computer Vision and Pattern Recognition Workshops (CVPRW), 21-26 July, Honolulu, HI, USA</conf-name>, <fpage>494</fpage>&#x2013;<lpage>495</lpage>. <pub-id pub-id-type="doi">10.1109/CVPRW.2017.73</pub-id> </citation>
</ref>
<ref id="B25">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Mariottini</surname>
<given-names>G. L.</given-names>
</name>
<name>
<surname>Pappas</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Prattichizzo</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Daniilidis</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2005</year>). &#x201c;<article-title>Vision-based Localization of Leader-Follower Formations</article-title>,&#x201d; in <conf-name>Proceedings of the 44th IEEE Conference on Decision and Control (IEEE), 15 December, Seville, Spain</conf-name>, <fpage>635</fpage>&#x2013;<lpage>640</lpage>. </citation>
</ref>
<ref id="B26">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>McConville</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Bose</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Clarke</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Mayol-Cuevas</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Chen</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Greatwood</surname>
<given-names>C.</given-names>
</name>
<etal/>
</person-group> (<year>2020</year>). <article-title>Visual Odometry Using Pixel Processor Arrays for Unmanned Aerial Systems in GPS Denied Environments</article-title>. <source>Front. Robot. AI</source> <volume>7</volume>, <fpage>126</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2020.00126</pub-id> </citation>
</ref>
<ref id="B27">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Mondragon</surname>
<given-names>I. F.</given-names>
</name>
<name>
<surname>Campoy</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Marti&#x301;nez</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Olivares-Me&#x301;ndez</surname>
<given-names>M. A.</given-names>
</name>
</person-group> (<year>2010</year>). &#x201c;<article-title>3D Pose Estimation Based on Planar Object Tracking for UAVs Control</article-title>,&#x201d; in <conf-name>2010 IEEE International Conference on Robotics and Automation</conf-name>, <fpage>35</fpage>&#x2013;<lpage>41</lpage>. <pub-id pub-id-type="doi">10.1109/ROBOT.2010.5509287</pub-id> </citation>
</ref>
<ref id="B28">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mur-Artal</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Montiel</surname>
<given-names>J.&#x20;M. M.</given-names>
</name>
<name>
<surname>Tardos</surname>
<given-names>J.&#x20;D.</given-names>
</name>
</person-group> (<year>2015</year>). <article-title>ORB-SLAM: a Versatile and Accurate Monocular SLAM System</article-title>. <source>IEEE Trans. Robot.</source> <volume>31</volume>, <fpage>1147</fpage>&#x2013;<lpage>1163</lpage>. <pub-id pub-id-type="doi">10.1109/tro.2015.2463671</pub-id> </citation>
</ref>
<ref id="B29">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Mur-Artal</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Tardos</surname>
<given-names>J.&#x20;D.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>ORB-SLAM2: An Open-Source Slam System for Monocular, Stereo, and RGB-D Cameras</article-title>. <source>IEEE Trans. Robot.</source> <volume>33</volume>, <fpage>1255</fpage>&#x2013;<lpage>1262</lpage>. <pub-id pub-id-type="doi">10.1109/tro.2017.2705103</pub-id> </citation>
</ref>
<ref id="B30">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Nguyen</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Alexis</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Forceful Aerial Manipulation Based on an Aerial Robotic Chain: Hybrid Modeling and Control</article-title>. <source>IEEE Robot. Autom. Lett.</source> <volume>6</volume>, <fpage>3711</fpage>&#x2013;<lpage>3719</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2021.3064254</pub-id> </citation>
</ref>
<ref id="B31">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Oberkampf</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>DeMenthon</surname>
<given-names>D. F.</given-names>
</name>
<name>
<surname>Davis</surname>
<given-names>L. S.</given-names>
</name>
</person-group> (<year>1996</year>). <article-title>Iterative Pose Estimation Using Coplanar Feature Points</article-title>. <source>Computer Vis. Image Understanding</source> <volume>63</volume>, <fpage>495</fpage>&#x2013;<lpage>511</lpage>. <pub-id pub-id-type="doi">10.1006/cviu.1996.0037</pub-id> </citation>
</ref>
<ref id="B32">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Ortiz-Fernandez</surname>
<given-names>L. E.</given-names>
</name>
<name>
<surname>Cabrera-Avila</surname>
<given-names>E. V.</given-names>
</name>
<name>
<surname>Silva</surname>
<given-names>B. M. F. d.</given-names>
</name>
<name>
<surname>Gon&#xe7;alves</surname>
<given-names>L. M. G.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Smart Artificial Markers for Accurate Visual Mapping and Localization</article-title>. <source>Sensors</source> <volume>21</volume>, <fpage>625</fpage>. <pub-id pub-id-type="doi">10.3390/s21020625</pub-id> </citation>
</ref>
<ref id="B33">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Papachristos</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Alexis</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Carrillo</surname>
<given-names>L. R. G.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Distributed Infrastructure Inspection Path Planning for Aerial Robotics Subject to Time Constraints</article-title>,&#x201d; in <conf-name>2016 International Conference on Unmanned Aircraft Systems (ICUAS), 7-10 June, Arlington, VA, USA</conf-name>, <fpage>406</fpage>&#x2013;<lpage>412</lpage>. <pub-id pub-id-type="doi">10.1109/ICUAS.2016.7502523</pub-id> </citation>
</ref>
<ref id="B34">
<citation citation-type="book">
<person-group person-group-type="author">
<name>
<surname>Papachristos</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Kamel</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Popovi&#x107;</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Khattak</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Bircher</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Oleynikova</surname>
<given-names>H.</given-names>
</name>
<etal/>
</person-group> (<year>2019a</year>). <source>Autonomous Exploration and Inspection Path Planning for Aerial Robots Using the Robot Operating System</source>, <volume>3</volume>. <publisher-loc>Berlin</publisher-loc>: <publisher-name>Springer International Publishing</publisher-name>, <fpage>67</fpage>&#x2013;<lpage>111</lpage>. <comment>chap. Robot Operating System (ROS): The Complete Reference</comment>. <pub-id pub-id-type="doi">10.1007/978-3-319-91590-6_3</pub-id> </citation>
</ref>
<ref id="B35">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Papachristos</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Khattak</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Mascarich</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Dang</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Alexis</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2019b</year>). &#x201c;<article-title>Autonomous Aerial Robotic Exploration of Subterranean Environments Relying on Morphology-Aware Path Planning</article-title>,&#x201d; in <conf-name>2019 International Conference on Unmanned Aircraft Systems (ICUAS), 11-14 June, Atlanta, GA, USA</conf-name>, <fpage>299</fpage>&#x2013;<lpage>305</lpage>. <pub-id pub-id-type="doi">10.1109/ICUAS.2019.8797885</pub-id> </citation>
</ref>
<ref id="B36">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Patel</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Krishnamurthy</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Khorrami</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Overriding Learning-Based Perception Systems for Control of Autonomous Unmanned Aerial Vehicles</article-title>,&#x201d; in <conf-name>2021 International Conference on Unmanned Aircraft Systems (ICUAS) (IEEE), 15-18 June, Athens, Greece</conf-name>, <fpage>258</fpage>&#x2013;<lpage>264</lpage>. <pub-id pub-id-type="doi">10.1109/icuas51884.2021.9476881</pub-id> </citation>
</ref>
<ref id="B37">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Qingbo</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Nan</surname>
<given-names>L.</given-names>
</name>
<name>
<surname>Baokui</surname>
<given-names>L.</given-names>
</name>
</person-group> (<year>2012</year>). &#x201c;<article-title>The Application of GPS/SINS Integration Based on Kalman Filter</article-title>,&#x201d; in <conf-name>Proceedings of the 31st Chinese Control Conference, 25-27 July, Hefei, China</conf-name>, <fpage>4607</fpage>&#x2013;<lpage>4610</lpage>. </citation>
</ref>
<ref id="B38">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Quigley</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Ken</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Brian</surname>
<given-names>G.</given-names>
</name>
<name>
<surname>Josh</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Tully</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Jeremy</surname>
<given-names>L.</given-names>
</name>
<etal/>
</person-group> (<year>2009</year>). &#x201c;<article-title>ROS: an Open-Source Robot Operating System</article-title>,&#x201d; in <conf-name>ICRA Workshop on open source software, 12-17 May, Kobe, Japan</conf-name> <volume>32</volume>, <fpage>5</fpage>. </citation>
</ref>
<ref id="B39">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Radwan</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Valada</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Burgard</surname>
<given-names>W.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>VLocNet&#x2b;&#x2b;: Deep Multitask Learning for Semantic Visual Localization and Odometry</article-title>. <source>IEEE Robot. Autom. Lett.</source> <volume>3</volume>, <fpage>4407</fpage>&#x2013;<lpage>4414</lpage>. <pub-id pub-id-type="doi">10.1109/LRA.2018.2869640</pub-id> </citation>
</ref>
<ref id="B40">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Romero-Ramirez</surname>
<given-names>F. J.</given-names>
</name>
<name>
<surname>Mu&#xf1;oz-Salinas</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Medina-Carnicer</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2018</year>). <article-title>Speeded up Detection of Squared Fiducial Markers</article-title>. <source>Image Vis. Comput.</source> <volume>76</volume>, <fpage>38</fpage>&#x2013;<lpage>47</lpage>. <pub-id pub-id-type="doi">10.1016/j.imavis.2018.05.004</pub-id> </citation>
</ref>
<ref id="B41">
<citation citation-type="thesis">
<person-group person-group-type="author">
<name>
<surname>Sabatino</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>Quadrotor Control: Modeling, Nonlinearcontrol Design, and Simulation</article-title>,&#x201d; (<publisher-loc>Stockholm, Sweden</publisher-loc>: <publisher-name>KTH, Automatic Control</publisher-name>). <comment>Master&#x2019;s thesis</comment>. </citation>
</ref>
<ref id="B42">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Schmuck</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Chli</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Multi-UAV Collaborative Monocular SLAM</article-title>,&#x201d; in <conf-name>2017 IEEE International Conference on Robotics and Automation (ICRA), 29 May&#x2013;3 June, Singapore</conf-name>, <fpage>3863</fpage>&#x2013;<lpage>3870</lpage>. <pub-id pub-id-type="doi">10.1109/ICRA.2017.7989445</pub-id> </citation>
</ref>
<ref id="B43">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shin</surname>
<given-names>J.-M.</given-names>
</name>
<name>
<surname>Kim</surname>
<given-names>Y.-S.</given-names>
</name>
<name>
<surname>Ban</surname>
<given-names>T.-W.</given-names>
</name>
<name>
<surname>Choi</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Kang</surname>
<given-names>K.-M.</given-names>
</name>
<name>
<surname>Ryu</surname>
<given-names>J.-Y.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Position Tracking Techniques Using Multiple Receivers for Anti-drone Systems</article-title>. <source>Sensors</source> <volume>21</volume>, <fpage>35</fpage>. <pub-id pub-id-type="doi">10.3390/s21010035</pub-id> </citation>
</ref>
<ref id="B44">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Shule</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Almansa</surname>
<given-names>C. M.</given-names>
</name>
<name>
<surname>Queralta</surname>
<given-names>J.&#x20;P.</given-names>
</name>
<name>
<surname>Zou</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Westerlund</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>UWB-based Localization for Multi-UAV Systems and Collaborative Heterogeneous Multi-Robot Systems</article-title>. <source>Proced. Comput. Sci.</source> <volume>175</volume>, <fpage>357</fpage>&#x2013;<lpage>364</lpage>. <comment>The 17th International Conference on Mobile Systems and Pervasive Computing (MobiSPC),The 15th International Conference on Future Networks and Communications (FNC),The 10th International Conference on Sustainable Energy Information Technology</comment>. <pub-id pub-id-type="doi">10.1016/j.procs.2020.07.051</pub-id> </citation>
</ref>
<ref id="B45">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Smolyanskiy</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Gonzalez-Franco</surname>
<given-names>M.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Stereoscopic First Person View System for Drone Navigation</article-title>. <source>Front. Robot. AI</source> <volume>4</volume>, <fpage>11</fpage>. <pub-id pub-id-type="doi">10.3389/frobt.2017.00011</pub-id> </citation>
</ref>
<ref id="B46">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Steich</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Kamel</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Beardsley</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Obrist</surname>
<given-names>M. K.</given-names>
</name>
<name>
<surname>Siegwart</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Lachat</surname>
<given-names>T.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>Tree Cavity Inspection Using Aerial Robots</article-title>,&#x201d; in <conf-name>2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 9-14 October, Daejeon, Korea (South)</conf-name>, <fpage>4856</fpage>&#x2013;<lpage>4862</lpage>. <pub-id pub-id-type="doi">10.1109/IROS.2016.7759713</pub-id> </citation>
</ref>
<ref id="B47">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Sun</surname>
<given-names>Q.</given-names>
</name>
<name>
<surname>Xia</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Foster</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Falkmer</surname>
<given-names>T.</given-names>
</name>
<name>
<surname>Lee</surname>
<given-names>H.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>Pursuing Precise Vehicle Movement Trajectory in Urban Residential Area Using Multi-Gnss Rtk Tracking</article-title>. <source>Transportation Res. Proced.</source> <volume>25</volume>, <fpage>2356</fpage>&#x2013;<lpage>2372</lpage>. <pub-id pub-id-type="doi">10.3390/s1906131210.1016/j.trpro.2017.05.255</pub-id> </citation>
</ref>
<ref id="B48">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Suwatthikul</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Chantaweesomboon</surname>
<given-names>W.</given-names>
</name>
<name>
<surname>Manatrinon</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Athikulwongse</surname>
<given-names>K.</given-names>
</name>
<name>
<surname>Kaemarungsi</surname>
<given-names>K.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Implication of Anchor Placement on Performance of Uwb Real-Time Locating System</article-title>,&#x201d; in <conf-name>2017 8th International Conference of Information and Communication Technology for Embedded Systems (IC-ICTES), 7-9 May, Chonburi, Thailand</conf-name>, <fpage>1</fpage>&#x2013;<lpage>6</lpage>. <pub-id pub-id-type="doi">10.1109/ICTEmSys.2017.7958760</pub-id> </citation>
</ref>
<ref id="B49">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Trujillo</surname>
<given-names>J.-C.</given-names>
</name>
<name>
<surname>Munguia</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Urzua</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Guerra</surname>
<given-names>E.</given-names>
</name>
<name>
<surname>Grau</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2020</year>). <article-title>Monocular Visual SLAM Based on a Cooperative UAV-Target System</article-title>. <source>Sensors</source> <volume>20</volume>, <fpage>3531</fpage>. <pub-id pub-id-type="doi">10.3390/s20123531</pub-id> </citation>
</ref>
<ref id="B50">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tsiourva</surname>
<given-names>M.</given-names>
</name>
<name>
<surname>Papachristos</surname>
<given-names>C.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>LiDAR Imaging-Based Attentive Perception</article-title>,&#x201d; in <conf-name>2020 International Conference on Unmanned Aircraft Systems (ICUAS), 1-4 September, Athens, Greece</conf-name>, <fpage>622</fpage>&#x2013;<lpage>626</lpage>. <pub-id pub-id-type="doi">10.1109/ICUAS48674.2020.9213910</pub-id> </citation>
</ref>
<ref id="B51">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tsoukalas</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Khorrami</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2018</year>). &#x201c;<article-title>Relative Pose Estimation of Unmanned Aerial Systems</article-title>,&#x201d; in <conf-name>2018 26th Mediterranean Conference on Control and Automation (MED), 19-22 June, Zadar, Croatia</conf-name>, <fpage>155</fpage>&#x2013;<lpage>160</lpage>. <pub-id pub-id-type="doi">10.1109/MED.2018.8442959</pub-id> </citation>
</ref>
<ref id="B52">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tsoukalas</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Papatheodorou</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Khorrami</surname>
<given-names>F.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>UAV-deployment for City-wide Area Coverage and Computation of Optimal Response Trajectories</article-title>,&#x201d; in <conf-name>2020 International Conference on Unmanned Aircraft Systems (ICUAS), 1-4 September, Athens, Greece</conf-name>, <fpage>66</fpage>&#x2013;<lpage>71</lpage>. <pub-id pub-id-type="doi">10.1109/ICUAS48674.2020.9213831</pub-id> </citation>
</ref>
<ref id="B53">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Tsoukalas</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Xing</surname>
<given-names>D.</given-names>
</name>
<name>
<surname>Evangeliou</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Giakoumidis</surname>
<given-names>N.</given-names>
</name>
<name>
<surname>Tzes</surname>
<given-names>A.</given-names>
</name>
</person-group> (<year>2021</year>). &#x201c;<article-title>Deep Learning Assisted Visual Tracking of Evader-UAV</article-title>,&#x201d; in <conf-name>2021 International Conference on Unmanned Aircraft Systems (ICUAS), 15-18 June, Athens, Greece</conf-name>, <fpage>252</fpage>&#x2013;<lpage>257</lpage>. <pub-id pub-id-type="doi">10.1109/ICUAS51884.2021.9476720</pub-id> </citation>
</ref>
<ref id="B54">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Upadhyay</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Rawat</surname>
<given-names>A.</given-names>
</name>
<name>
<surname>Deb</surname>
<given-names>D.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>Multiple Drone Navigation and Formation Using Selective Target Tracking-Based Computer Vision</article-title>. <source>Electronics</source> <volume>10</volume>, <fpage>2125</fpage>. <pub-id pub-id-type="doi">10.3390/electronics10172125</pub-id> </citation>
</ref>
<ref id="B55">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>van Diggelen</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Enge</surname>
<given-names>P.</given-names>
</name>
</person-group> (<year>2015</year>). &#x201c;<article-title>The World&#x2019;s First GPS MOOC and Worldwide Laboratory Using Smartphones</article-title>,&#x201d; in <conf-name>Proceedings of the 28th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS&#x2b; 2015), 14-18 September, Tampa, FL, USA</conf-name>, <fpage>361</fpage>&#x2013;<lpage>369</lpage>. </citation>
</ref>
<ref id="B56">
<citation citation-type="web">
<collab>Vicon motion systems</collab> (<year>2021</year>). <article-title>Vicon X ILM: Breaking New Ground in a Galaxy Far, Far Away</article-title>. <comment>Available at: <ext-link ext-link-type="uri" xlink:href="https://www.vicon.com/">https://www.vicon.com/</ext-link> (Accessed on 21 August, 2021)</comment>. </citation>
</ref>
<ref id="B57">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Olson</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2016</year>). &#x201c;<article-title>AprilTag 2: Efficient and Robust Fiducial Detection</article-title>,&#x201d; in <conf-name>2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS) (IEEE), 9-14 October, Daejeon, Korea (South)</conf-name>, <fpage>4193</fpage>&#x2013;<lpage>4198</lpage>. <pub-id pub-id-type="doi">10.1109/iros.2016.7759617</pub-id> </citation>
</ref>
<ref id="B58">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Wang</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>B.</given-names>
</name>
<name>
<surname>Tang</surname>
<given-names>C.</given-names>
</name>
<name>
<surname>Xu</surname>
<given-names>G.</given-names>
</name>
</person-group> (<year>2020</year>). &#x201c;<article-title>Pose and Velocity Estimation Algorithm for UAV in Visual Landing</article-title>,&#x201d; in <conf-name>2020 39th Chinese Control Conference (CCC), 27-29 July, Shenyang, China</conf-name>, <fpage>3713</fpage>&#x2013;<lpage>3718</lpage>. <pub-id pub-id-type="doi">10.23919/CCC50068.2020.9188491</pub-id> </citation>
</ref>
<ref id="B59">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Wittmann</surname>
<given-names>F.</given-names>
</name>
<name>
<surname>Lambercy</surname>
<given-names>O.</given-names>
</name>
<name>
<surname>Gassert</surname>
<given-names>R.</given-names>
</name>
</person-group> (<year>2019</year>). <article-title>Magnetometer-Based Drift Correction during Rest in IMU Arm Motion Tracking</article-title>. <source>Sensors</source> <volume>19</volume>, <fpage>1312</fpage>. <pub-id pub-id-type="doi">10.3390/s19061312</pub-id> </citation>
</ref>
<ref id="B60">
<citation citation-type="confproc">
<person-group person-group-type="author">
<name>
<surname>Xavier</surname>
<given-names>R. S.</given-names>
</name>
<name>
<surname>da Silva</surname>
<given-names>B. M. F.</given-names>
</name>
<name>
<surname>Goncalves</surname>
<given-names>L. M. G.</given-names>
</name>
</person-group> (<year>2017</year>). &#x201c;<article-title>Accuracy Analysis of Augmented Reality Markers for Visual Mapping and Localization</article-title>,&#x201d; in <conf-name>2017 Workshop of Computer Vision (WVC), 30 October&#x2013;1 November, Natal, Brazil</conf-name>, <fpage>73</fpage>&#x2013;<lpage>77</lpage>. <pub-id pub-id-type="doi">10.1109/WVC.2017.00020</pub-id> </citation>
</ref>
<ref id="B61">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>H.</given-names>
</name>
<name>
<surname>Ding</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>P.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>R.</given-names>
</name>
<name>
<surname>Li</surname>
<given-names>Y.</given-names>
</name>
</person-group> (<year>2017</year>). <article-title>An RFID Indoor Positioning Algorithm Based on Bayesian Probability and K-Nearest Neighbor</article-title>. <source>Sensors</source> <volume>17</volume>, <fpage>1806</fpage>. <pub-id pub-id-type="doi">10.3390/s17081806</pub-id> </citation>
</ref>
<ref id="B62">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Xu</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Lam</surname>
<given-names>J.</given-names>
</name>
</person-group> (<year>2008</year>). <article-title>A Survey of Linear Matrix Inequality Techniques in Stability Analysis of Delay Systems</article-title>. <source>Int. J.&#x20;Syst. Sci.</source> <volume>39</volume>, <fpage>1095</fpage>&#x2013;<lpage>1113</lpage>. <pub-id pub-id-type="doi">10.1080/00207720802300370</pub-id> </citation>
</ref>
<ref id="B63">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yang</surname>
<given-names>J.-C.</given-names>
</name>
<name>
<surname>Lin</surname>
<given-names>C.-J.</given-names>
</name>
<name>
<surname>You</surname>
<given-names>B.-Y.</given-names>
</name>
<name>
<surname>Yan</surname>
<given-names>Y.-L.</given-names>
</name>
<name>
<surname>Cheng</surname>
<given-names>T.-H.</given-names>
</name>
</person-group> (<year>2021</year>). <article-title>RTLIO: Real-Time LiDAR-Inertial Odometry and Mapping for UAVs</article-title>. <source>Sensors</source> <volume>21</volume>, <fpage>3955</fpage>. <pub-id pub-id-type="doi">10.3390/s21123955</pub-id> </citation>
</ref>
<ref id="B64">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Yokoyama</surname>
<given-names>R. S.</given-names>
</name>
<name>
<surname>Kimura</surname>
<given-names>B. Y. L.</given-names>
</name>
<name>
<surname>dos Santos Moreira</surname>
<given-names>E.</given-names>
</name>
</person-group> (<year>2014</year>). <article-title>An Architecture for Secure Positioning in a UAV Swarm Using RSSI-Based Distance Estimation</article-title>. <source>SIGAPP Appl. Comput. Rev.</source> <volume>14</volume>, <fpage>36</fpage>&#x2013;<lpage>44</lpage>. <pub-id pub-id-type="doi">10.1145/2656864.2656867</pub-id> </citation>
</ref>
<ref id="B65">
<citation citation-type="journal">
<person-group person-group-type="author">
<name>
<surname>Zhang</surname>
<given-names>J.</given-names>
</name>
<name>
<surname>Wang</surname>
<given-names>X.</given-names>
</name>
<name>
<surname>Yu</surname>
<given-names>Z.</given-names>
</name>
<name>
<surname>Lyu</surname>
<given-names>Y.</given-names>
</name>
<name>
<surname>Mao</surname>
<given-names>S.</given-names>
</name>
<name>
<surname>Periaswamy</surname>
<given-names>S. C.</given-names>
</name>
<etal/>
</person-group> (<year>2019</year>). <article-title>Robust RFID Based 6-DoF Localization for Unmanned Aerial Vehicles</article-title>. <source>IEEE Access</source> <volume>7</volume>, <fpage>77348</fpage>&#x2013;<lpage>77361</lpage>. <pub-id pub-id-type="doi">10.1109/ACCESS.2019.2922211</pub-id> </citation>
</ref>
</ref-list>
</back>
</article>