Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Next Article in Journal
Trams: Bridging the Past and Future—Example Guidelines for Tram Redesign Illustrated by a Case Study from Korea
Previous Article in Journal
Depth-Oriented Gray Image for Unseen Pig Detection in Real Time
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

A Novel Real-Time Autonomous Localization Algorithm Based on Weighted Loosely Coupled Visual–Inertial Data of the Velocity Layer

1
State Key Laboratory of Explosion Science and Safety Protection, Beijing Institute of Technology, Beijing 100081, China
2
Beijing Institute of Technology Chongqing Innovation Center, Chongqing 401100, China
3
School of Information Science and Engineering, Chongqing Jiaotong University, Chongqing 401100, China
*
Authors to whom correspondence should be addressed.
Appl. Sci. 2025, 15(2), 989; https://doi.org/10.3390/app15020989
Submission received: 10 December 2024 / Revised: 14 January 2025 / Accepted: 17 January 2025 / Published: 20 January 2025
(This article belongs to the Section Robotics and Automation)

Abstract

:
IMUs (inertial measurement units) and cameras are widely utilized and combined to autonomously measure the motion states of mobile robots. This paper presents a loosely coupled algorithm for autonomous localization, the ICEKF (IMU-aided camera extended Kalman filter), for the weighted data fusion of the IMU and visual measurement. The algorithm fuses motion information on the velocity layer, thereby mitigating the excessive accumulation of IMU errors caused by direct subtraction on the positional layer after quadratic integration. Furthermore, by incorporating a weighting mechanism, the algorithm allows for a flexible adjustment of the emphasis placed on IMU data versus visual information, which augments the robustness and adaptability of autonomous motion estimation for robots. The simulation and dataset experiments demonstrate that the ICEKF can provide reliable estimates for robot motion trajectories.

1. Introduction

1.1. Motivation

As the demand for autonomous mobility of robots continues to increase, localization technology continues to evolve. When robots perform motion tasks in environments such as extraterrestrial planets, rugged ground terrains, aerial spaces, or maritime environments [1,2,3], they face various challenges, including unstable satellite signals, impact and vibration upon sensors, limited visual features, and unpredictable light conditions. Furthermore, autonomous localization is a requisite ability for aerial [4], ground [5,6], or maritime [3,7] autonomous robots to successfully accomplish challenging tasks of local planning aiming for navigation to prevent collisions.
Integrated visual–inertial sensors do not require active signal emission or depend on external preset references, which benefits further data fusion as autonomous odometry. Two primary fusion strategies exist to facilitate fusion: loosely coupled methods and tightly coupled methods [8].
Loosely coupled methods are computationally efficient and maintain a higher update rate than tightly coupled methods do, thereby enabling low-cost and compact implementations. This approach additionally allows the simultaneous integration of localization information from multiple sources such as visual measurement, GNSS (global navigation satellite system), LIDAR (light detection and ranging), etc., [9,10]. Especially for application on the multiagent [11], loosely coupled methods are naturally capable of processing simultaneous multi-source information. Although the estimation accuracy is relatively low owing to the lack of an optimization process, which tight-coupled methods [12,13] usually perform, the integration of multiple measurement data into a loosely coupled framework is inevitable to address the challenges of environmental uncertainty during practical utilization. Therefore, a loosely coupled data fusion approach that is capable of adjusting the weights of the measurement results from individual sensors or agents is necessary to achieve a balanced output, considering how much the information source can be trusted.

1.2. Related Work

Loosely coupled visual–inertial odometry methods are usually constructed based on filter frameworks such as the EKF [14,15]. High-confidence visual keyframe measurements are then periodically utilized to correct the high-frequency integration results from IMUs. This basic structure effectively balances the updating rate and accuracy.
Kelly and Sukhatme [16] proposed a data fusion algorithm for the self-calibration of a monocular visual–inertial system with proven observability. With a similar filtering structure, Weiss and Siegwart [17] incorporated the world coordinate system drift in visual measurements, as well as the spatial relationships between the IMU and the monocular camera, into the EKF framework. This approach enables failure detection and scale-drift estimation by fusing of measurement data on the position and attitude layers.
Achtelik and Weiss [18] constructed a filter-based framework to recover the relative configuration of two drones performing IMUs and monocular visual measurements. To address error amplification during the error propagation process in EKFs due to possible inaccurate state modeling, BROSSARD et al. [19] proposed the visual–inertial invariant EKF algorithm, which is based on Lie algebra rules. Furthermore, researchers designed visual–inertial odometry that embraces the characteristics of novel filers such as the MEKF [20] and the equivariant filter [21,22] to broaden the application of filter-based techniques in motion estimation.
The aforementioned loosely coupled strategies have demonstrated remarkable performance when mainly focused on the fusion of positional layers. However, since the high-frequency update and the intrinsic drift of IMUs inevitably result in fast error accumulation, the effect of the final correction on the position and attitude layers will be suboptimal when the visual measurement update frequency drops or accuracy deteriorates. Furthermore, these methods are thus incapable of adjusting the emphasis on either source while encountering external visual interference.

1.3. Our Approach

This paper presents a loosely coupled algorithm for autonomous localization with a weighted data fusion on the linear velocity and angular velocity layers, namely the ICEKF. The weight of the IMU measurement can be adjusted according to whether the external conditions are favorable for visual measurement, thus increasing the overall accuracy of autonomous localization. The real-time performance is promising since the time complexity is O ( n ) . The local weak observability of the ICEKF is demonstrated.
The organization of this paper is as follows: the state vector of the ICEKF is established in the second section, the design of the propagation and update of the filter is discussed in the third section, the observability analysis is presented in the fourth section, and the fifth section carries out numerical studies of simulations and dataset experiments. Finally, a summary is provided.

2. Design of the State Vector

This section discusses the construction of the state vector and analyzes the weighted coupling process on the velocity layer. The forms of the ICEKF state vector are then deducted.

2.1. Definition of Variables in the ICEKF

The descriptions of the main coordinate frames and variables used in this study are listed in Table 1. The relationships between the coordinate frames of the IMU-aided camera integration system are established, as shown in Figure 1, where p c i and q ¯ c i represent the relative linear translation and rotation between the IMU and the camera, which are considered constants once calibrated. The IMU outputs linear acceleration a m i and angular velocity ω m i in its rigid body coordinate frame. This paper considers the visual black-box measurement outputting rotation q ¯ w c and unscaled linear translation p w c in the world frame. The fusion result is attached to the IMU coordinate frame, with the coupled linear translation and rotation denoted as p w i c and q ¯ w i c , respectively. The derivatives of the translation and rotation are v w i c and q ¯ ˙ w i c . The units used in this paper are described in the SI, such as acceleration in m2/s and angular velocity in rad/s.

2.2. Construction of the State Vector

Given the necessity for information fusion on the velocity layer, while containing first-order derivatives and integrals, the state of the ICEKF is defined as a column vector consisting of 30 elements, as follows:
X = p w i c T   v w c T   v w i T   q ¯ w i c T   q ¯ w i T   ω c c T   ω i i T b a i T b ω i T λ T ,
where v w c is the linear velocity of the visual measurement derived from p w c ; ω c c is the equivalent body angular velocity of the camera measured in the IMU frame; q ¯ w i and ω i i are the rotation velocity and body angular velocity, respectively; b a i and b ω i are the biases of a m i and ω m i , respectively; λ is the scale coefficient of the monocular visual translation. The remaining variables are described in the last section. Let a w i be the linear acceleration of the IMU measured in the world frame, where a w i = R w i a m i b a i n a m i . Additionally, ω i i = ω m i b ω i n ω m i .
The relationships among the variables in the ICEKF state are shown in Figure 2.
When the visual measurement is treated as a black box, v w c = p ˙ w c . To obtain ω c c , q ¯ w c should be transformed to q ¯ w c , which is the visual rotation described in the IMU frame. Then, ω c c can be obtained from the derivatives of the Euler angles recovered from q ¯ w c . The coupling coefficients of the linear and angular velocities, μ v , μ ω [ 0 , 1 ] , are independent of the state update. This design guarantees that the coupling weights are always adjustable, which increases the accuracy of motion estimation without impacting observability.
To focus on the filter construction in this paper, the following is assumed:
1. The drift of the visual world frame in the visual black-box measurement is negligible due to its slow variation.
2. The outcomes acquired through the first-order derivation of measurement results are modeled as random walk, including ω c c and v w c .

