Table of Contents
Fetching ...

UVIO: An UWB-Aided Visual-Inertial Odometry Framework with Bias-Compensated Anchors Initialization

Giulio Delama, Farhad Shamsfakhr, Stephan Weiss, Daniele Fontanelli, Alessandro Fornasier

TL;DR

UVIO addresses visual-inertial drift in GNSS-denied environments by fusing UWB ranging with an EKF-based VIO framework. It introduces an autonomous anchor initialization pipeline that begins with a coarse linear LS estimate from a short UAV trajectory, followed by nonlinear refinement and a GDOP-guided optimal waypoint plan to map multiple unknown anchors with biases; a bias-aware range model $z_A = β d + γ$ is integrated with a delayed update strategy to avoid interpolation errors. The initialization is followed by a tight integration of range measurements into the UVIO filter, enabling low-drift localization, even under camera dropouts, with observability aided by fixing two anchors. Validated through extensive simulations and real indoor UAV experiments, UVIO demonstrates autonomous operation, improved accuracy over pure VIO, and robustness to visual faults, signaling practical impact for GNSS-denied robotics and search-and-rescue missions.

Abstract

This paper introduces UVIO, a multi-sensor framework that leverages Ultra Wide Band (UWB) technology and Visual-Inertial Odometry (VIO) to provide robust and low-drift localization. In order to include range measurements in state estimation, the position of the UWB anchors must be known. This study proposes a multi-step initialization procedure to map multiple unknown anchors by an Unmanned Aerial Vehicle (UAV), in a fully autonomous fashion. To address the limitations of initializing UWB anchors via a random trajectory, this paper uses the Geometric Dilution of Precision (GDOP) as a measure of optimality in anchor position estimation, to compute a set of optimal waypoints and synthesize a trajectory that minimizes the mapping uncertainty. After the initialization is complete, the range measurements from multiple anchors, including measurement biases, are tightly integrated into the VIO system. While in range of the initialized anchors, the VIO drift in position and heading is eliminated. The effectiveness of UVIO and our initialization procedure has been validated through a series of simulations and real-world experiments.

UVIO: An UWB-Aided Visual-Inertial Odometry Framework with Bias-Compensated Anchors Initialization

TL;DR

UVIO addresses visual-inertial drift in GNSS-denied environments by fusing UWB ranging with an EKF-based VIO framework. It introduces an autonomous anchor initialization pipeline that begins with a coarse linear LS estimate from a short UAV trajectory, followed by nonlinear refinement and a GDOP-guided optimal waypoint plan to map multiple unknown anchors with biases; a bias-aware range model is integrated with a delayed update strategy to avoid interpolation errors. The initialization is followed by a tight integration of range measurements into the UVIO filter, enabling low-drift localization, even under camera dropouts, with observability aided by fixing two anchors. Validated through extensive simulations and real indoor UAV experiments, UVIO demonstrates autonomous operation, improved accuracy over pure VIO, and robustness to visual faults, signaling practical impact for GNSS-denied robotics and search-and-rescue missions.

Abstract

This paper introduces UVIO, a multi-sensor framework that leverages Ultra Wide Band (UWB) technology and Visual-Inertial Odometry (VIO) to provide robust and low-drift localization. In order to include range measurements in state estimation, the position of the UWB anchors must be known. This study proposes a multi-step initialization procedure to map multiple unknown anchors by an Unmanned Aerial Vehicle (UAV), in a fully autonomous fashion. To address the limitations of initializing UWB anchors via a random trajectory, this paper uses the Geometric Dilution of Precision (GDOP) as a measure of optimality in anchor position estimation, to compute a set of optimal waypoints and synthesize a trajectory that minimizes the mapping uncertainty. After the initialization is complete, the range measurements from multiple anchors, including measurement biases, are tightly integrated into the VIO system. While in range of the initialized anchors, the VIO drift in position and heading is eliminated. The effectiveness of UVIO and our initialization procedure has been validated through a series of simulations and real-world experiments.
Paper Structure (13 sections, 22 equations, 9 figures, 1 table, 1 algorithm)

This paper contains 13 sections, 22 equations, 9 figures, 1 table, 1 algorithm.

Figures (9)

  • Figure 1: This figure shows an example of what we described as delayed update strategy. In this example, the actual state estimate is at the time the last camera measurement has been received, thus $t_1$. Two UWB measurements are received at time $t_2$ and $t_3$. At the next camera measurement, at time $t_4$, the state is propagated and updated through all the UWB measurements collected, and finally, at time $t_4$ a new clone is added and then the state is updated with the newest camera measurement.
  • Figure 2: The sample representation of the drone operational volume with 8 initial waypoints (i.e. $q^{-}$). The cube volume is divided into 8 smaller cubes (3D grids), each one indicating all the possible positions (denoted by small white dots) for the corresponding waypoint.
  • Figure 3: Schematic representation of a sample chromosome in the $i$th iteration of the Grid-Based Evolutionary Algorithm. $\mathcal{G}^{(i)}_{j,x},\,\mathcal{G}^{(i)}_{j,y},\,\mathcal{G}^{(i)}_{j,z}$ indicate the 3 indexes (xyz) of a sample grid point for the $j$th waypoint.
  • Figure 4: Two Optimal sets of waypoints estimated as the solutions of the Grid-Based evolutionary algorithm in two different random configurations of UWB anchors. The black curves show a minimum snap trajectory generated for the corresponding waypoints with zero velocity boundary conditions.
  • Figure 5: Average GDOP and time distribution analysis for the two sample anchor configuration cases (1) Fig. \ref{['fig:OptWP']}(a) and (2) Fig. \ref{['fig:OptWP']}(b).
  • ...and 4 more figures