Papers
Topics
Authors
Recent
Search
2000 character limit reached

Hybrid Qf-ES-EKF/UKF: Efficient VIO Fusion

Updated 26 December 2025
  • The paper introduces a hybrid sensor fusion filter that integrates ESKF for full state propagation with a selective SUKF for quaternion-based orientation refinement.
  • This method achieves high orientation accuracy while reducing computational cost by over 10× compared to a full SUKF, making it ideal for real-time UAV applications.
  • Adaptive visual measurement covariance further enhances robustness by dynamically tuning noise models based on real-time image quality metrics, significantly improving rotation and position estimates.

A Hybrid Quaternion-focused Error-State EKF/UKF (Qf-ES-EKF/UKF) is a sequential sensor fusion technique that combines the computational efficiency of the Error-State Extended Kalman Filter (ESKF) for global state propagation with the high-fidelity nonlinear estimation of a Scaled Unscented Kalman Filter (SUKF) applied selectively to a rotation-critical subspace, specifically the orientation quaternion. The architecture was introduced for robust, adaptive visual-inertial odometry (VIO) in Unmanned Aerial Vehicles (UAVs), with mechanisms for dynamic sensor reliability assessment and measurement noise adaptation to enhance pose estimation under challenging conditions (Asil et al., 19 Dec 2025).

1. State and Error-State Representations

The Qf-ES-EKF/UKF framework utilizes a 16-dimensional nominal state vector:

  • Quaternion qSO(3)q \in \mathrm{SO}(3) (4 × 1, body-to-world orientation)
  • Velocity vR3v \in \mathbb{R}^3 (world frame)
  • Position pR3p \in \mathbb{R}^3 (world frame)
  • Accelerometer bias baR3b_a \in \mathbb{R}^3
  • Gyroscope bias bgR3b_g \in \mathbb{R}^3

In vector form:

x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 16

The associated 15-dimensional error-state vector is:

  • Attitude error θR3\theta \in \mathbb{R}^3 (so(3) vector)
  • Velocity error δvR3\delta v \in \mathbb{R}^3
  • Position error δpR3\delta p \in \mathbb{R}^3
  • Accelerometer bias error δbaR3\delta b_a \in \mathbb{R}^3
  • Gyroscope bias error vR3v \in \mathbb{R}^30

With

vR3v \in \mathbb{R}^31

State correction and composition employ the “ ⊕ ” operator for quaternion error injection:

  • vR3v \in \mathbb{R}^32
  • vR3v \in \mathbb{R}^33

2. Error-State EKF Propagation

The core propagation leverages ESKF for the full state. The continuous-time nominal dynamics are:

  • vR3v \in \mathbb{R}^34
  • vR3v \in \mathbb{R}^35
  • vR3v \in \mathbb{R}^36
  • vR3v \in \mathbb{R}^37
  • vR3v \in \mathbb{R}^38

Here, vR3v \in \mathbb{R}^39 is the quaternion multiplication matrix, and pR3p \in \mathbb{R}^30 is the rotation matrix from pR3p \in \mathbb{R}^31.

The 15-dimensional error-state is propagated with a linear time-varying system:

pR3p \in \mathbb{R}^32

Discretization uses the Van-Loan method on a pR3p \in \mathbb{R}^33 block matrix to compute the state-transition matrix pR3p \in \mathbb{R}^34 and discrete process noise pR3p \in \mathbb{R}^35.

The ESKF propagation step at each IMU sample is:

  • pR3p \in \mathbb{R}^36
  • pR3p \in \mathbb{R}^37

3. Quaternion-Focused SUKF Orientation Refinement

After the global ESKF propagation, a targeted SUKF refinement step is applied solely to the pR3p \in \mathbb{R}^38 orientation-error covariance block pR3p \in \mathbb{R}^39. The process is as follows:

  • Generate baR3b_a \in \mathbb{R}^30 sigma points in the orientation subspace (baR3b_a \in \mathbb{R}^31) using scaled unscented transform parameters baR3b_a \in \mathbb{R}^32.
  • Compute Cholesky decomposition baR3b_a \in \mathbb{R}^33, define baR3b_a \in \mathbb{R}^34, and construct baR3b_a \in \mathbb{R}^35.
  • Map each sigma point to quaternion perturbations via baR3b_a \in \mathbb{R}^36 and apply to the nominal quaternion.
  • Each perturbed quaternion is propagated through IMU integration for orientation only.
  • Retract propagated quaternions to the nominal orientation using the log map, yielding error vectors baR3b_a \in \mathbb{R}^37.
  • Refine baR3b_a \in \mathbb{R}^38 using the sigma-point statistics:

baR3b_a \in \mathbb{R}^39

  • Replace original bgR3b_g \in \mathbb{R}^30 in the error covariance with bgR3b_g \in \mathbb{R}^31, leaving other submatrices unchanged.

4. Sequential Hybrid Propagation and Update

The complete Qf-ES-EKF/UKF filter loop includes:

  1. ESKF predict for full nominal state and error covariance.
  2. Extract bgR3b_g \in \mathbb{R}^32 and refine with SUKF in the quaternion subspace.
  3. When a visual or zero-velocity measurement becomes available, update the full error state with the standard EKF measurement update using measurement Jacobian bgR3b_g \in \mathbb{R}^33 and noise bgR3b_g \in \mathbb{R}^34.
  4. Inject estimated error bgR3b_g \in \mathbb{R}^35 into the nominal state and reset the error state.

This sequence achieves computational savings by limiting the costly SUKF step to a three-dimensional subspace while maintaining full ESKF update for all state variables.

5. Adaptive Visual Measurement Covariance

Measurement noise adaptation is governed by a dynamic sensor confidence score derived from real-time image quality metrics, including:

  • Inverted (normalized) entropy, normalized blur, pose-chibgR3b_g \in \mathbb{R}^36 error, culled keyframes ratio for position covariance (bgR3b_g \in \mathbb{R}^37)
  • Derivative metrics (intensity, blur, chibgR3b_g \in \mathbb{R}^38, keyframes) for velocity covariance (bgR3b_g \in \mathbb{R}^39)

A combined utility measure (x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 160 or x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 161) is calculated as the maximum among individual metrics (static or dynamic), transformed through a CASEF activation function:

x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 162

Covariance values are selected using a thresholding and interpolation scheme based on confidence scores, ensuring higher noise is assigned to outlier or low-confidence measurements.

The visual measurement covariance in the EKF update is then:

x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 163

6. Computational Complexity

The computational complexity is as follows:

Method Complexity Steps Included
Full ESKF x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 164 Full state prediction
Full SUKF (16D) x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 165 Sigma point expansion
Qf-ES-EKF/UKF (hybrid, 3D UKF) x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 166 ESKF + 3D SUKF

With x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 167, x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 168, the hybrid yields x=[q,v,p,ba,bg],dim(x)=16x = [q^\top, v^\top, p^\top, b_a^\top, b_g^\top]^\top, \qquad \dim(x) = 169252 operations vs. θR3\theta \in \mathbb{R}^303375 for full SUKF—a more than θR3\theta \in \mathbb{R}^31 reduction in state-propagation step. This enables real-time VIO on UAVs where high-fidelity orientation estimation is critical, without the prohibitive cost of applying a full SUKF to the complete state.

7. Experimental Results and Performance

Evaluation was performed on the EuRoC MAV (MH01–MH05) dataset:

  • Rotation accuracy (quaternion RMSE, degrees, avg. over all sequences):
    • ESKF: 1.42°
    • SUKF: 0.85° θR3\theta \in \mathbb{R}^32
    • Qf-ES-EKF/UKF (no adaptive covariance): 0.74° θR3\theta \in \mathbb{R}^33
    • Adaptive Qf-ES-EKF/UKF: 0.61° θR3\theta \in \mathbb{R}^34
  • Position accuracy (ATE, meters; MH04 + MH05):
    • ESKF: 0.56 m
    • SUKF: 0.56 m
    • Qf-ES-EKF/UKF: 0.53 m
    • Adaptive Qf-ES-EKF/UKF: 0.26 m θR3\theta \in \mathbb{R}^35
  • Timing (filter only, CPU, s):
    • ESKF: 2.44 s (RTFθR3\theta \in \mathbb{R}^360.92)
    • SUKF: 147.2 s (RTFθR3\theta \in \mathbb{R}^370.092)
    • Qf-ES-EKF/UKF: 76.9 s (RTFθR3\theta \in \mathbb{R}^380.175)

The hybrid approach achieves SUKF-level orientation accuracy at approximately 48% lower computational cost compared to a full SUKF, and only %%%%69baR3b_a \in \mathbb{R}^3070%%%% slower than plain ESKF. This attests to its suitability for real-time UAV VIO, especially in scenarios that are rotation-critical and subject to variable sensor reliability (Asil et al., 19 Dec 2025).

Definition Search Book Streamline Icon: https://streamlinehq.com
References (1)

Topic to Video (Beta)

No one has generated a video about this topic yet.

Whiteboard

No one has generated a whiteboard explanation for this topic yet.

Follow Topic

Get notified by email when new papers are published related to Hybrid Quaternion-focused Error-State EKF/UKF (Qf-ES-EKF/UKF).