2.3. Coupling Process

The coupling process of the linear velocities of the IMU-camera system requires a weighted summation as follows:
v w i c = μ v v w i + λ ( 1 μ v ) R c i v w c ,
The angular velocity, which covaries with the rotation of the coordinate frames, cannot be directly summed. According to Appendix A and the proposed lemmas in Appendix B, with μ ω [ 0 , 1 ] , the following equations hold:
d d t q ¯ w i μ ω = 1 2 q ¯ w i μ ω μ ω ω ¯ i i ,
d d t q ¯ w c 1 μ ω = 1 2 q ¯ w c 1 μ ω 1 μ ω ω ¯ c c ,
where q ¯ w c is the equivalent rotation of the visual measurement in the IMU frame.
After further deduction according to Appendix A, the derivative of q ¯ w i c is written as follows:
q ¯ ˙ w i c = d d t q ¯ w i μ ω q ¯ w c 1 μ ω + q ¯ w i μ ω d d t q ¯ w c 1 μ ω = μ ω 2 q ¯ w i μ ω ω ¯ i i q ¯ w c 1 μ ω + 1 μ ω 2 q ¯ w i c ω ¯ c c ,
where ω ¯ = [ 0 , ω ] is the supplementary vector of the body angular vector ω .
Angular velocity fusion according to Equation (5) is performed while assuming that q ¯ w i c = q ¯ w c = q ¯ w i , which are all attached to the IMU frame. Thus, potential errors can be caused by the assembly and measurement noise for a real IMU-camera integrated rig. However, after careful calibration and the filter process, the influence of the possible inconsistency is negligible.

2.4. Simplification of the State Vector

To simplify further discussion, the subscripts of the variables described in the world coordinate system are omitted; thus, the ICEKF state vector in Equation (1) is rewritten as follows:
X = p i c T   v c T   v i T   q ¯ i c T   q ¯ i T ω c T ω i T   b a T b ω T λ T ,
The derivatives of the variables in the vector are as follows:
p ˙ i c = v i c = μ v v i + λ ( 1 μ v ) R c i v c ,   v ˙ c = n v c ,   v ˙ i = R i a m i b a i n a m i g , q ¯ ˙ i c = μ ω 2 q ¯ i μ ω ω ¯ i q ¯ c 1 μ ω + 1 μ ω 2 q ¯ i c ω ¯ c ,   q ¯ ˙ i = 1 2 q ¯ i ω ¯ i ,   ω ˙ c = n ω c ,   ω ˙ i = d d t ω m i b ω i n ω m i , b ˙ a i = n b a i ,   b ˙ ω i = n b ω i , λ ˙ = n λ ,
where v c , ω c , and λ are modeled as random walk, and notably q ¯ c = q ¯ c i q ¯ w c = q ¯ w c .

2.5. Error of the State Vector

Let X ^ denote the expectation of X , and let X ˜ denote the error between the expectation, and the measurement, written as X ˜ = X X ^ . X ˜ with 28 elements, is described as follows:
X ˜ = Δ p i c T   Δ v c T   Δ v i T   δ θ i c T   δ θ i T   Δ ω c T   Δ ω i T   Δ b a i T Δ b ω i T   Δ λ T ,
With the small-angle assumption, when the rotation angle corresponding to a unit quaternion q ¯ is very small, the error of q ¯ is written as δ q ¯ = q 0 , δ q T T 1 , 1 2 δ θ T T [23]. Because the algorithm operates at a high update rate, the high-order terms that yield negligible computational results are disregarded, such as δ q Δ ω , δ q δ q , and δ q n . Then, the description of the derivative X ˙ ˜ can be inspected.
According to Equation (2), the derivative of the coupled translation error is as follows:
Δ p i c . = μ v Δ v i + λ ( 1 μ v ) R c i Δ v c ,
The expectation of the linear acceleration of the IMU is a ^ i = a m i b ^ a i , and Δ b a i = b a i b ^ a i . According to Appendix A, the rotation can be reformed as R i = R q ¯ i R ^ i I 3 + δ θ i × under the small angle assumption. After neglecting the high-order terms, the error of the linear velocity of the IMU is written as follows:
Δ v i . = a i a ^ i = R i ( a m i b a i n a m i ) g R ^ i ( a m i b ^ a i ) + g R ^ i a ^ i × δ θ i R ^ i Δ b a i n a m i ,
For general quaternions and angular velocities, q ¯ = q ¯ ^ δ q ¯ and ω ¯ = ω ¯ ^ + Δ ω ¯ . By subjecting q ¯ i c = q ¯ c 1 μ ω q ¯ i μ ω and q ¯ i μ ω q ¯ i μ ω = 1 to Equation (5), the error of the coupled rotation can be deducted as follows:
δ q ¯ ˙ i c = q ¯ ^ i c μ ω 2 q ¯ i μ ω ω ¯ i q ¯ c 1 μ ω + 1 μ ω 2 q ¯ i c ω ¯ c μ ω 2 q ¯ ^ i μ ω ω ¯ ^ i q ¯ ^ c 1 μ ω δ q ¯ i c 1 μ ω 2 q ¯ ^ i c ω ¯ ^ c δ q ¯ i c = μ ω 2 δ q ¯ i c q ¯ i c q ¯ i μ ω ω ¯ ^ i + Δ ω ¯ i q ¯ c 1 μ ω μ ω 2 q ¯ ^ c 1 μ ω q ¯ ^ i μ ω q ¯ ^ i μ ω ω ¯ ^ i q ¯ ^ c 1 μ ω δ q ¯ i c + 1 μ ω 2 δ q ¯ i c ω ¯ ^ c + Δ ω ¯ c 1 μ ω 2 ω ¯ ^ c δ q ¯ i c = μ ω 2 δ q ¯ i c q ¯ c 1 μ ω ω ¯ ^ i q ¯ c 1 μ ω + μ ω 2 δ q ¯ i c q ¯ c 1 μ ω Δ ω ¯ i q ¯ c 1 μ ω μ ω 2 q ¯ ^ c 1 μ ω ω ¯ ^ i q ¯ ^ c 1 μ ω δ q ¯ i c + 1 μ ω 2 δ q ¯ i c ω ¯ ^ c + 1 μ ω 2 δ q ¯ i c Δ ω ¯ c 1 μ ω 2 ω ¯ ^ c δ q ¯ i c ,
According to Appendix A, the rotation of p i c with respect to q ¯ c 1 μ ω is written as follows:
q ¯ ^ c 1 μ ω p ¯ i c q ¯ ^ c 1 μ ω R ^ q ¯ ^ c 1 μ ω T p i c = R ^ μ ω c T p i c ,
where R μ ω c T is the rotation matrix converted from q ¯ c 1 μ ω .
By subjecting Equation (12) to Equation (11) and disregarding the high-order terms, the following is obtained:
δ q ¯ i c . = μ ω 2 δ q ¯ i c 0 R μ ω c T ω ^ i μ ω 2 0 R μ ω c T ω ^ i δ q ¯ i c + μ ω 2 δ q ¯ i c 0 R μ ω c T Δ ω i + 1 μ ω 2 δ q ¯ i c ω ¯ ^ c 1 μ ω 2 ω ¯ ^ c δ q ¯ i c + 1 μ ω 2 δ q ¯ i c Δ ω ¯ c = μ ω 2 0 R μ ω c T ω ^ i T R c T ω ^ i R μ ω c T ω ^ i × q 0 δ q i c 0 R μ ω c T ω ^ i T R c T ω ^ i R μ ω c T ω ^ i × q 0 δ q i c + 0 R μ ω c T Δ ω i T R c T Δ ω i R μ ω c T Δ ω i × q 0 δ q i c + 1 μ ω 2 0 ω ^ c T ω ^ c ω ^ c × q 0 δ q i c 0 ω ^ c T ω ^ c ω ^ c × q 0 δ q i c + 0 Δ ω c T Δ ω c Δ ω ^ c × q 0 δ q i c μ ω 2 0 2 R μ ω c T ω ^ i × δ q i c 0 q 0 R μ ω c T Δ ω i 1 μ ω 2 0 2 ω ^ c × δ q i c 0 q 0 Δ ω c ,
Then, with the small angle assumption δ q ¯ i c = q 0 , δ q i c T T 1 , 1 2 δ θ i c T T , the error of the coupled equivalent Euler angle is simplified as follows:
δ θ i c . = μ ω R μ ω c T ω ^ i × δ θ i c R μ ω c T Δ ω i 1 μ ω ω ^ c × δ θ i c Δ ω c ,
The expectation of the body angular velocity of the IMU is ω ^ i = ω m i b ^ ω i , and Δ b ω i = b ω i b ^ ω i . Resembling the process above, the error of the rotation of the IMU is written as follows:
δ q ¯ i . = q ¯ ^ i ( q ¯ i . q ¯ ^ i . δ q ¯ i ) = 1 2 δ q ¯ i ( ω ¯ ^ i + Δ ω ¯ i ) 1 2 ω ¯ ^ i δ q ¯ i = 1 2 0 ω ^ i ω ^ i ω ^ i × q i 0 δ q i 1 2 0 ω ^ i ω ^ i ω ^ i × q i 0 δ q i + 1 2 0 Δ ω i Δ ω i Δ ω i × q i 0 δ q i 0 ω ^ i × δ q i 0 1 2 q i 0 Δ ω i ,
Equation (15) can be simplified with the small angle assumption as follows:
δ θ i . = ω ^ i × δ θ i Δ ω i = ω ^ i × δ θ i Δ b ω i n ω m i ,
The derivatives of the remaining terms in X ˜ are as follows:
Δ v . c = n v c , Δ ω c . = n ω c , Δ ω i . = d d t Δ b ω i + n ω m i = n ω i , Δ b a i . = n b a i , Δ b ω i = . n b ω i , Δ λ . = n λ ,

