Simultaneous Localization and Mapping Using A Novel Dual Quaternion Particle Filter
Simultaneous Localization and Mapping Using A Novel Dual Quaternion Particle Filter
and [11], a new distribution from the exponential family of enables flexible sensor fusion for particle update, which shows
probability density function is proposed to model uncertain promising potential for real-world SLAM scenarios.
dual quaternions and a UKF-like filtering scheme is developed.
However, its assumed measurement model is restricted to be In Sec. II, preliminaries such as pose representation using
identity thus not suitable to be directly used for SLAM. dual quaternions and the applied distribution from directional
statistics are introduced. The core part is introduced in Sec. III
Second, states noise can be multi-modal, especially in real- including particle propagation and update as well as grid-
world scenarios. This can be solved, e.g., by adapting the based mapping. In Sec. IV, evaluation with both simulation
proposed distribution to mixture models as in [12] and [13]. and experiments are presented. The work is concluded and
However, they typically rely on an approximation in the discussed finally in Sec. V.
Bayesian update step and are hard to be integrated into a
probabilistic mapping block. Fig. 1 further gives an illustration II. BACKGROUND
of this issue. The depicted results are from a dual quaternion-
based PF for overall 5 steps, where the magenta quivers and The theory of dual quaternions is essentially the combination
green curve indicate ground truth orientations and trajectory of quaternions and dual theory, which was first introduced by
respectively. During each step, the dual quaternion particles are Clifford [19]. For dual quaternion arithmetics, the readers can
first translated by t = [15, 15]T then rotated by θ = 30◦ respect refer to [20] and [16]. Unit dual quaternions, which are dual
to the last pose. Then they are propagated with uncertainty quaternions of unit length, provide a convenient method for pose
according to the distribution proposed in [10]. The system representation as well as manipulation in a similar manner as
noise is zero-centered and a larger absolute diagonal entry in the unit quaternions do for orientation. In this section, we focus
the parameter matrix Cw indicates a lower noise level. The on introducing unit dual quaternions in the context of planar
simulated measurement noise has two independently distributed motions and further the Bingham-like distribution from the
components, where the orientation part follows a zero-centered exponential family of density function for modeling uncertain
wrapped normal distribution [14] and the position measurement planar dual quaternions.
noise is Gaussian-distributed. Particles after update based on
importance sampling are denoted by the red quivers. It is A. Unit Dual Quaternions and Planar Motion
intuitive to see that the state particles tend to be multi-modal Without loss of generality, poses belonging to SE(2) can
under higher system noise which can make the approximation be assumed to incorporate orientations around z-axis of angle
to a uni-modal distribution risky during the update step. θ and positions t in (x, y)-coordinates. Thus, the orientation
Third, a SLAM system typically relies on multi-sensor quaternion can be represented by the following quaternion
fusion and possesses nonlinearity especially to the measurement
θ θ
model. This can be cleverly solved by using a progressive xq = cos + k sin . (1)
2 2
update approach [15] to the Bayesian update step as we
proposed in [16], but it still relies on the sampling and Here, k denotes the unit vector along z-axis, such that xq can
re-approximation scheme and not suitable for multi-modal be ensured to be of unit length via
noise and mapping. Moreover, for our specific application xq x∗q
scenarios where range and gyro sensors are employed, the
typical probabilistic mapping approach is to use occupancy θ θ θ θ
= cos + k sin cos − k sin
grid maps. The Monte Carlo localization approach can be 2 2 2 2
further incorporated for handling the underlying nonlinearity 2 2
θ θ
as proposed in FastSLAM [17] where Rao–Blackwellization = cos + sin = 1,
2 2
is used to reduce the high uncertainty space dimension.
But conventional PF-based SLAM systems [17], [18] lack with denoting the Hamilton product [21] and x∗q the conjugate
consideration of the nonlinear structure of the underlying of xq . Given a unit quaternion representing the aforementioned
manifold. rotation angle and axis, a vector v ∈ R2 can be rotated to
v0 accordingly through v0 = xq v x∗q . Moreover, unit
In this paper, we introduce a novel scheme of simultaneous quaternions representing planar orientations belong to the unit
localization and mapping for planar motions using low-cost circle S1 in Euclidean space.
range and gyro sensors. The SLAM system takes the idea of the
grid-based FastSLAM [7] technique. Unlike the conventional PF The dual quaternions are essentially two paired quaternions.
where a Gaussian distribution is assumed to model the uncertain In order to represent both positions and orientations, dual
position and orientation angle, we use dual quaternions to quaternions are defined as
represent SE(2) states and further use a Bingham-like distri-
x = xq + xp , (2)
bution to stochastically model them for particle generation and
propagation. An occupancy grid map is hereby employed for the with xq as in (1) representing the orientation part. Here
mapping part. In order to handle the potential high-dimensional denotes the dual unit with 2 = 0 and the dual part, i.e., the
uncertainty domain during Bayesian inference, we use Rao- translation quaternion, is defined as
Blackwellization for dimension reduction. Here, each dual
1 1
quaternion is assigned with its own occupancy grid map and xp = t xq = Qq · t , (3)
gets resampled during the update step given the likelihood of its 2 2
observation. Our approach inherently considers the nonlinear which is half the product of position and orientation quaternion.
structure of the SE(2), allows multi-modal state noise and Furthermore, there are overall three kinds of conjugate defined
1681
2018 21st International Conference on Information Fusion (FUSION)
for dual quaternions as introduced in Appendix A. The Hamilton The distribution is antipodally symmetric since f (x) = f (−x).
product here can be also realized with the normal matrix-vector Some detailed probabilistic interpretation of the applied distri-
multiplication with bution can also be found in [16].
xq,1 xq,2
Qq = ∈ SO(2) , (4) III. G RID - BASED SLAM U SING
−xq,2 xq,1
D UAL Q UATERNION PARTICLE F ILTER
which is a two-dimensional rotation matrix. A proof can be In this paper, we specify our application scenario to be
found in Appendix B. With real and dual part defined as in (1) planar SLAM using on-board range and gyro sensors with robot
and (3) respectively, the dual quaternions in (2) are inherently pose represented by unit dual quaternions. From a probabilistic
guaranteed to be of unit length. A vector v ∈ R2 can also be viewpoint, a full SLAM problem is formalized as estimating
transformed to v0 by getting first rotated by xq then translated the posterior of both the poses x and map M of all time steps,
by t via i.e.,
v 0 = x v x◦ , (5) p(x0:k , M|z1:k , u1:k ) . (10)
with x◦ = diag(1, −1, 1, 1) · x denoting the full conjugate Here x0:k ∈ S1 × R2 denote overall robot pose chain, z1:k and
of the dual quaternion x. The unit dual quaternions give a u1:k are the measurements and system input up to the current
convenient method for performing planar transformation in time step k respectively.
a similar manner as unit quaternions do for planar rotation.
Corresponding proofs are presented in Appendix C and D We propose a recursive estimation scheme for pose tracking
respectively. The manifold of unit dual quaternions representing and use grid-based occupancy maps for mapping. In order to
planar motions is thus the Cartesian product of the unit circle handle the potential case of multi-modal noise, we use an
and the two-dimensional Euclidean space and it is embedded approach based on particle filtering with dual quaternion states.
in the four-dimensional Euclidean space, namely The particles are generated according to the distribution in (7)
and get propagated through
x
x = q ∈ S1 × R2 ⊂ R4 , (6)
xp xk+1 = a(xk , uk ) wk , (11)
Furthermore, two antipodal unit dual quaternions, namely x with a(·, ·) denoting the system equation and wk ∈ S × R2 1
and −x denote the same planar rigid body motion. the dynamics noise. Due to the advantages discussed in II-B,
the system noise is assumed to follow also the aforementioned
distribution in (7) . Each particle gives a hypothesis of the robot
pose and has its own estimated map based on its observation
B. Stochastic Modeling of Uncertain Dual Quaternions given the measurement model
zk = h(xk ) ⊗ vk , (12)
In order to generate unit dual quaternion particles for our
SLAM system, a distribution proposed in [10] and [22] is with function h(·) mapping the dual quaternion state to the
employed. It belongs to the exponential family, inherently measurement domain. Here, the measurement noise vk can
incorporates the underlying nonlinear structure of SE(2) be either additive or non-additive (denoted by ⊗, which is
states and gives further consideration of correlation between invertible) and it can be of arbitrary measurement domain. The
orientation and position. The proposed distribution is defined dual quaternion particles are then resampled according to its
as observation likelihood and the global map also gets updated
1 correspondingly. A grid-based mapping approach is used here
f (x) = exp(xT Cx) , (7)
N (C) by which the map is discretized into
with x denoting dual quaternions of SE(2) states in (5). The M = {mi }i=1:m , (13)
parameter matrix C is defined as
with mi denoting the map grid cell indexed by i.
C1 CT2
C= , (8) In this section, we focus on presenting the central blocks
C2 C3
of our proposed SLAM scheme including the tracking method
with Ci ∈ R2×2 , symmetric C1 , arbitrary C2 and symmetric based on particle filtering using dual quaternions as well as the
negative definite C3 . It also determines the normalization con- mapping technique based on occupancy grid maps.
stant N (C) [10]. The distribution can be further decomposed
as A. Rao-Blackwellization for Grid-based SLAM
f (x) = fxq (xq )fxp |xq (xp |xq ) Since our approach is PF-based, directly sampling in the
1 posterior domain formalized in (10) typically suffers from the
= exp(xTq T1 xq + (xp − T2 xq )T C3 (xp − T2 xq )) ,
N (C) curse of dimensionality. We thus decompose the full SLAM
posterior based on Rao-Blackwellization [7] into, i.e.,
with T1 = C1 −CT2 C−1 −1
3 C2 and T2 = C3 C2 . Thus, it can be
viewed as the product of a Bingham distribution [23] modeling p(x0:k , M|z1:k , u1:k ) =
(14)
the orientation part and a Gaussian distribution modeling the p(x0:k |z1:k , u1:k ) · p(M|x1:k , z1:k , u1:k ) ,
translation part conditioned on each individual orientation, i.e.,
where the first part denotes the trajectory posterior and
xq ∼ B(T1 ), xp |xq ∼ N (T2 xq , −0.5C−1
3 ). (9) the second part denotes the map posterior. However, direct
1682
2018 21st International Conference on Information Fusion (FUSION)
estimation of the map posterior for each single particle can also occupancy probability of cell mi after updating with the current
be intractable especially in the case of large-scale mapping, as measurement can then be computed as
the posterior is actually the joint probability of all the grid cells 1
mi . A typical solution used in grid-based SLAM is to assume p(mi |z1:k , x1:k ) = 1 − .
each of the cell occupancy to be independently distributed such 1 + exp(lk,i )
that the map posterior can be approximated as the product of A detailed algorithm for updating the occupancy grid maps
all the marginals of all dual quaternion particles {xk,j }j=1:n given the current
m
Y measurement zk is introduced in Alg. 1. The function in line
p(M|z1:k , u1:k ) = p(mi |z1:k , u1:k ) , (15) 4 updates each cell of the old map Mk−1,j with the newly
i=1 calculated occupancy log odds.
with p(mi |z1:k , u1:k ) denoting the probability that cell mi is
occupied. With the assumption in (14) and (15), a tractable Algorithm 1 Occupancy Grid Map Update
grid-based SLAM formalization can be derived as procedure updateMap (zk , {(xk,j , Mk−1,j )}j=1:n )
p(x0:k , M|z1:k , u1:k ) = 1: for j = 1 to n do
m 2: for i = 1 to m do
Y (16) 3: lk,i ← lk−1,i + g(mk−1,j,i , xk,j , zk ) − l0,i ;
p(x0:k |z1:k , u1:k ) · p(mi |x1:k , z1:k ) .
4: Mk,j ← updateCellOccupancy (Mk−1,j , lk,i );
i=1
5: end for
6: end for
7: return {Mk,j }j=1:n
1683
2018 21st International Conference on Information Fusion (FUSION)
E. Particle Update
grid map and finally update the particles based on selective
In general, the update step follows the same idea of the Rao-
resampling according to the likelihood field. In order to
Blackwellized particle filter based on the occupancy grid map.
visualize a globally consistent map after each recursive step,
Here, dual quaternion particles are resampled according to their
each grid cell is given a log odds occupancy by the particle
likelihoods. More specifically, given the measurement model
with the largest weight.
(for both additive and non-additive noise) in (12), the likelihood
for a dual quaternion particle given the current measurement
Algorithm 5 SLAM with Dual Quaternion Particles
zk can be computed using Bayes’ theorem as follows
procedure DQPFSLAM ({(xek−1,j , Mek−1,j )}j=1:n , uk , zk )
f (zk |xk,j ) p
Z 1: {xk,j }j=1:n ← predictParticles (uk , {xek−1,j }j=1:n );
p
= f (zk , vk |xk,j )dvk,j 2: {Mek,j }j=1:n ← updateMap (zk , {(xk,j , Mek−1,j )}j=1:n );
ZZ 3: {(xek,j , wk,j )}j=1:n ← updateParticles (
= f (zk |vk,j , xk,j )f (vk,j )dvk,j (19) 4: {(xpk,j , Mek,j )}j=1:n , zk );
ZZ 5: return {(xek,j , Mek,j )}j=1:n
1684
2018 21st International Conference on Information Fusion (FUSION)
Figure 3: Estimated map and trajectory using our proposed B. Experiment Scenario
SLAM approach. The red and blue curve denote the ground
truth and estimated trajectory respectively and the mapping For the first time, filtering approaches based on the proposed
ground truth is shown with red dot curve. distribution in [10] are evaluated in a real-world scenario. Here
we set up an environment with static obstacles shown in Fig. 4,
which is unknown for the robot. During the controlled and step-
wise movements in the map, the robot aims to localize itself by
where the function srMk,j (·) gives the expected distance using the on-board four ultrasonic sensors and IMU. For this
measurement based on the occupancy grid map assigned to the specific test case, both of the system and measurement noise
particle. In the case of unknown areas, the likelihood for single level can be very high, partially due to the fact that, e.g., the
range measurement is assumed to be uniformly distributed, i.e., robot is likely to slip, the low-cost ultrasonic sensors can give
fvd = 1/dmax , with maximum detection range dmax = 50 cm, unreliable measurements, and the potential multiple reflection
as discussed in III-E. among the walls as well as the drift issue of IMU cannot be
ignored. The ground truth of robot’s pose is measured by using
a ceiling camera from above. Due to the aforementioned issues,
The evaluations are performed as follows. First, simulations only tracking accuracy is evaluated.
are carried out with an emphasis of showing the possibility
of employing our proposed SLAM approach for simultaneous We compare the tracking accuracy of our proposed SLAM
tracking and mapping. Second, a real-world scenario is designed system based on dual quaternion particles with the SLAM
in which the previously mentioned robot navigates in an systems based on the ordinary particle filter as well as the
unknown environment and the tracking accuracy is evaluated progressive dual quaternion filter [16]. In order to have the
for both orientation and position based on multiple Monte same noise level of system dynamics between the ordinary
Carlo runs. In both simulation and experiment, the ultrasonic PF and the dual quaternion-based filters, we approximate the
sensor has a beam angle αus = 15◦ and an effective detection Gaussian distribution of the ordinary PF from dual quaternion
range of 2 cm ∼ 65 cm. And the robot is able to move for samples randomly drawn from the distribution in (20). And we
about 1.6 cm in each direction and rotate for 16◦ per step. apply the same Bingham-distributed orientation noise for all
The implementation of our proposed SLAM approach is based the filters. The evaluation is performed based on 100 Monte
on [26]. Carlo runs of one single recorded dataset and the result is
1685
2018 21st International Conference on Information Fusion (FUSION)
1686
2018 21st International Conference on Information Fusion (FUSION)
Orientation/radian
Map
1.2
X-error/cm
Ground Truth 10
DQ Progresssive Fitler
1
60 Particle Filter
DQ Particle Filter
8
0.8
6
0.6
50 4
0.4
2 0.2
40
0 0
0 20 40 60 80 100 0 20 40 60 80 100
Time steps Time steps
30
Y
10 14
12 8
Position Error/cm
0 Y-error/cm 10
6
8
-10 6 4
4
2
-20 2
0 0
-30 -20 -10 0 10 20 0 20 40 60 80 100 0 20 40 60 80 100
X Time steps Time steps
Figure 5: Evaluation result for robot tracking in the real-world experiment set up in Fig.4. The picture on the left shows the
digitalized cardboard map. In the map, we plot the estimated trajectory using our proposed filtering approach (blue), the ordinary
particle filter (red) and the progressive filtering approach [16] (green). We plot the cumulative RMS error to show the tracking
accuracy and the per-step error on x and y to show how the error evolves. The results are based on 100 Monte Carlo runs based
on the same recorded data using 200 dual quaternion particles.
[4] F. Dellaert, D. Fox, W. Burgard, and S. Thrun, “Monte carlo localization Fusion (FUSION), July 2014.
for mobile robots,” in Proceedings 1999 IEEE International Conference [16] K. Li, G. Kurz, L. Bernreiter, and U. D. Hanebeck, “Nonlinear
on Robotics and Automation, vol. 2. IEEE, 1999, pp. 1322–1328. progressive filtering for SE(2) Estimation,” in 21st International
[5] H. Temeltas and D. Kayak, “SLAM for robot navigation,” IEEE Conference on Information Fusion (FUSION). IEEE, 2018.
Aerospace and Electronic Systems Magazine, vol. 23, no. 12, pp. 16–19, [17] M. Montemerlo, S. Thrun, D. Koller, B. Wegbreit et al., “FastSLAM: A
2008. factored solution to the simultaneous localization and mapping problem,”
[6] S. J. Julier and J. K. Uhlmann, “Unscented filtering and nonlinear Aaai/iaai, vol. 593598, 2002.
estimation,” Proceedings of the IEEE, vol. 92, no. 3, pp. 401–422, 2004.
[18] M. Montemerlo and S. Thrun, “FastSLAM 2.0,” FastSLAM: A scalable
[7] S. Thrun, W. Burgard, and D. Fox, Probabilistic Robotics. MIT press, method for the simultaneous localization and mapping problem in
2005. robotics, pp. 63–90, 2007.
[8] J. Goddard, “Pose and motion estimation from vision using dual
quaternion-based extended Kalman filtering. University of Tennessee, [19] Clifford, “Preliminary sketch of biquaternions,” Proceedings of the
Knoxville,” Ph.D. dissertation, 1997. London Mathematical Society, vol. s1-4, no. 1, pp. 381–395, 1871.
[9] J. E. Darling and K. J. DeMars, “Uncertainty Propagation of correlated [20] B. Kenwright, “A beginners guide to dual-quaternions: what they are,
quaternion and Euclidean states using partially-conditioned Gaussian how they work, and how to use them for 3D,” in The 20th International
mixtures,” in 19th International Conference on Information Fusion Conference in Central Europe on Computer Graphics, Visualization and
(FUSION), July 2016, pp. 1805–1812. Computer Vision, WSCG 2012 Conference Proceedings, 2012, pp. 1–13.
[10] I. Gilitschenski, G. Kurz, S. J. Julier, and U. D. Hanebeck, “A new [21] W. R. Hamilton, “Ii. on quaternions; or on a new system of imaginaries
probability distribution for simultaneous representation of uncertain po- in algebra,” Philosophical Magazine Series 3, vol. 25, no. 163, pp.
sition and orientation,” in 17th International Conference on Information 10–13, 1844.
Fusion (FUSION). IEEE, 2014.
[11] ——, “Unscented orientation estimation based on the Bingham distri- [22] I. Gilitschenski, G. Kurz, and U. D. Hanebeck, “A stochastic filter for
bution,” IEEE Transactions on Automatic Control, vol. 61, no. 1, pp. planar rigid-body motions,” in 2015 IEEE International Conference
172–177, 2016. on Multisensor Fusion and Integration for Intelligent Systems (MFI).
IEEE, 2015, pp. 13–18.
[12] M. Lang and W. Feiten, “MPG-fast forward reasoning on 6 dof pose
uncertainty,” in ROBOTIK 2012; 7th German Conference on Robotics. [23] C. Bingham, “An antipodally symmetric distribution on the sphere,” The
VDE, 2012, pp. 1–6. Annals of Statistics, pp. 1201–1225, 1974.
[13] W. Feiten, M. Lang, and S. Hirche, “Rigid motion estimation using [24] G. Kurz, I. Gilitschenski, F. Pfaff, and L. Drude, “libDirectional,” 2015.
mixtures of projected gaussians,” in 16th International Conference on [Online]. Available: https://github.com/libDirectional
Information Fusion (FUSION). IEEE, 2013, pp. 1465–1472.
[14] K. V. Mardia and P. E. Jupp, Directional statistics. John Wiley & [25] B. Ristic, S. Arulampalam, and N. Gordon, Beyond the Kalman filter:
Sons, 2009, vol. 494. Particle filters for tracking applications. Artech house, 2003.
[15] J. Steinbring and U. D. Hanebeck, “Progressive Gaussian filtering using [26] J. Steinbring, “Nonlinear Estimation Toolbox,” 2015. [Online].
explicit likelihoods,” in 17th International Conference on Information Available: https://bitbucket.org/nonlinearestimation/toolbox
1687