IMU as an Input vs. a Measurement of the State in Inertial-Aided State Estimation

Keenan Burnett,Angela P. Schoellig,Timothy D. Barfoot
2024-11-21
Abstract:Treating IMU measurements as inputs to a motion model and then preintegrating these measurements has almost become a de-facto standard in many robotics applications. However, this approach has a few shortcomings. First, it conflates the IMU measurement noise with the underlying process noise. Second, it is unclear how the state will be propagated in the case of IMU measurement dropout. Third, it does not lend itself well to dealing with multiple high-rate sensors such as a lidar and an IMU or multiple asynchronous IMUs. In this paper, we compare treating an IMU as an input to a motion model against treating it as a measurement of the state in a continuous-time state estimation framework. We methodically compare the performance of these two approaches on a 1D simulation and show that they perform identically, assuming that each method's hyperparameters have been tuned on a training set. We also provide results for our continuous-time lidar-inertial odometry in simulation and on the Newer College Dataset. In simulation, our approach exceeds the performance of an imu-as-input baseline during highly aggressive motion. On the Newer College Dataset, we demonstrate state of the art results. These results show that continuous-time techniques and the treatment of the IMU as a measurement of the state are promising areas of further research. Code for our lidar-inertial odometry can be found at: <a class="link-external link-https" href="https://github.com/utiasASRL/steam_icp" rel="external noopener nofollow">this https URL</a>
Robotics
What problem does this paper attempt to address?
The problem that this paper attempts to solve is the processing method of Inertial Measurement Unit (IMU) in state estimation. Specifically, the paper compares two methods: regarding IMU as the input of the motion model and regarding it as the measurement of the state. The traditional method is to use IMU measurement values as the input of the motion model and form relative motion factors through pre - integration techniques, but this method has some problems: 1. **Noise confusion**: IMU measurement noise is confused with process noise. 2. **State propagation when IMU measurement is lost**: In the case of IMU measurement loss, it is not clear how to propagate the state and covariance. 3. **Multi - sensor processing**: The classical pre - integration method is difficult to handle multiple high - frequency sensors (such as lidar and IMU) or multiple asynchronous IMUs. To solve these problems, the paper proposes a new method, that is, regarding IMU as the measurement of the state and using Gaussian Process (GP) motion prior in the continuous - time state estimation framework. The paper verifies the performance of these two methods through 1D simulation and experiments on the Newer College dataset, and shows the superior performance of the new method in highly dynamic motion. ### Main contributions 1. **Detailed comparison**: It provides a detailed comparison between regarding IMU as the input of the motion model and regarding it as the state measurement, which is the first comparison in the literature. 2. **Pre - integration improvement**: It shows how to use heterogeneous factors (a combination of binary and unary factors) for pre - integration in continuous - time state estimation. 3. **New lidar - inertial odometry**: It proposes a lidar - inertial odometry method based on Singer prior and shows the state - of - the - art performance on the Newer College dataset. ### Mathematical formulas To ensure the correctness and readability of the formulas, the following are some key formulas involved in the paper: - **Discrete motion model**: \[ x_k=\begin{bmatrix} p_k\\ \dot{p}_k \end{bmatrix}=\begin{bmatrix} 1&\Delta t_k\\ 0&1 \end{bmatrix}\begin{bmatrix} p_{k - 1}\\ \dot{p}_{k - 1} \end{bmatrix}+\begin{bmatrix} \frac{1}{2}\Delta t_k^2\\ \Delta t_k \end{bmatrix}u_k \] where \(\Delta t_k = t_k - t_{k - 1}\), and \(u_k\) is the acceleration measurement value. - **Pre - integration measurement**: \[ \Delta x_{k,k - 1}=\sum_{n = 1}^{J}\Phi(\tau_J,\tau_n)B_nu_n \] - **Objective function**: \[ J(x)=\sum_{k = 0}^{K}(J_v(x_k)+J_y(x_k)) \] - **Continuous - time state estimation**: \[ x(t)\sim\text{GP}(\hat{x}(t),\hat{P}(t,t')) \] \[ y_k = C_kx(t_k)+n_k \] These formulas help to understand the different processing methods of IMU as input and measurement and their influence on state estimation.