3. Propagation and Update of the ICEKF

The propagation and update of the ICEKF are described in detail in this section. The key matrices in the propagation step determine the internal transition process of the filter. The update step rectifies the filtered outcomes in reference to the measurement results.

3.1. Propagation

For the linearized continuous-time errors of an ICEKF state, the following equation exists [24]:
X ˙ ˜ = F c X ˜ + G c n ,
where n = [ n ω c T   n a m i T   n ω c T   n ω m i T   n b a i T   n b ω i T ] T is the propagation noise vector for the ICEKF following the Gaussian distribution. F c and G c are considered constant during every iteration.
To discretize Equation (18) during the period Δ t , we write the description of the discrete state transition matrix F d and the discrete noise covariance matrix Q d as follows [24]:
F d = exp ( F c Δ t ) = I d + F c Δ t + 1 2 ! F c 2 Δ t 2 + Q d = t t + Δ t F d ( τ ) G c Q c G c T F d ( τ ) T d τ ,
where Q c = d i a g ( σ n v c 2 , σ n a i 2 , σ n ω c 2 , σ n ω i 2 , σ n b a i 2 , σ n b ω i 2 ) is the diagonal matrix converted from Gaussian noise.
Section 2.5 presents the specific expression of X ˙ ˜ . Considering that the algorithm operates at a high frequency, only the first-order expansion in Equation (19) is considered. The complete expression of F d is derived as follows:
F d = I 3   A 1   A 2 0 3 × 19 0 3   I 3     0 3 × 22 0 3   0 3   I 3   0 3   A 3   0 3   0 3   A 4   0 3   0 3 × 1 0 3   0 3   0 3   A 5   0 3   A 6   A 7   0 3   0 3   0 3 × 1 0 3   0 3   0 3   0 3   A 8   0 3   0 3   0 3   A 9   0 3 × 1 0 13 × 15   I 13 × 13   28 28 ,
where A 1 = λ ( 1 μ v ) R c i Δ t , A 2 = μ v I 3 Δ t , A 3 = R ^ i a ^ i × Δ t , A 4 = R ^ i Δ t , A 5 = I 3 μ ω R μ ω c T ω ^ i × + 1 μ ω ω ^ c × Δ t , A 6 = 1 μ ω I 3 Δ t , A 7 = μ ω R μ ω c T Δ t , A 8 = I 3 ω ^ I × Δ t , and A 9 = I 3 Δ t .
Q d can be further derived by combining Equation (20) and G c , and the explicit form of G c is recovered according to Equation (18) as follows:
G c = 0 3   0 3   0 3   0 3   0 3   0 3 I 3   0 3   0 3   0 3   0 3   0 3 0 3 R ^ i   0 3   0 3   0 3   0 3 0 3   0 3   0 3   0 3   0 3   0 3 0 3   0 3   0 3 I 3   0 3   0 3 0 3   0 3   I 3   0 3   0 3   0 3 0 3   0 3   0 3   0 3   I 3   0 3 0 7 × 18 28 18 .

3.2. Measurement

Let the state measurement matrix at the k -th step of the ICEKF be z k . After the measured linear translation z P , the attitude quaternion z ¯ q , the linear velocity z v , and the angular velocity z ω are obtained by comparing the results from the keyframes of the visual measurement with the expectation of the ICEKF, z k is obtained as follows:
z ˜ k = z ˜ p T z ¯ ˜ q T z ˜ v T z ˜ ω T T ,
For the error of the linear translation, the following holds:
z ˜ p = ( p i c R i c p i c ) λ + n p ( p ^ i c R ^ i c p i c ) λ ^ = p i c λ p ^ i c λ + p ^ i c λ p ^ i c λ ^ + R ^ i c p i c λ R ^ i c I 3 + δ θ i c × p i c λ + R ^ i c p i c λ + R ^ i c p i c λ ^ + n p = λ Δ p + R ^ i c p i c λ × δ θ i c + p ^ i c R ^ i c p i c Δ λ + n p ,
For the error of the attitude quaternion considering the small angle assumption, the following equation is used:
z ¯ ˜ q = q ¯ ^ i c q ¯ c i q ¯ c = δ q ¯ i c 1 1 2 δ θ i c + n θ ,
For the error of the linear velocity, the following holds:
z ˜ v = v i c v ^ i c = μ v Δ v i . Δ t + λ ( 1 μ v ) R c i Δ v c = μ v Δ t R ^ i a ^ i × δ θ i μ v Δ t R ^ i Δ b a + λ ( 1 μ v ) R c i Δ v c + n v ,
Since the angular velocities in different coordinate frames cannot be directly subtracted, the measurement error can be indirectly obtained according to Equation (14) as follows:
z ˜ ω = δ θ i c . Δ t + n ω = Δ t μ ω R μ ω c T ω ^ i × + 1 μ ω ω ^ c × δ θ i c + 1 μ ω Δ t Δ ω c + μ ω Δ t R μ ω c T Δ ω i + n ω ,
Based on the description of X ˜ in Equation (8) and the above expansion of the measurement process, under the small angle assumption, the measurement error is reformulated as follows:
z ˜ k H k X ˜ k + n m ,
where H k is the measurement matrix, and the measurement noise is simplified as n m = n p T n θ T n v T n ω T T . Thus, H k can be recovered from Equations (22)–(26) as follows:
H k = λ I 3 × 3 0 3 × 6 B 1 0 3 × 15 B 2 0 3 × 9 1 2 I 3 × 3 0 3 × 16 0 3 × 3   B 3   0 3 × 6   B 4 0 3 × 6 μ v Δ t   R ^ i 0 3 × 4 0 3 × 9   B 5   0 3 × 3   1 μ ω Δ t I 3 × 3 μ ω Δ t R μ ω c T 0 3 × 7   12 28 ,
where B 1 = R ^ i c p i c λ × , B 2 = p ^ i c R ^ i c p i c , B 3 = λ Δ t ( 1 μ v ) R c i , B 4 = μ v Δ t R ^ i a ^ i × and B 5 = Δ t μ ω R μ ω c T ω ^ i × + 1 μ ω ω ^ c × .

