Professional Documents
Culture Documents
Rao-Blackwellized Particle Filter Using Noise Adap
Rao-Blackwellized Particle Filter Using Noise Adap
Rao-Blackwellized Particle Filter Using Noise Adap
This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020 1
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
for the importance weights, which allows the numerical variances are captured by propagating its parameters using
stability to be taken into account in the proposed al-
gorithm in the bounded input bounded output sense; 4) −
αk,j = ρj αk−1,j , (4a)
we constrain the number of fixed-point VB-iterations in
−
VB-AKF using Morozov’s discrepancy principle to relax βk,j = ρj βk−1,j , (4b)
the additional computational cost; and 5) we show that
where ρ ∈ (0, 1] , such that ρ = 1 corresponds to
the proposed method outperforms many commonly used
stationary variance and a lower value implies that the
filters via synthetic and real-world experiments.
variance is assumed to change rapidly [4], [17]. In turn,
ρ represents a forgetting factor that determines the rate
II. Problem Formulation at which the true variance value is tracked. Moreover, the
above formulation of the variance parameters ensures that
Let us consider the following fully mixing type of 2
the marginal distribution of σk,j will always be an Inv-Γ
state-space model [7]: distribution [4].
uk gk−1 (uk−1 ) Bk−1 (uk−1 ) Thus, we can factorize the joint posterior distribution
= + x + qk−1 ,
xk fk−1 (uk−1 ) Ak−1 (uk−1 ) k−1 as
(1a)
p(xk , u0:k , Σk |y1:k ) = p(xk , Σk |u0:k , y1:k ) p(u0:k |y1:k ) .
yk = hk (uk ) + Hk (uk )xk + rk , (1b) | {z } | {z }
Linear Latent
2 2
Σk = diag(σk,1 , . . . , σk,d ), (1c) (5)
Hence, the density at the prediction step is
where k = 1, 2, . . . is the time step, and qk ∼
N (0, Qk (uk )) is a Gaussian noise with covariance matrix p(xk , uk , Σk |u0:k−1 , y1:k−1 )
Qk (uk ). The state components xk ∈ Rn and uk ∈ Rm
= p(xk , uk |u0:k−1 , y1:k−1 )p(Σk |y1:k−1 ), (6)
are the linear and nonlinear (latent) parts, respectively, of
the joint state vector, and yk ∈ Rd is the measurement where
vector. However, differing from the standard fully mixing
model, here the measurement noise rk ∼ N (0, Σk ) is p(xk , uk |u0:k−1 , y1:k−1 ) =
assumed to possess a time-varying (diagonal) covariance
Z
matrix Σk , which follows a first-order Markovian model p(xk , uk |xk−1 , uk−1 )p(xk−1 |u0:k−1 , y1:k−1 )dxk−1
Σk ∼ p(Σk | Σk−1 ) [4]. For further discussion on the first-
order Markovian model, please see [4], [17]. The diagonal gk−1 uk Bk−1
=N + mk−1 ,
entries of the Σk matrix are the unknown time-varying fk−1 xk Ak−1
variances that we want to estimate. T u !
Bk−1 Bk−1 Qk−1 Qux k−1
For simplicity, we abbreviate P + . (7)
Ak−1 k−1 Ak−1 Qxu x
k−1 Qk−1
gk−1 ≜ gk−1 (uk−1 ), fk−1 ≜ fk−1 (uk−1 )
Notice that the dynamic model for variance parameters
and − −
αk,j , βk,j given by (4a)–(4b) yields an Inv-Γ PDF at the
Ak−1 ≜ Ak−1 (uk−1 ), Bk−1 ≜ Bk−1 (uk−1 ).
prediction step [18]. That is, the density p(Σk |y1:k−1 ) in
(6) is of the Inv-Γ form where the variance parameters
In turn, the transition probability density is are propagated by exponentially forgetting mechanism.
Thus, by conditioning p(xk , uk , Σk |u0:k−1 , y1:k−1 ) on uk ,
p(xk , uk , Σk |xk−1 , uk−1 , Σk−1 ) we get the following density at the prediction step:
= p(xk , uk |xk−1 , uk−1 )p(Σk |Σk−1 ), (2)
p(xk , Σk |u0:k , y1:k−1 ) = p(xk |u0:k , y1:k−1 )p(Σk |y1:k−1 )
with d
Y
p(xk , uk |xk−1 , uk−1 ) = N (xk |m− −
k , Pk )
−
Inv-Γ(σk,j 2 |αk,j −
, βk,j ), (8a)
! i=1
uk gk−1 Bk−1 where
=N + x ,Q . (3)
xk fk−1 Ak−1 k−1 k−1
T
Mk = Bk−1 Pk−1 Bk−1 + Quk−1 , (8b)
where, we assume that xk−1 ∼ N (xk−1 |mk−1 , Pk−1 ) is T
Qxu Mk−1 ,
Lk = Ak−1 Pk−1 Bk−1 + k−1 (8c)
Normal distributed with mean E{xk−1 } = mk−1 and
covariance Cov{xk−1 } = Pk−1 . Moreover, the variances m−
k = fk−1 + Ak−1 mk−1
2
(8d)
σk−1,j for j = 1, . . . , d are Inv-Γ distributed where + Lk uk − gk−1 − Bk−1 mk−1 ,
2 βk−1,j Pk− = Ak−1 Pk−1 ATk−1 + Qxk−1 − Lk Mk LTk , (8e)
σk−1,j =
αk−1,j with variance parameters are predicted by using (4b)–(4a).
is characterized by a shape parameter αk−1,j and a rate The predicted distribution is then updated to posterior dis-
parameter βk−1,j [15]. The heuristic dynamics of the tributions when new measurements arrive. Thus, applying
2 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
Bayes’ rule to the linear part in (5) yields the posterior III. The Sequential Monte Carlo Variational Bayesian
PDF Filter
p(xk , Σk |u0:k , y1:k ) To estimate the linear states and noise variances in
∝ p(yk |xk , uk , Σk )p(xk , Σk |u0:k , y1:k−1 ) (9) a prediction-update cycle, we use a variational approxi-
mation to the posterior p(xk , Σk |u0:k , y1:k ) following [4].
where More precisely, for each particle, the approximate is
p(yk |xk , uk , Σk ) = N yk |hk (uk ) + Hk (uk )xk , Σk .
(10) p(xk , Σk |u0:k , y1:k ) ≈ Ψx (xk )ΨΣ (Σk )
However, the posterior p(xk , Σk |u0:k , y1:k ) is intractable. d
Y
2
Furthermore, Bayes’ rule yields the following marginal = N (xk |mk , Pk ) Inv-Γ(σk,i |αk,i , βk,i ), (15a)
posterior PDF: i=1
where
p(u0:k |y1:k ) ∝ p(yk |u0:k , y1:k−1 )p(u0:k |y1:k−1 )
= p(yk |u0:k , y1:k−1 ) p(uk |u0:k−1 , y1:k−1 ) p(u0:k−1 |y1:k−1 ) . Σ− − − − −
k = diag(βk,1 /αk,1 , . . . , βk,d /αk,d ) (15b)
Hk Pk− HkT + Σ−
| {z }| {z }| {z }
Marginal Likelihood Marginal Dynamics Posterior at k − 1 Sk = k (15c)
At this stage, we need an updated set of latent vari- Kk = Pk− HkT Sk−1 (15d)
ables due to conditioning on uk before we evaluate m− Hk m−
mk = k + Kk yk − hk (uk ) − k (15e)
the posterior PDF by (9). For the marginal dynamics −
p(xk , uk |u0:k−1 , y1:k−1 ) we can compute it by marginal- Pk = Pk − Kk Sk KkT . (15f)
izing with respect to xk : Moreover, the noise parameters are updated for each
2
Z variance σk,j by
p(uk |u0:k−1 , y1:k−1 ) = p(xk , uk |u0:k−1 , y1:k−1 )dxk
1 −
αk,j = + αk,j (15g)
= N (uk |gk−1 + Bk−1 m− − T u
k , Bk−1 Pk Bk−1 + Qk−1 ). 2
(11)
As for the likelihood p(yk |u0:k , y1:k−1 ), we can marginal- − 1 2
βk,j = βk,j + (yk − hk (uk ) − Hk mk )d +
ize out Σk : 2
Hk Pk HkT dd
(15h)
p(yk |u0:k , y1:k−1 )
Z Z to acquire an updated covariance matrix
= p(yk , xk , Σk |u0:k , y1:k−1 )dxk dΣk
Z Z Σk = diag(βk,1 /αk,1 , . . . , βk,d /αk,d ). (15i)
= p(yk |xk , Σk , uk , y1:k−1 ) Notice that the update of noise parameters follows from
[4].
× p(xk , Σk |u0:k , y1:k−1 )dxk dΣk . (12) Hence, we iteratively minimize the KL-divergence
Under conditional independence of the measurements between the true and approximate posterior distributions
using (8a), we can evaluate the double integral in (12) [5], [4], [15]. The embedded VB-AKF uses parameters of
yielding, p(yk |u0:k , y1:k−1 ) Ψx (xk ) to estimate ΨΣ (Σk ), and corrects the parameters
Z Z of Ψx (xk ) using updated ΨΣ (Σk ) as describe by [4,
= p(yk |xk , uk , Σk ) N (xk |m−
k , Pk
−
)dxk Algorithm 1]. The resulting VB-iterations thus form the
following coordinate descent algorithm:
d
Y
− − (l−1)
× 2
Inv-Γ(σk,j |αk,j , βk,j )dΣk . (13) Ψ(l)
x = arg min J [Ψx (xk )ΨΣ (Σk )] (16a)
Ψx
j=1
(l)
Computing the integral above with respect to xk gives ΨΣ = arg min J [Ψ(l)
x (xk )ΨΣ (Σk )] (16b)
ΨΣ
p(yk |u0:k , y1:k−1 ) for l = 1, 2, . . . where J is the KL-divergence functional
Z
− − T given by, e.g., [18, (16)].
= N yk hk (uk ) + Hk mk , Hk Pk Hk + Σk
To approximate p(u0:k |y1:k ) in one prediction-update
d
Y cycle of a PF, we generate Nu ∈ Z+ samples for
2 − − latent variables uk−1 , linear mean estimate vector mk−1 ,
× Inv-Γ(σk,j |αk,j , βk,j )dΣk (14)
j=1 linear state covariance matrix Pk−1 , and noise covariance
where m− − matrix Σk−1 . As a result, Nu new samples of latent
k and Pk are given by (8d) and (8e) respectively. (i)
Hence, it remains to compute the intractable poste- variables uk are drawn from the marginal dynamics
(i) (i)
rior distribution p(u0:k |y1:k ). In the following sections, a model p(uk |u0:k−1 , y1:k−1 ) for i = 1, 2, . . . , Nu . Thus,
variational Bayesian approach is presented to estimate the we associate a VB-adaptive KF to each particle to acquire
(i) (i)
posterior PDFs corresponding to latent and linear parts of mk and Pk at each time step k with noise covariance
(i)
the state. matrix Σk .
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
4 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
satisfied before VB updates (i.e., for l = 1), (15b)–(15i) remain strictly positive. Consequently, the sum of impor-
will be executed only once if the computed residual (of tance weights will not vanish at the MC update step of
the linear part) already falls within bounds of (estimated) the PF. That is, the condition
standard deviations of the measurement
√ noise. A possible Nu
X (i)
choice for ξk in (23) is ξk = ∥ Σk ∥∞ . w̃k > 0 (34)
i=1
will be satisfied at the weight normalization step. Further-
more, if a standard re-sampling technique is used, such
B. Numerical stability of MC approximations as stratified sampling [22], we will obtain integer-valued
Finally, we show that the stability of VB approxima- random weights. That is, after re-sampling we have
tions of linear states together with time-varying measure- ∥w(i) (k)∥ < ∞ (35)
ment noise parameters can result in a numerically stable
MC approximation too. Thus, a structure is presented for the ith particle [21]. Consequently, the sampling im-
that consists of hypotheses under which the importance portance re-sampling (SIR) part of the sequential MCVB
weights remain bounded during MC updates. filter will produce bounded weights before and after the
Considering a bootstrap case of the sequential MCVB re-sampling/selection step.
filter, we can express the importance weight for each
Algorithm 1 Sequential MCVB Filter
particle given by (20) as
I NITIALIZATION
(i) (i) (i)
ln w̃k ∝ ln p(yk |u0:k , y1:k−1 ). (28) Initialize the particles, u0 ∼ p(u0 ) and set x0 ∼
(i) (i)
N (x0 , P0 ) for i = 1, . . . , Nu and draw noise vari-
For NΣ = 1, from (19), we get 2
ances form σ0,j ∼ Inv-Γ(α0,j , β0,j ), for j = 1, . . . , d.
−1
ln g(yk , Σk ) ∝ eTk Hk Pk− HkT + Σ− for t ≤ tend do
k ek (29)
MC I NTEGRATION
where we define the innovation vector ek = yk −hk (uk )− Compute (19) with Σk ∼ p(Σk |y1:k−1 ).
Hk m−k . Using Woodbury’s Inversion Lemma [20] to ex- W EIGHT C OMPUTATION
pand the inverse matrix term for linear states, and noticing (i)
Compute the importance weight w̃k using (20).
the alternate expressions for S TABILITY C HECK
−1 T −1 if (34) satisfies then
Pk = (Pk− )−1 + Hk Σ− k Hk (30) go to MC UPDATE and use (21).
else
and (i) (i)
go to MC PREDICTION and use uk|k = uk|k−1 .
−1
mk = Pk − Hk Σ−
k e k + (P − −1 −
k ) mk (31) end if
MC UPDATE
we get Re-sample Nu particles with replacement proba-
(i) (i) (i)
(i) −1 bility P(uk|k = uk|k−1 ) = wk .
ln w̃k = Const. + eTk Σ−k ek MC PREDICTION WITH VB-AKF
− −1
T
Hk mk − Pk (Pk− )−1 m−
− ek Σ k k . (32)
VB-AKF UPDATE
while (23) or l ≤ lmax do
At this stage, we state the following conditions: Condition Update Σk , mk , and Pk using (15b)–(15i).
1) the basis function hk (uk ) in the observation model is end while
a bounded, continuous function [21]; Condition 2) the MC PREDICTION
covariance E{rk rkT } < ∞, where Σk is a strictly positive Predict new set of Nu particles from (11).
definite matrix for all k ; and, Condition 3) a re-sampling VB-AKF PREDICTION
technique which produces integer-valued random weights Predict m− −
k and Pk using (8b)–(8e), and prop-
(see, e.g., [21] for the possible choices) is utilized. More- − −
agate αk , βk using (4a)–(4b).
over, from [18, Theorem 7], we know that bounded linear end for
state estimates mk−1 , noise covariance Σk−1 , and state
covariance Pk−1 matrices will be obtained before each Thus, by combining results from (34) and (35) for the
prediction–update cycle of the VB-adaptive KF. As a latent part with those detailed in [23] for the linear part,
result, the last two terms in (32) are bounded from above we get the stability of the sequential MCVB filter in the
and below. On the other hand, given hk (uk ) a bounded bounded input bounded output (BIBO) sense. Finally, we
continuous function, the second term in (32) will remain present the complete filtering mechanism as Algorithm 1.
strictly positive for a positive definite lat Σ−
k , which implies Remark 2. The S TABILITYPC HECK step is crucial for Al-
(i)
ln w̃k ∝ ln g(yk , Σk ) > −∞. (33) gorithm 1 stability as the i wi may fall below machine
epsilon due to a small overlap between the marginal prior
Hence, Conditions 1, 2 together with [18, Theorem 7] and marginal likelihood. At the expense of a delayed non-
ensure that the marginal likelihood given by (17) will linear state estimate, MC PREDICTION WITH VB-AKF
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
step in Algorithm 1 does prior editing using noise- Variance estimation results.
adaptation (see, the discussion about prior editing in [24]), 12 Est.
12
Est.
True
True
and increases the overlap at t + 1. 10
10
8
8
IV. Signal Processing Application
6
6
As a test case, the fully mixing state-space model from
[25] is used. The nonlinear state is given as 4 4
with
qk ∼ N (0, Qk = 0.01I4 ) 1) A lower MRMSE value was obtained for MCVB
σ12 , σ22 ) whenever Nu is increased.
rk ∼ N (0, Σk = diag
T 2) Algorithm 1 recovered at t+1 when (34) condition
u0 ∼ N (0, 1) with x0 = 0 0 0 . failed at t in the same simulation run.
For 100 Monte Carlo (MC) simulations, we compare 3) RBPF became unstable whenever (34) failed. Fur-
the performance of the MCVB filter with RBPF over thermore, any Σk ≤ I2 resulted in the frequent
400 time steps. For the MCVB filter, the initial noise loss of MC updates. Besides, setting high Nu for
variances σ0,i ∼ Inv-Γ(1, 1) for i = 1, 2 were set with RBPF did not improve results.
variance decreasing factors {ρ1 , ρ2 } = {0.94, 0.90}. Note 4) The stability of the MCVB filter vs. RBPF can be
that, a general requirement in [7] is that the correspond- noticed
P from Fig. 2, which presents the evolution
ing states and the measurement parts are conditionally of i wi for one particular simulation. The MCVB
Gaussian. In this experiment, e.g., we can decompose the
measurement vector such that σ12 corresponds to latent Evolution of Sum of Weights
variables whereas σ22 corresponds to linear states, and use 450
measurements corresponding to σ22 in (23). For the RBPF 400
35
were obtained from (36) for both cases. Stratified sam- 300 25
nario is considered where the measurement noise parame- 100 200 300 400 100 200 300 400
ters change abruptly as illustrated in Fig. 1. The estimated Time step - t Time step - t
variances by the sequential MCVB method are shown in Fig. 2. Weight computation by both filters for Nu = 100 case.
Fig. 1 for one particular MC run. The root-mean-squared
error (RMSE) being the performance measure (as defined
P
automatically adjusts weights, however, the i wi
in [26]) over 100 MC simulations for various Nu values computed by the RBPF does not exceed 40.
are noted in Table I. 5) The maximum number of VB-iterations lmax = 2
was selected following [4], and stored for one
particular simulation considering Nu = 1000
A. Discussion
case.l = lmax condition was satisfied for only
The important points to discuss are stated as follows: 11.4% of the total simulation time. Furthermore,
6 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
it was observed that permitting lmax > 2 did not Estimated Path Heading -- (°)
improve the filtering outcomes significantly. 100
3 4 56 150
90 2 7
100
80
V. Robot Tracking Application 8
y-position (cm)
70 50
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
Thus, we have v̇η , v̇ζ , and Ω̇ being driven by white with the state covariance matrix highlighted in (7) has
noise sequences with variances qaη , qaζ , and qΩ̇ . One components
√ √
T qaη T 4 qaζ
4
option for qaη , qaζ is Ma , where Ma is the maxi-
u
mum linear acceleration in x, y directions [30]. Here, we Q = diag , , qΩ̇
4 4
approximate Ma = 2.5 m/s2 . We have qΩ̇ = 2κσm 2
from
Qx = diag T 2 qaη , T 2 qaζ , T 2 qΩ̇
[29, pp.321], where we assume 1/κ = 6.3 as time for
the robot to travel from, e.g., 1st to 4th reference during with cross-covariance (symmetric) matrices given as
cornering, and using [29, (8.2.2-2)] we have T qaη T 3 qaζ
3
Qux = diag , , T qΩ̇ = Qux .
2 Ω̇2m 2 2
σm = (1 + 4pm − p0 ) . (44)
3 Finally, in our experiment, we consider that each land-
Here, we select pm = p0 = 0.5 and Ω̇m = 30◦ /s2 , where mark (a QR code) contributes a distinct covariance matrix
Ω̇m is the maximum rotational acceleration that the robot to the measurement model. Thus, Σk contains the variance
can experience. Notice that, −κ is the largest eigenvalue parameters of 35 QR codes. Hence, the matrices in (1b)
of the state transition matrix Φk−1 . Thus, utilizing the for the ith QR code are given as
q
T /κ ≈ 0.00794 ≪ 1/2 criterion suggested in [29, (8.2.3- (sηi − η)2 + (sζi − ζ)2
11)], we assume a diagonal state covariance matrix Q. hki (uk ) ≜ ζ
s −ζ
(50)
tan−1 sηi −η
i
D. Model formulation for MCVB Filter 0 0 0
Hki (uk ) ≜ . (51)
0 0 −1
The ACT model described above becomes linear once
the turn rate Ωk is known [28]. This crucial observation This completes the formulation of the ACT model as a
led to the selection of the turn rate as a nonlinear fully mixing state-space model for the MCVB filter and
(latent) state variable in our model formulation. Thus, RBPF implementation.
the nonlinear part in (1a) is uk = {ηk , ζk , Ωk }, and the
conditionally linear portion is xk = {vηk , vζk , ψk , Σk }. E. Results
Thus, we factorize the joint posterior PDF for the ACT
model as Estimated Path Ground Speed
{z }
Linear: VB-AKF
p(η0:k , ζ0:k , Ω0:k |y1:k ) . (45) 60 1 0.03
| {z }
Latent: PF
40 9 0.02
(t)
8 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
x-position (cm)
1.5
x-position versus ζ as (y-position) using MCVB filter is
shownqin Fig. 5. The convergence of the ground speed 1
V = vη2 + vζ2 to the applied motor speed Vk = 0.05 m/s
occurs after the robot starts maneuvering. Such behavior 0.5
is expected as no information about Vk is available for 0
robot tracking. The noise variance estimation results by 200 220 240 260 280 300 320
MCVB are also shown in Fig. 6. The variances corre- Time (sec)
sponding to more frequently observed QR codes, e.g., X-position ( ) estimation errors.
y-position (cm)
80 80 200
8
error (deg)
8
60 1 60 1 0
40 9 40 9 -200
20 15 10
1413 1211 15
E R M
20 10
1413 1211 200 220 240 260 280 300 320
0 Time (sec)
0 50 100 20 60 100
x-position (cm) x-position (cm)
Fig. 9. Estimation of ψ by (E)KF, (R)BPF, and (M)CVB vs. (T)rue.
Fig. 7. Trajectory estimation by EKF (left) and RBPF (right).
2) The estimation of η by each filter is shown in graph at 310 sec is due to camera misreading–
Fig. 8 Note that, once the estimated speed gets outlying measurements–during cornering. This has
to the true value, the η estimated by MCVB been a known issue with the camera module. How-
and RBPF gets closer to the true value. The η ever, as soon as a valid measurement is available,
estimation errors plot also highlights this phe- MCVB corrects ψ faster than RBPF (green) and
nomenon, where the absolute error by MCVB EKF (blue).
becomes smaller over time. 4) The Ω dynamics estimated by each filter during a
3) The heading (ψ ) estimation by each case is shown specific cornering scenario are shown in Fig. 10.
in Fig. 9. Notice that, during the turn at about For example, corresponding to Ωg = −15◦ /s at
305 seconds, the MCVB filter estimates the fast 311.957 sec, the MCVB read Ω = −11◦ /s at 312.3
transients particularly well, which can be observed sec, RBPF read Ω = −10◦ /s at 312.9 sec, and
by lower values in the ψ estimation error graph EKF estimated Ω = −30◦ /s at 312.8 sec. It is the
shown in red. However, the sharp dip in the red case that the (mean) error in turn rate estimation
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
10 IEEE TRANSACTIONS ON AEROSPACE AND ELECTRONIC SYSTEMS VOL. XX, No. XX XXXXX 2020
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/
This article has been accepted for publication in IEEE Transactions on Aerospace and Electronic Systems. This is the author's version which has not been fully edited and
content may change prior to final publication. Citation information: DOI 10.1109/TAES.2024.3409644
This work is licensed under a Creative Commons Attribution 4.0 License. For more information, see https://creativecommons.org/licenses/by/4.0/