3.3. Entire ICEKF Process

The entire process of the ICEKF in the k-th iteration is presented as follows:
Step 1. By calculating F d and Q d according to Equation (19), the prior covariance matrix of errors P k + 1 | k can be obtained from the following:
P k + 1 | k = F d P k | k F d + Q d ,
Step 2. The Kalman gain matrix K k is updated as follows:
S k = H k P k + 1 | k H k T + R k K k = P k + 1 | k H k T S k 1 ,
where R k is the measurement noise matrix.
Step 3. The current state X ^ k + 1 | k + 1 = X ^ k + 1 | k + X ˜ ^ k is calculated according to X ˜ ^ k = K k z ˜ k , where z ˜ k is obtained via Equation (27).
Step 4. The posterior covariance matrix of errors P k + 1 | k + 1 is updated, and Step 1 is carried out again according to the following:
P k + 1 | k + 1 = ( I 28 × 28 K k H k ) P k + 1 | k ( I 28 × 28 K k H k ) T + K k R k K k T ,
During Step 2, the measurement error model of the visual measurement can be preestablished as described in [25,26]. While updating the attitude during Step 3, the angular error of rotation in X ˜ ^ k is achieved with the small angle assumption. Therefore, the quaternion form of the attitude expectation q ¯ ^ k + 1 must be recovered as follows [23]:
δ q ^ k 1 2 δ θ ^ k q ¯ ^ k + 1 = 1 δ q ^ k T δ q ^ k , δ q ^ k T T   if   δ q ^ k T δ q ^ k 1     1 1 + δ q ^ k T δ q ^ k 1 , δ q ^ k T T   if   δ q ^ k T δ q ^ k > 1   ,
For a clearer view of the entire process, the data flow during the k-th iteration is illustrated by Figure 3.

4. Nonlinear Observability Analysis

The nonlinear system with an ICEKF can function properly if it has local weak observability, as described in [27]. To simplify the observability analysis with angular velocity layer fusion, a pair of virtual coupled measurement variables are defined as angular velocity ω m i c with bias b ω i c , which can be regarded as the yields obtained from correcting ω m i and b ω i with visual measurement. Thus, referring to the observation system modeling in [16], the nonlinear system representing the fusion measurement results can be expressed as follows:
X ˙ = p ˙ i c v ˙ c v ˙ i q ¯ ˙ i c q ¯ ˙ i ω ˙ c ω ˙ i b ˙ a i b ˙ ω i λ ˙ = μ v v i + λ ( 1 μ v ) R c i v c 0 3 × 1 R i b a i g 1 2 Ξ q ¯ ˙ i c b ω i c 1 2 Ξ q ¯ ˙ i b ω i 0 3 × 1 0 3 × 1 0 3 × 1 0 3 × 1 0 f 0 + 0 3 × 3 0 3 × 3 0 3 × 3 0 4 × 3 1 2 Ξ q ¯ ˙ i 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 f 1 ω m i + 0 3 × 3 0 3 × 3 0 3 × 3 1 2 Ξ q ¯ ˙ i c 0 4 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 f 2 ω m i c + 0 3 × 3 0 3 × 3 R i 0 4 × 3 0 4 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 3 × 3 0 f 3 a m i ,
where for a general unit quaternion q ¯ , there is the following:
q ¯ ˙ = 0.5 Ξ q ¯ ˙ ω Ξ q ¯ = q T q 0 I 3 q × ,
The measurement functions are designed as h X ˙ = h 1 T , , h 8 T T , with h 1 = ( p i c R i c p i c ) λ , h 2 = q ¯ i c , h 3 = q ¯ i , h 4 = q ¯ i c T q ¯ i c , h 5 = q ¯ i T q ¯ i , h 6 = v c , h 7 = ω c , and h 8 = ω i .
According to the detailed deduction in Appendix C, the observability matrix of the system is constructed with the Lie derivative as follows:
Ω = L 0 h 1 L 0 h 2 L 0 h 3 L 0 h 4 L 0 h 5 L 0 h 6 L 0 h 7 L 0 h 8 L f 0 1 h 1 L f 0 1 h 3 L f 0 2 h 1 L f 3 1 L f 0 1 h 1 = U 1 p i c 0 v c 0 v i U 2 q ¯ i c 0 q ¯ i 0 ω c 0 ω i 0 b a 0 b ω U 3 λ 0 0 0 U 4 0 0 0 0 0 0 0 0 0 0 U 5 0 0 0 0 0 0 0 0 U 6 0 0 0 0 0 0 0 0 0 0 U 6 0 0 0 0 0 0 U 8 0 0 0 0 0 0 0 0 0 0 0 0 0 U 9 0 0 0 0 0 0 0 0 0 0 U 10 0 0 0 0 U 11 U 12 G [ 9 , 4 ] 0 0 0 G [ 9 , 8 ] 0 G [ 9 , 10 ] 0 0 0 0 0 U 13 0 0 0 0 0 0 0 G [ 11 , 4 ] G [ 11 , 5 ] 0 0 U 15 G [ 11 , 9 ] G [ 11 , 10 ] 0 0 0 G [ 12 , 4 ] G [ 12 , 5 ] 0 0 0 0 U 16 38 × 30 ,
where each column corresponds to the entries in the state vector of the ICEKF, the matrices G with indices represent blocks that are irrelevant to the rank analysis, and the matrices U with subscripts are blocks contributing to the column rank of Ω , as follows: U 1 = I 3 λ , U 4 , U 5 = I 4 , U 8 , U 9 , U 10 = I 3 , U 12 = λ μ v I 3 , U 14 = 0.5 Ξ q ¯ ˙ i , U 15 = λ μ v R i , and U 16 = U R i .
To prove that Ω has full rank, block Gaussian elimination is applied. The rows of blocks can be rearranged so that only one block in each row is allowed to determine whether the corresponding column of blocks has full column rank. Following this process, all the block columns in Ω , with the exception of the last one corresponding to U 16 , have full column rank when λ , μ v are nonzero.
Expanding the rotation matrix R i as three columns yields the following:
L f 3 1 L f 0 1 h 1 = λ μ v R i = λ μ v r x r y r z ,
An explicit form is achieved by inspecting the Lie derivative of Equation (36) as U 16 = μ v r x T r y T r z T T 9 × 1 . As described in [16], if the linear acceleration was excited on at least one axis, one of r x , r y , or r z would be a nonzero vector.
In accordance with the analysis above, it can be demonstrated that for the visual–inertial system with the ICEKF described in this paper, when λ , μ v are nonzero and the IMU is excited in any direction, the observability matrix has full column rank, which means that the system has local weak observability [27]. The above conditions are readily fulfilled during practical applications.

5. Simulation and Experiments

Three-dimensional motion simulation and dataset experiments are conducted in this section to analyze the performance of the ICEKF.

5.1. Simulation

Assuming that the coordinate frames of the IMU and the camera are aligned, the pose transformation between them can be omitted. To observe the convergence process, we deliberately assign random initial values to the prior covariance matrix P k | k . The starting point is [1,0,0]. The covariance matrix of measurement error R k is designed as a skew-symmetric matrix with small random values. Gaussian noise is introduced to all the virtual measurement values. The coefficients are set as μ v = 0.5 , μ ω = 0.5 , and λ = 1 . The virtual IMU-camera rig is directed to move along a virtual helical trajectory, as described by the following equation:
x = cos 1 2 π t y = sin 1 2 π t z = t ,
The three-dimensional position curves of the ICEKF and the ground truth are shown in Figure 4, which reveals that the estimated results align closely with the true values. The position errors of the ICEKF estimation against the ground truth of the IMU-camera rig along the three axes are depicted in Figure 5, and Figure 6 shows the orientation errors. The curve of λ is shown in Figure 7.
The norm errors between the ground truth and the simulation results, including the statistical values of the RMSE (root mean square error), mean error, and STD (standard deviation) for both coupled translation p i c and attitude q ¯ i c across all three axes, are detailed in Table 2. The errors of the attitude are obtained by converting q ¯ i c to roll-pitch-yaw.
The curves and numerical statistics show that despite the randomized P k | k and R k alongside a high yaw angle velocity disturbing the initial convergence, the ICEKF ultimately converges without much specific parameter tuning. This indicates that the ICEKF possesses strong robustness while yielding reliable motion estimates.
To further test the filter’s ability to converge, an initial state estimate set is designed which conducts the virtual rig starting from the different three-dimensional points to the actual desired starting point [1,0,0]. The initial estimate set, varying from [0,−1,−1] to [1,0,0], and the converging process are illustrated by Figure 8, which depicts how even when facing uncertain initial estimates, the filter can converge with a decent performance.

5.2. Dataset Experiment

To inspect the effectiveness of the algorithm in real-world scenarios, this paper employs the EuRoC ROOM01 and MainHall02 datasets [28] for validation. Since this study investigates the performance of the loosely coupled visual–inertial algorithm itself instead of visual odometry, one of the state-of-the-art visual SLAM algorithms, monocular ORB-SLAM V3 [29], serves as the visual black-box approach. Given that this algorithm has been confirmed to exhibit exceptional ATE performance, this paper focuses on RPE comparisons of different algorithms by employing EVO tools [30] to analyze trajectories. The ICEKF operates with the IMU data at 200 Hz, and meanwhile the visual measurement runs at 20 Hz. To facilitate the comparison, each frame from the visual measurement with ORB-SLAM is considered a keyframe.
The coefficients are μ v = 0.9 and μ ω = 0.5 , and the initial scale factor is determined based on the prior results of the visual algorithm as λ = 2.04 . Given that the hardware setup and scenario are fixed in the dataset, the initial covariance matrix P k | k of the ICEKF can be easily adjusted via multiple runs. In the first run, the initial P k | k is selected randomly, and eventually stabilizes as the algorithm progresses. The final updated P k | k is utilized to run the scenario test again, which greatly increases the convergence speed and provides high resilience against noise. For applications in unknown environments, initial covariance estimation can be conducted in a similar scenario to further improve convergence efficiency.
Dataset experiments with monocular ORB-SLAM, its IMU variant, and the monocular MSCKF with an IMU were performed. The entire experiment processes are shown in Figure 9 and Figure 10.
The contrast between the three-dimensional position output of the ICEKF and the ground truth is shown in Figure 11 and Figure 12. The three-dimensional position errors and the orientation errors between the output of the ICEKF and the ground truth after applying alignment using Umeyama’s method [30] from the two dataset tests are shown in Figure 13, Figure 14, Figure 15 and Figure 16.
Trajectory analysis using EVO is conducted, in which the ICEKF with the results from ORB-SLAM and its IMU variant, as well as the data obtained from the monocular MSCKF [31], are compared against the ground truth, with the statistical RPE results presented in Table 3 and Table 4.
The comparative results indicate that the ICEKF ensures real-time measurement through high-frequency IMU updates and achieves an accuracy comparable to that of the monocular ORB-SLAM and its IMU variant while outperforming the monocular MSCKF. Although the trajectory does not reach the high accuracy of ORB-SLAM-based methods owing to the lack of posterior batch optimization processing, the computational complexity of the coupled part of the algorithm is only O n , which benefits localization applications. Moreover, the algorithm framework can be directly utilized with other localization algorithms to improve their measurement stability in complex environments.
To assess the robustness of the ICEKF with regard to leap noise from visual measurements, this study incorporates random stimulations with an amplitude of 0.5 m into the visual measurement result to imitate harsh visual measurement failure. Figure 17 shows a comparison of the partial trajectory from the ICEKF against the corrupted visual measurement. This indicates that the ICEKF can significantly mitigate the impact of sporadic instability from visual measurements.

6. Conclusions

This study introduces a novel weighted loosely coupled algorithm for fusing data from IMUs and visual measurements and demonstrates its observability. The algorithm, of which the coupled part possesses a computational complexity of O n , retains the high-frequency update capability inherent to the EKF framework, thus enabling high-accuracy active localization. Both simulation and dataset tests reveal that the ICEKF achieves deep integration of the IMU and the visual data on the velocity layer throughout the updating process, which benefits the localization performance. By conveniently tuning the weights assigned to different data sources, the framework improves both the fusion accuracy and the resilience to abrupt noise. In future studies, we will aim to apply the approach across multiple devices by analyzing the sensitivity of the coupling coefficients in challenging real-life scenarios.

Author Contributions

Conceptualization, Z.L. and P.T.; methodology, C.L.; software, Z.L. and T.W.; validation, C.L.; formal analysis, C.L.; investigation, Z.L. and P.T.; resources, Z.L. and P.T.; data curation, C.L. and T.W.; writing—original draft preparation, Z.L. and C.L.; writing—review and editing, T.W. and P.T.; visualization, Z.L. and C.L.; supervision, P.T.; project administration, Z.L. and P.T.; funding acquisition, T.W. All authors have read and agreed to the published version of the manuscript.

Funding

This research was sponsored by the National Key Research and Development Program of China [Grant number 2022YFC3320503] and the Foundation for Innovative Research Groups of the National Natural Science Foundation of China [Grant number 12221002], funded by Tao Wang.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The source code presented in this study is available upon request from the corresponding author.

Acknowledgments

The authors acknowledge the anonymous reviewers for their helpful comments on the manuscript.

Conflicts of Interest

The authors declare no conflicts of interest.

Appendix A

Assuming that the rotation q ¯ is accomplished during a certain period and that the corresponding body angular velocity is ω , q ¯ ˙ = 1 2 q ¯ ω ¯ [30], where ω ¯ = [ 0 , ω ] . The μ -th power of q ¯ is written as q ¯ μ , which is a unit quaternion that denotes scaling the rotation angle around the virtual axis with μ 0 , 1 [32].
A three-element vector p rotating according to q ¯ is written as q ¯ p ¯ q ¯ R q ¯ p with p ¯ = 0 , p T T .
For general quaternions, the error between the measurement and the expectation is defined as δ q ¯ from q ¯ = q ¯ ^ δ q ¯ . The derivative form is δ q ¯ ˙ = q ¯ ^ q ¯ ˙ q ¯ ^ ˙ δ q ¯ [16].
According to R δ q ¯ I 3 + δ θ × [23], there is R q ¯ = R ^ q ¯ ^ R δ q ¯ R ^ q ¯ ^ I 3 + δ θ × .
Assuming that there are two quaternions, q ¯ = q 0 , q T T and p ¯ = p 0 , p T T , the following equation exists:
q ¯ p ¯ = q 0 q T q q 0 I 3 + q × p ¯ = p 0 p T p p 0 I 3 + p × q ¯ .

Appendix B

The following lemmas are proposed in this paper for the coupling process on the velocity layer.
Lemma A1.
For the IMU-camera measurement system in Figure 1, let q ¯ w c be the equivalent rotation of q ¯ w c described in the IMU frame. Assuming that q ¯ w i c , q ¯ w i and q ¯ w c are unit quaternions with q ¯ w i c = q ¯ w c = q ¯ w i , q ¯ w i c = q ¯ w i μ ω q ¯ w c 1 μ ω , where μ ω [ 0 , 1 ] .
Proof of Lemma A1.
Rewriting the quaternions into axis-angle form [32] yields q ¯ w i c = [ cos θ i c , r i c sin θ i c ] , q ¯ w c = [ cos θ c , r c sin θ c ] , and q w i = [ cos θ i , r i sin θ i ] , with θ c = θ i = θ i c = θ , and unit vectors r i c = r c = r i = r .
Inspecting the exponential form of quaternions [33], we have the following:
q ¯ w c ( 1 μ ω ) = exp ( 1 μ ω ) log q ¯ w c = exp ( 1 μ ω ) [ 0 , θ r ] = cos ( 1 μ ω ) θ , r sin ( 1 μ ω ) θ ,
q ¯ w i μ ω = exp μ ω log q ¯ w i = exp μ ω [ 0 , θ r ] = cos μ ω θ , r sin μ ω θ .
Three conditions are discussed as follows:
  • When μ ω = 1 , q ¯ w c 0 = 1 , 0 , and q ¯ w i 1 = cos θ , r sin θ , q ¯ w c 0 q ¯ w i 1 = cos θ , r sin θ = q ¯ w i c .
  • When μ ω = 0 , similarly, q ¯ w c 1 q ¯ w i 0 = q ¯ w i c .
  • When μ ω ( 0 , 1 ) , there is the following:
q ¯ w i μ ω q ¯ w c ( 1 μ ω ) = cos ( 1 μ ω ) θ , r sin ( 1 μ ω ) θ cos μ ω θ , r sin μ ω θ = cos ( 1 μ ω ) θ cos μ ω θ sin ( 1 μ ω ) θ sin μ ω θ r r , r cos ( 1 μ ω ) θ sin μ ω θ + r cos μ ω θ sin ( 1 μ ω ) θ + r × r sin ( 1 μ ω ) θ sin μ ω θ = cos θ ,   r sin θ = q ¯ w i c .
Therefore, for all three conditions, q ¯ w i c = q ¯ w i μ ω q ¯ w c 1 μ ω holds. □
Lemma A2.
Letting μ 0 , 1 , for the derivative of the μ -th power of a general unit quaternion q ¯ , d d t q ¯ μ = 1 2 q ¯ μ μ ω ¯ .
Proof of Lemma A2.
Referring to Equation (314) in [32] (pp. 483), for a general quaternion in the space-reference inertia axes, namely, the body frame in this paper, d d t q ¯ = 1 2 q ¯ ω ¯ .
Referring to Equation (15) in [34] (pp. 168), for a unit quaternion q ¯ denoting rotation α around unit vector r , d d t α = ω r exists.
To scale the rotation angle with a coefficient μ 0 , 1 , since the vector r remains unchanged, d d t μ α = μ ω r . Thus, d d t q ¯ μ = 1 2 q ¯ μ μ ω ¯ holds. □

Appendix C

The Lie derivative of the measurement function h x with respect to the vector f x is written as follows:
L f h x = f h x = h x x f x .
The k -th order Lie derivative of h x with respect to f x is written as follows:
L f k h x = L f k 1 h x x f x .
Specifically, the zeroth-order Lie derivative of h x is the measurement function itself, namely L 0 h x h x .
By deducting the gradient of the zeroth-order Lie derivatives of the measurement function among h X ˙ = h 1 T , , h 8 T T , we obtain the following:
L 0 h 1 = I 3 λ       0 3 × 3       0 3 × 3       λ Γ q ¯ i c ,       p i c       0 3 × 4       0 3 × 3       0 3 × 3       0 3 × 3 0 3 × 3       p i c R i c p i c L 0 h 2 = 0 4 × 3       0 4 × 3       0 4 × 3       I 4       0 4 × 4       0 4 × 3       0 4 × 3       0 4 × 3       0 4 × 3       0 4 × 1 L 0 h 3 = 0 4 × 3       0 4 × 3       0 4 × 3       0 4 × 4       I 4       0 4 × 3       0 4 × 3       0 4 × 3       0 4 × 3       0 4 × 1 L 0 h 4 = 0 1 × 3       0 1 × 3       0 1 × 3       2 q ¯ i c T       0 1 × 4       0 1 × 3       0 1 × 3       0 1 × 3       0 1 × 3       0 L 0 h 5 = 0 1 × 3       0 1 × 3       0 1 × 3       0 1 × 4       2 q ¯ i T       0 1 × 3       0 1 × 3       0 1 × 3       0 1 × 3       0 L 0 h 6 = 0 3 × 3       I 3       0 3 × 3       0 3 × 4       0 3 × 4       0 3 × 3       0 3 × 3       0 3 × 3       0 3 × 3       0 3 × 1 L 0 h 7 = 0 3 × 3       0 3 × 3       0 3 × 3       0 3 × 4       0 3 × 4       I 3       0 3 × 3       0 3 × 3       0 3 × 3       0 3 × 1 L 0 h 8 = 0 3 × 3       0 3 × 3       0 3 × 3       0 3 × 4       0 3 × 4       0 3 × 3       I 3       0 3 × 3       0 3 × 3       0 3 × 1 .
The first-order Lie derivative of h 1 with respect to f 0 and its gradient are as follows:
L f 0 1 h 1 = L 0 h 1 f 0 = λ μ v v i + λ ( 1 μ v ) R c i v c + 1 2 λ Γ q ¯ i c ,   p i c Ξ q ¯ ˙ i c b ω i .
L f 0 1 h 1 = 0 3 × 3       λ 2 ( 1 μ v ) R c i       λ μ v I 3       G [ 9 , 4 ]       0 3 × 4       0 3 × 3       0 3 × 3       G [ 9 , 8 ]       0 3 × 3       G [ 9 , 10 ]
The first-order Lie derivative of h 3 with respect to f 0 and its gradient are as follows:
L f 0 1 h 3 = L 0 h 3 f 0 = 0.5 Ξ q ¯ ˙ i b ω i .
L f 0 1 h 3 = 0 4 × 3 0 4 × 3 0 4 × 3 0 4 × 4 0 4 × 4 I 3 0 4 × 3 0 4 × 3 0.5 Ξ q ¯ ˙ i 0 4 × 1
The second-order Lie derivative of h 1 with respect to f 0 and its gradient are as follows:
L f 0 2 h 1 = L f 0 1 h 1 f 0 = λ μ v R i b a i g + 1 2 G [ 9 , 4 ] Ξ q ¯ ˙ i c b ω i .
L f 0 2 h 1 = 0 3 × 3       0 3 × 3       0 3 × 3       G [ 11 , 4 ]       G [ 11 , 5 ]       0 3 × 3       0 3 × 3       λ μ v R i G [ 11 , 9 ] G [ 11 , 10 ]
The second-order Lie derivative of h 1 with respect to f 0 as well as f 3 and its gradient are as follows:
L f 3 1 L f 0 1 h 1 = L f 0 1 h 1 f 3 = λ μ v R i = L f 3 , 1 1 L f 0 1 h 1     L f 3 , 2 1 L f 0 1 h 1     L f 3 , 3 1 L f 0 1 h 1 3 × 3 .
L f 3 1 L f 0 1 h 1 = L f 3 , 1 1 L f 0 1 h 1 L f 3 , 2 1 L f 0 1 h 1 L f 3 , 3 1 L f 0 1 h 1 = 0 9 × 3       0 9 × 3       0 9 × 3       G [ 12 , 4 ]       G [ 12 , 5 ]       0 9 × 3       0 9 × 3       0 9 × 3       0 9 × 3       U R i 9 × 30

References

  1. Servières, M.; Renaudin, V.; Dupuis, A.; Antigny, N. Visual and Visual-Inertial SLAM: State of the Art, Classification, and Experimental Benchmarking. J. Sens. 2021, 2021, 2054828. [Google Scholar] [CrossRef]
  2. He, M.; Zhu, C.; Huang, Q.; Ren, B.; Liu, J. A review of monocular visual odometry. Vis. Comput. 2020, 36, 1053–1065. [Google Scholar] [CrossRef]
  3. Namgung, H.; Kim, J.S. Collision risk inference system for maritime autonomous surface ships using COLREGs rules compliant collision avoidance. IEEE Access 2019, 9, 7823–7835. [Google Scholar] [CrossRef]
  4. Lin, Y.; Gao, F.; Qin, T.; Gao, W.; Liu, T.; Wu, W.; Yang, Z.; Shen, S. Autonomous aerial navigation using monocular visual-inertial fusion. J. Field Robot. 2018, 35, 23–51. [Google Scholar] [CrossRef]
  5. Nemec, D.; Šimák, V.; Janota, A.; Hruboš, M.; Bubeníková, E. Precise localization of the mobile wheeled robot using sensor fusion of odometry, visual artificial landmarks and inertial sensors. Robot. Auton. Syst. 2019, 112, 168–177. [Google Scholar] [CrossRef]
  6. Li, Z.; You, B.; Ding, L.; Gao, H.; Huang, F. Trajectory Tracking Control for WMRs with the Time-Varying Longitudinal Slippage Based on a New Adaptive SMC Method. Int. J. Aerosp. Eng. 2019, 2019, 4951538. [Google Scholar] [CrossRef]
  7. Namgung, H. Local route planning for collision avoidance of maritime autonomous surface ships in compliance with COLREGs rules. Sustainability 2021, 14, 198. [Google Scholar] [CrossRef]
  8. Alatise, M.B.; Hancke, G.P. A review on challenges of autonomous mobile robot and sensor fusion methods. IEEE Access 2020, 8, 39830–39846. [Google Scholar] [CrossRef]
  9. Tonini, A.; Castelli, M.; Bates, J.S.; Lin, N.N.N.; Painho, M. Visual-Inertial Method for Localizing Aerial Vehicles in GNSS-Denied Environments. Appl. Sci. 2024, 14, 9493. [Google Scholar] [CrossRef]
  10. Hou, Z.; Wang, R. A Loosely-Coupled GNSS-Visual-Inertial Fusion for State Estimation Based on Optimation. In Proceedings of the 2021 IEEE 3rd International Conference on Frontiers Technology of Information and Computer (ICFTIC), Greenville, SC, USA, 12–14 November 2021; pp. 163–168. [Google Scholar]
  11. Talebi, S.P.; Mandic, D.P. On the Dynamics of Multiagent Nonlinear Filtering and Learning. In Proceedings of the 2024 IEEE 34th International Workshop on Machine Learning for Signal Processing (MLSP), London, UK, 22–25 September 2024; pp. 1–6. [Google Scholar]
  12. He, X.; Li, B.; Qiu, S.; Liu, K. Visual–Inertial Odometry of Structured and Unstructured Lines Based on Vanishing Points in Indoor Environments. Appl. Sci. 2024, 14, 1990. [Google Scholar] [CrossRef]
  13. Sun, Z.; Gao, W.; Tao, X.; Pan, S.; Wu, P.; Huang, H. Semi-Tightly Coupled Robust Model for GNSS/UWB/INS Integrated Positioning in Challenging Environments. Remote Sens. 2024, 16, 2108. [Google Scholar] [CrossRef]
  14. Gopaul, N.S.; Wang, J.; Hu, B. Loosely coupled visual odometry aided inertial navigation system using discrete extended Kalman filter with pairwise time correlated measurements. In Proceedings of the 2017 Forum on Cooperative Positioning and Service (CPGPS), Harbin, China, 19–21 May 2017; pp. 283–288. [Google Scholar]
  15. Weiss, S.M. Vision Based Navigation for Micro Helicopters. Ph.D. Thesis, ETH Zurich, Zurich, Switzerland, 2012. [Google Scholar]
  16. Kelly, J.; Sukhatme, G.S. Visual-inertial sensor fusion: Localization, mapping and sensor-to-sensor self-calibration. Int. J. Robot. Res. 2011, 30, 56–79. [Google Scholar] [CrossRef]
  17. Weiss, S.; Siegwart, R. Real-time metric state estimation for modular vision-inertial systems. In Proceedings of the 2011 IEEE International Conference on Robotics and Automation, Shanghai, China, 9–13 May 2011; pp. 4531–4537. [Google Scholar]
  18. Achtelik, M.W.; Weiss, S.; Chli, M.; Dellaerty, F.; Siegwart, R. Collaborative stereo. In Proceedings of the 2011 IEEE/RSJ International Conference on Intelligent Robots and Systems, San Francisco, CA, USA, 25–30 September 2011; pp. 2242–2248. [Google Scholar]
  19. Brossard, M.; Bonnabel, S.; Barrau, A. Invariant Kalman filtering for visual inertial SLAM. In Proceedings of the 2018 21st International Conference on Information Fusion (FUSION), Cambridge, UK, 10–13 July 2018; pp. 2021–2028. [Google Scholar]
  20. Sun, W.; Li, Y.; Ding, W.; Zhao, J. A Novel Visual Inertial Odometry Based on Interactive Multiple Model and Multi-state Constrained Kalman Filter. IEEE Trans. Instrum. Meas. 2023, 73, 5000110. [Google Scholar] [CrossRef]
  21. Fornasier, A.; Ng, Y.; Mahony, R.; Weiss, S. Equivariant filter design for inertial navigation systems with input measurement biases. In Proceedings of the 2022 International Conference on Robotics and Automation (ICRA), Philadelphia, PA, USA, 23–27 May 2022; pp. 4333–4339. [Google Scholar]
  22. van Goor, P.; Mahony, R. An equivariant filter for visual inertial odometry. In Proceedings of the 2021 IEEE International Conference on Robotics and Automation (ICRA), Xi’an, China, 30 May–5 June 2021; pp. 14432–14438. [Google Scholar]
  23. Trawny, N.; Roumeliotis, S.I. Indirect Kalman Filter for 3D Attitude Estimation; Technical Report; University of Minnesota, Department of Computer Science and Engineering: Minneapolis, MN, USA, 2005; Volume 2. [Google Scholar]
  24. Maybeck, P. Stochastic Models, Estimation, and Control; Academic Press: Cambridge, MA, USA, 1982. [Google Scholar]
  25. Beder, C.; Steffen, R. Determining an initial image pair for fixing the scale of a 3d reconstruction from an image sequence. In Proceedings of the Joint Pattern Recognition Symposium, Berlin, Germany, 12–14 September 2006; pp. 657–666. [Google Scholar]
  26. Eudes, A.; Lhuillier, M. Error propagations for local bundle adjustment. In Proceedings of the 2009 IEEE Conference On Computer Vision and Pattern Recognition, Miami, FL, USA, 20–25 June 2009; pp. 2411–2418. [Google Scholar]
  27. Hermann, R.; Krener, A. Nonlinear controllability and observability. IEEE Trans. Autom. Control 1977, 22, 728–740. [Google Scholar] [CrossRef]
  28. Burri, M.; Nikolic, J.; Gohl, P.; Schneider, T.; Rehder, J.; Omari, S.; Achtelik, M.W.; Siegwart, R. The EuRoC micro aerial vehicle datasets. Int. J. Robot. Res. 2016, 35, 1157–1163. [Google Scholar] [CrossRef]
  29. Campos, C.; Elvira, R.; Rodríguez, J.J.G.; Montiel, J.M.; Tardós, J.D. Orb-slam3: An accurate open-source library for visual, visual–inertial, and multimap slam. IEEE Trans. Robot. 2021, 37, 1874–1890. [Google Scholar] [CrossRef]
  30. Grupp, M. Evo: Python Package for the Evaluation of Odometry and SLAM. Available online: https://github.com/MichaelGrupp/evo (accessed on 9 December 2024).
  31. Li, M.; Mourikis, A.I. High-precision, consistent EKF-based visual-inertial odometry. Int. J. Robot. Res. 2013, 32, 690–711. [Google Scholar] [CrossRef]
  32. Shuster, M.D. A survey of attitude representations. Navigation 1993, 8, 439–517. [Google Scholar]
  33. Dam, E.B.; Koch, M.; Lillholm, M. Quaternions, Interpolation and Animation; Datalogisk Institut, Københavns Universitet: Copenhagen, Denmark, 1998; Volume 2. [Google Scholar]
  34. Gelman, H. A note on the time dependence of the effective axis and angle of rotation. J. Res. Natl. Bur. Stand. 1971, 75, 165–171. [Google Scholar] [CrossRef]
Figure 1. Relationships of the coordinate frames in the ICEKF.
Figure 1. Relationships of the coordinate frames in the ICEKF.
Applsci 15 00989 g001
Figure 2. Relationships among the variables in the ICEKF state vector.
Figure 2. Relationships among the variables in the ICEKF state vector.
Applsci 15 00989 g002
Figure 3. The data flow of the variables in the ICEKF.
Figure 3. The data flow of the variables in the ICEKF.
Applsci 15 00989 g003
Figure 4. Three-dimensional position curves of the simulation.
Figure 4. Three-dimensional position curves of the simulation.
Applsci 15 00989 g004
Figure 5. Position error of the simulation.
Figure 5. Position error of the simulation.
Applsci 15 00989 g005
Figure 6. Orientation error of the simulation.
Figure 6. Orientation error of the simulation.
Applsci 15 00989 g006
Figure 7. Visual scale of the simulation.
Figure 7. Visual scale of the simulation.
Applsci 15 00989 g007
Figure 8. The initial estimate set and the converging process.
Figure 8. The initial estimate set and the converging process.
Applsci 15 00989 g008
Figure 9. Dataset experiments (ROOM01): (a) monocular ORB-SLAM, (b) monocular ORB-SLAM with IMU, and (c) monocular MSCKF.
Figure 9. Dataset experiments (ROOM01): (a) monocular ORB-SLAM, (b) monocular ORB-SLAM with IMU, and (c) monocular MSCKF.
Applsci 15 00989 g009
Figure 10. Dataset experiments (MainHall02): (a) monocular ORB-SLAM, (b) monocular ORB-SLAM with IMU, and (c) monocular MSCKF.
Figure 10. Dataset experiments (MainHall02): (a) monocular ORB-SLAM, (b) monocular ORB-SLAM with IMU, and (c) monocular MSCKF.
Applsci 15 00989 g010
Figure 11. Position output of the ICEKF and the ground truth (ROOM01).
Figure 11. Position output of the ICEKF and the ground truth (ROOM01).
Applsci 15 00989 g011
Figure 12. Position output of the ICEKF and the ground truth (MainHall02).
Figure 12. Position output of the ICEKF and the ground truth (MainHall02).
Applsci 15 00989 g012
Figure 13. Position error between the ICEKF and the ground truth (ROOM01).
Figure 13. Position error between the ICEKF and the ground truth (ROOM01).
Applsci 15 00989 g013
Figure 14. Orientation error between the ICEKF and the ground truth (ROOM01).
Figure 14. Orientation error between the ICEKF and the ground truth (ROOM01).
Applsci 15 00989 g014
Figure 15. Position error between the ICEKF and the ground truth (MainHall02).
Figure 15. Position error between the ICEKF and the ground truth (MainHall02).
Applsci 15 00989 g015
Figure 16. Orientation error between the ICEKF and the ground truth (MainHall02).
Figure 16. Orientation error between the ICEKF and the ground truth (MainHall02).
Applsci 15 00989 g016
Figure 17. Comparison of the partial trajectory from the ICEKF against the visual measurement with leap noise.
Figure 17. Comparison of the partial trajectory from the ICEKF against the visual measurement with leap noise.
Applsci 15 00989 g017
Table 1. Coordinate frames and notations in the ICEKF.
Table 1. Coordinate frames and notations in the ICEKF.
SymbolDescription
wfixed world coordinate frame
icoordinate frame attached to the IMU
ccoordinate frame attached to the camera
iccoordinate frame attached to the IMU-aided camera system
x B A x represents a general viable vector, A is the coordinate frame attached to the vector, and B is the reference frame; for example, p w c denotes the linear translation of the camera with the frame c, measured with respect to the world frame w
p translation vector of rigid bodies along 3 axes, of which the quasi-quaternion description is p ¯ = [ 0 , p T ] T
q ¯ unit quaternion according to the Hamilton notation [16], written as q ¯ = [ q 0 , q 1 , q 2 , q 3 ] T = [ q 0 , q T ] T
q ¯ conjugate quaternion of q ¯ ,   and   q ¯ q ¯ = 1
R rotation matrix converted from q ¯ ,   such   as   R w i = R q ¯ w i
x × skew-symmetric matrix of x ,   and   x × y = x y × [23]
n white Gaussian noise vector with zero mean and covariance σ 2
g gravity vector in the world frame
Table 2. Norm errors of the translation and attitude between the ground truth and the simulation results.
Table 2. Norm errors of the translation and attitude between the ground truth and the simulation results.
Translation RMSETranslation Mean ErrorTranslation STDAttitude RMSEAttitude Mean ErrorAttitude STD
0.207 m0.1447 m0.1408 m0.1684 rad0.1348 rad0.1008 rad
Table 3. Norm errors of the translations between the ground truth and the results of the dataset experiments (ROOM01).
Table 3. Norm errors of the translations between the ground truth and the results of the dataset experiments (ROOM01).
Translation RMSETranslation Mean ErrorTranslation STD
ICEKF0.04153 m0.00574 m0.04112 m
Monocular ORB-SLAM V30.0393 m0.0355 m0.01678 m
Monocular ORB-SLAM V3 with IMU0.003841 m0.002973 m0.002433 m
Monocular MSCKF0.1305 m0.05366 m0.119 m
Table 4. Norm errors of the translations between the ground truth and the results of the dataset experiments (MainHall02).
Table 4. Norm errors of the translations between the ground truth and the results of the dataset experiments (MainHall02).
Translation RMSETranslation Mean ErrorTranslation STD
ICEKF0.08922 m0.009765 m0.08869 m
Monocular ORB-SLAM V30.735 m0.533 m0.506 m
Monocular ORB-SLAM V3 with IMU0.001366 m0.004981 m0.01272 m
Monocular MSCKF0.2689 m0.09905 m0.25 m
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Liu, C.; Wang, T.; Li, Z.; Tian, P. A Novel Real-Time Autonomous Localization Algorithm Based on Weighted Loosely Coupled Visual–Inertial Data of the Velocity Layer. Appl. Sci. 2025, 15, 989. https://doi.org/10.3390/app15020989

AMA Style

Liu C, Wang T, Li Z, Tian P. A Novel Real-Time Autonomous Localization Algorithm Based on Weighted Loosely Coupled Visual–Inertial Data of the Velocity Layer. Applied Sciences. 2025; 15(2):989. https://doi.org/10.3390/app15020989

Chicago/Turabian Style

Liu, Cheng, Tao Wang, Zhi Li, and Peng Tian. 2025. "A Novel Real-Time Autonomous Localization Algorithm Based on Weighted Loosely Coupled Visual–Inertial Data of the Velocity Layer" Applied Sciences 15, no. 2: 989. https://doi.org/10.3390/app15020989

APA Style

Liu, C., Wang, T., Li, Z., & Tian, P. (2025). A Novel Real-Time Autonomous Localization Algorithm Based on Weighted Loosely Coupled Visual–Inertial Data of the Velocity Layer. Applied Sciences, 15(2), 989. https://doi.org/10.3390/app15020989

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop