Constructive Observer Design for Visual Simultaneous Localisation and Mapping
Abstract
Visual Simultaneous Localisation and Mapping (VSLAM) is a well-known problem in robotics with a large range of applications. This paper presents a novel approach to VSLAM by lifting the observer design to a novel Lie group on which the system output is equivariant. The perspective gained from this analysis facilitates the design of a non-linear observer with almost semi-globally asymptotically stable error dynamics. Simulations are provided to illustrate the behaviour of the proposed observer and experiments on data gathered using a fixed-wing UAV flying outdoors demonstrate its performance.
1 Introduction

Simultaneous Localisation and Mapping (SLAM) has been an established problem in mobile robotics for at least the last 30 years [10]. Visual SLAM (VSLAM) refers to the special case where the only exteroceptive sensors available are cameras, and is frequently used to refer to the challenging situation where only a single monocular camera is available. The inherent non-linearity of the VSLAM problem remains challenging [8] and state-of-the-art solutions suffer from high computational complexity and poor scalability [10, 19]. Due to the low cost and low weight, as well as the ubiquity of single camera systems, the VSLAM problem remains an active research topic [10, 9].
Both the SLAM and VSLAM problems have recently attracted interest in the non-linear observer community, drawing from earlier work on attitude estimation [15, 5] and pose estimation [1, 23, 12]. Bonnabel et al. [2] exploited a novel Lie group to design an invariant Extended Kalman Filter for the SLAM problem. Parallel work by Mahony et al. [16] proposed the same group structure along with a novel quotient manifold structure for the state-space of the SLAM problem. Work by Zlotnik et al. [24] derives a geometrically motivated observer for the SLAM problem that includes estimation of bias in linear and angular velocity inputs. For the VSLAM problem, where only bearing measurements are available, Lourenco et al. [13, 14] proposed an observer with a globally exponentially stable error system using depths of landmarks as separate components of the observer. Bjorne et al. [4] use an attitude heading reference system (AHRS) to determine the orientation of the robot, and then solve the SLAM problem using a linear Kalman filter. A similar approach to VSLAM is undertaken by Le Bras et al. [6]. Hamel et al. [11] have also introduced a Riccati observer for the case where the orientation of the robot is known. Recent work by the authors [22] introduced a new symmetry structure specifically targeting the VSLAM problem but used an observer design that was a lifted version of that proposed in [11].
In this paper we present a novel non-linear equivariant observer for the VSLAM problem. The approach uses the SLAM manifold state-space proposed in [16] along with a novel symmetry Lie-group, , introduced by van Goor [22] but fully developed for the first time in this paper. We extend the results of [22] by providing compatible group actions on the state and output spaces and defining an intrinsic error that is globally defined. We propose a non-linear Lyapunov function expressed in the intrinsic error coordinates and use this to construct an observer for the visual SLAM problem posed on the symmetry group . This is in contrast to the majority of state-of-the-art algorithms which depend on local error coordinates and local linearisation [8]. (Although the recent IEKF results [7] exploit a global symmetry of the state-space the symmetry used is not compatible with visual bearings and the algorithm still depends on local linearisation.) In our proposed algorithm, separate constant gains for landmark bearing and depth estimates are used, making the design algebraically simple and leading to low-computational cost. We show that the error dynamics are almost semi-globally asymptotically stable (Def. A.1); that is, for any open neighbourhood of the error equilibrium, excluding a known exception set of measure zero, there exists a choice of gains such that this open set lies within the basin of attraction of the error equilibrium. As a result the algorithm is highly robust to measurement noise and also to data-association errors. Its low-computation and memory requirements make it ideally suited to embedded systems applications in consumer electronics.
This paper consists of six sections alongside the introduction and conclusion. Section 2 introduces key notation and identities. In Section 3, we formulate the kinematics, state-space and output of the VSLAM system, and in Section 4 we introduce the Lie group and its actions on the state and output spaces. In Section 5 we derive a non-linear observer on the Lie group, and in Sections 6 and 7 we provide the results of a simulation and a real-world experiment carried out using a Disco Parrot UAV (Figure 1). The principal contribution of the paper is theoretical and the experimental sections support this by illustrating the properties of the algorithm and demonstrating that it functions on real-world data. We do not aspire to provide a comprehensive benchmark of performance against state-of-the-art SLAM systems in the present paper.
2 Preliminaries
2.1 Notation
The special orthogonal and special Euclidean matrix Lie groups are denoted and , respectively, with Lie algebras and . For any column vector , the corresponding skew-symmetric matrix is denoted
This matrix has the property that, for any , where is the vector (cross) product between and . For any unit vector and any vector ,
(1) |
Consider a homogeneous matrix . The notation and is used to represent the rotation and translation components of , respectively; that is
Likewise, for a matrix , the notation , with , and represent the angular and linear velocity components of , respectively; that is
3 Problem Formulation
3.1 VSLAM State Space
Fix an arbitrary reference frame . Let and represent the robot pose and landmark coordinates, respectively, defined with respect to . The raw coordinates of the SLAM problem are written . The notation is used for simplicity in the sequel.
The physical measurements in a monocular VSLAM system are the bearings (3D directions) of landmarks perceived by the robot. We assume from now on that the observed landmarks and the robot are not collocated to ensure that the bearing measurements are well defined. Interestingly, this assumption has a substantive impact on the nature of the global symmetries that can be admitted. We make this assumption explicit, defining the total space of SLAM configurations considered to be
(2) |
We assume that the trajectory of the robot remains in for all time.
Given two configurations , then if there exists such that . That is, two sets of coordinates in the total space are considered equivalent when they are related by a rigid body transformation of the reference frame . It is straightforward to show the relation is an equivalence relation on and
is the associated equivalence class. The VSLAM manifold is the set
with quotient manifold structure. This is the open subset of the SLAM manifold considered in [16] without those equivalence classes where a landmark is co-located with the robot. Two configurations are equivalent on the SLAM manifold, , if and only if the ego-centric coordinates of the landmarks are equal, for all .
3.2 VSLAM Kinematics
Assume that the robot is moving in a static environment. Define a velocity input vector space to contain the rigid-body velocity of the robot. The kinematics of the VSLAM system are given by the system function ,
(3) |
3.3 System Output
The camera measurements are modelled as elements of the sphere . Each individual bearing is given by an output function ,
(4) |
The output functions are well defined on since
(5) |
The full output space of the VSLAM system is defined as a product of spheres,
with a combined output function
(6) |
4 Symmetry of the VSLAM Problem
4.1 Symmetry of the Total Space
Define a Lie group
with product Lie group structure, where is the multiplicative real group of positive real numbers. This Lie group was first proposed in van Goor et al. [22]. The associated Lie algebra is denoted . We write elements of as .
Lemma 4.1.
The mapping defined by
(7) |
is a right group action of on .
Proof.
Trivially, for any . Let and be arbitrary. Then
∎
4.2 Symmetry of the Output Space
There is an action of the group on the output space such that the measurement function defined in (6) is equivariant with respect to and . The following lemmas define this action and show the equivariance of for the proposed geometry. The authors know of no output action that makes bearing outputs equivariant with respect to prior geometries proposed for SLAM [2, 16].
Proposition 4.2.
The mapping defined by
(8) |
is a right group action of on .
Proof.
The proof is straightforward. ∎
Lemma 4.3.
Proof.
Let and be arbitrary. Then
∎
4.3 Lift of the VSLAM Kinematics
In order to consider the system on the group, the kinematics from the total space must be lifted onto the group. A lift is a map such that
(9) |
where is given by (3).
Lemma 4.4.
Proof.
Given , let , , and . Then
(11) |
where is
using group index notation. Computing this derivative and evaluating at one obtains
(12) | ||||
(13) | ||||
where (12) follows from substituting for and with the full expressions for and , and (13) follows from cancelling the term and using the relationship (1) as well as rearranging the first term. The result follows from substituting directly into (11) and recalling (3). ∎
5 Observer Design
5.1 Lifted System Kinematics
Let denote the true state of the VSLAM system. The kinematics of of the VSLAM system are given by (3). Choose an arbitrary origin configuration . The lifted system is (Lemma 4.4)
(14) |
for . If then trajectories of the lifted system kinematics project to trajectories of the VSLAM kinematics (3) [17]. That is, recalling (7)
for all , where we have dropped the time dependence of , and from the notation to improve readability.
5.2 Landmark Observer
The following theorem proposes an observer and provides innovation terms for the components of the observer corresponding to each of the landmarks.
Theorem 5.1.
Fix an arbitrary origin configuration . Let be a trajectory of the lifted system (14) associated with a trajectory of the true system satisfying (3) for measured input signal . Let (4) denote the output. Assume that is bounded, and that there exist such that
for all time. For each , assume that is persistently exciting, in the sense that there exist and such that
(15) |
for all .
The observer state is , with kinematics given by
(16) |
where is the lift defined by (10) and is the innovation defined below. The state estimate is given by (7).
Let denote the origin output, and let denote the output error, defined as
Define the true range and estimated range for each . The range error is
(17) |
for each . For a positive gain let . Define the twice differentiable barrier function to be
(18) |
The landmark innovation terms and for are defined to be
(19) |
where and are constant positive scalars. The robot pose innovation can be chosen to be any continuous function of the observer state and measurements (cf. §5.3).
Proof.
Let be a compact set in the complement of (20). Assume and choose . Then
for each . Thus for every by definition of . By continuity of the solutions there exist such that , and hence is well-defined, for . We will show later that can be chosen arbitrarily large and holds for all time.
For each , define the storage function
(21) |
in the variables where the second line follows from and substituting for . Note that depends on the time varying range as a parameter. By assumption, and the storage functions are positive definite. Similarly, for all and is well-defined and finite at . By continuity of solutions there exist times such that the remain well defined on the time interval . Note that for each , as depends on . We will show later that are defined for all time.
By definition, , and . Differentiating these with respect to time yields
(22) | ||||
where is the estimated measurement. Since (18) is a barrier function ensuring that , ( as ,) it follows that the remaining terms in (22) are bounded and is well defined .
Differentiating the output error yields
Observe that and . Using this, the derivative of is simplified to
(23) |
where the last step is obtained by using various identities involving the skew symmetric operator.
Recalling (21) and using identities involving the skew symmetric operator and projector, the derivative of is
The derivative of may now be computed on the time interval as follows:
(24) |
The second term is negative semi-definite, since it is zero when (18), and otherwise and . It follows that , and for all .
We show by contradiction that can be chosen arbitrarily large. Assume that there is an and maximum value for which is well defined on . Since on and the solution of (24) is absolutely continuous then the limit exists and is finite. It follows that (24) is well defined at and the solution can be extended beyond contradicting the assumption. Thus, exists for all time and by inspection is bounded for all . Since then for all and it is straightforward to verify that the signals remain well defined for all time.
Barbalat’s Lemma is used to prove . To show that is uniformly continuous, it is sufficient to show that is bounded. Recall that is bounded above and below by assumption, and that for all time. Computing the second derivative of , one has
It suffices to show that the component terms are all bounded. In the first term, is bounded by the boundedness of . The component is also bounded due to the boundedness of , , and the assumption that is bounded. As for the second term, the component is bounded since the boundedness of the velocity input imposes a lower bound on that is greater than . This means that both and its derivative with respect to are bounded. Therefore, is uniformly continuous, and by Barbalat’s lemma, . This implies that , since both terms that appear in (24) are non-positive .
It remains to show (or equivalently ). Applying Barbalat’s Lemma to and exploiting the same bounding arguments as before, it is straightforward to verify that . It is also easily verified that as .
From (23), may be written as
Clearly, as . Hence
(25) |
as . Therefore, . Recall that . The estimated range is also bounded above by a constant depending on the initial value of . Since , it follows from (25) that
(26) |
Each must converge to a positive constant as . Therefore, (21) ensures that . Integrating (26) over a period of time , and using the fact that is converging to a constant, it follows that
Using the persistence of excitation assumption (15), it must be that .
Recall the exception set (20). It is straightforward to verify that this set has measure zero. Since the initial choice of compact set in the complement of was arbitrary, then the equilibrium of is almost semi-globally asymptotically stabilisable by the proposed innovation (Def. A.1).
Observe that, at the equilibrium,
Using this, the ego-centric coordinates of the SLAM configuration and their estimates satisfy
and thus
Therefore, at the equilibrium point, each is related to each by the same rigid body transformation . Moreover, it is clear that . Hence, the two configurations on are equivalent on the SLAM manifold, . This completes the proof. ∎
5.3 Total Space Representative
In Theorem 5.1 the convergence result is independent of the choice of innovation term . This is due to the ego-centric nature of the group action considered and the invariance properties of the SLAM manifold, which cause the inertial frame of a SLAM system to be unobservable. In essence, choosing will influence the element that relates the reference and estimated states, but does not influence the convergence of the SLAM error. Nevertheless, it is clear that as the error converges, it is desirable that the that relates the reference and established states converges to a constant, essentially capturing the “inertial map” property that is desired in visual odometry. It is a key contribution of this paper to observe that imposing this constraint is a separate requirement from the underlying SLAM solution, that is, we must introduce an additional criterion that captures this property and then use this to design the innovation .
The criterion that we propose to minimize is the weighted mean velocity of the landmark points
For a static environment, the true landmark points are not moving. For the observer estimate these points may be moving, due to residue velocity associated with the landmark error innovation, but also importantly, due to the innovation that is moving the entire SLAM configuration. The motion due to will be strongly correlated, while it is expected that the residue velocity due to the innovation will be uncorrelated and for large constellations of points average to zero. Choosing to minimize this additional criteria can be thought of as minimizing instantaneous map drift.
Proposition 5.2.
Let the origin configuration , the observer state , and the innovation term be defined as in the statement of Theorem 5.1. Let be the estimated state on the total space, and let for each . Then the solution to
(27) |
where are positive scalars, is given by
(28) |
where and are determined by
(29) |
so long the inverse in (29) remains well-defined.
Proof.
First, observe that
Equation (27) presents a weighted least squares problem, and to solve it we analyse the component expressions . The time derivative of each needs to be computed. Recall that the velocity lift is defined precisely so that when the innovation terms are set to zero. Since differentiation is a linear operation, this means that
Therefore, by the theory of Weighted Least Squares, (29) is exactly the solution to (27), as required. ∎
Proposition 5.2 provides a clear way to choose an innovation term based on the static landmark assumption, and allows for scalars to be chosen to weight the optimisation.
6 Simulation Results
To verify the landmark observer design in Theorem 5.1 and the robot innovation term in Proposition 5.2, we conducted a simulation of a flying vehicle equipped with a monocular camera, observing 5 stationary landmarks as it moves in a circular trajectory with a constant body-fixed velocity , where rad/s and m/s. For simplicity, it is assumed that the camera frame coincides with the body-fixed frame of the vehicle. The initial position of the vehicle was set to m with its rotational axes aligned with the inertial frame . The positions of the landmark are initialised to random positions on the ground plane with m.
The origin position of the robot is set to the identity , and the origin landmark positions are set to , where are the measured bearings to the true landmark positions at time 0. That is, the estimated points are initialised with correct bearings and an arbitrary depth of 10 m. The observer is defined on with kinematics given by (5.1), landmark innovation terms given by (5.1), where and , and robot innovation term given as in Proposition 5.2 with . At the end of the simulation, the estimated system state is aligned with the true system state by matching the true and estimated robot poses. Figure 2 shows the trajectories of estimated landmark positions and robot position over time, as well as the true landmark positions and the true robot trajectory, and figure 3 shows the evolution of each of the landmarks’ associated storage functions, as defined in (21).
This simulation provides a simple demonstration of performance of the proposed observer and illustrates typical trajectories of the landmark estimates during a repeating motion such as the circle. The estimated landmark positions can be seen to converge to the true landmark positions in a natural manner. The choice to initialise landmarks as having a bearing matching the initial measurement is a natural one for practical implementation of the algorithm, although Theorem 5.1 provides that almost any initial conditions will converge. This almost semi-global convergence is a key property of the observer presented here that is not available in many of the state-of-art solutions.


7 Experimental Results
To demonstrate the observer described in Theorem 5.1 in a real-world scenario, we gathered video, GPS, and IMU data from a Disco Parrot fixed-wing UAV flying outdoors. Image features were identified using OpenCV’s goodFeaturesToTrack, and subsequently tracked using OpenCV’s calcOpticalFlowPyrLK. These image features were then corrected for camera intrinsics and converted to spherical bearing coordinates before being used as landmark inputs to the observer. Landmarks are added to the system state after being observed for two frames so that their depths can be initialised from optical flow. When a landmark is no longer visible, it is removed from the observer state.
Initially, the input velocities to the system were estimated by combining the GPS signal (to obtain scale information) with egomotion estimated using the IMU and optical flow from the video stream, as outlined in [18]. Once sufficiently many landmarks are initialised, the optical flow vectors of each of the landmarks were combined with the existing landmark estimates to compute the input velocity . The observer was implemented using Euler integration with gain parameters set to and for each . The video recorded had a frame rate of fps, leading to the Euler integration step being set to s. GPS data was recorded at Hz in order to compare with the observer’s estimated trajectory. The observer trajectory was aligned to the GPS trajectory using the Umeyama method [21]. Figure 4 shows the aligned trajectories according to the observer and according to the GPS in the and directions, where the direction refers to the plane’s altitude. Figure 5 shows the final positions of all landmark points in addition to the observer- and GPS-estimated trajectories. Figure 6 shows a frame taken from the video stream used in the experiment, with lines to represent the optical flow tracking overlaid. A video showcasing the feature tracking system is available online111https://www.youtube.com/watch?v=QzIxh2eM1_s.



8 Conclusion
This paper presents an observer design posed on a symmetry group for the VSLAM problem. The SLAM manifold introduced in [16] and the symmetry group discussed in [22] are reintroduced and exploited in the observer design. The observer is formulated on output errors, and provides a clear way to change the gains for bearing and depth of landmarks separately. The almost semi-global convergence of the proposed observer improves on the properties of state-of-the-art Extended Kalman Filter systems, which suffer from linearisation errors. While research into the development of non-linear observers for the SLAM problem is only recent, the observer for VSLAM presented in this paper demonstrates some of the key advantages the approach can offer.
Appendix A Almost Semi-Global Asymptotic Stabilising Controls and Innovations
The concept of semi-global asymptotic stabilisability was introduced in [20] to model the dependence of gain on the basin of attraction in feedback stabilisation of a dynamical system. In the context of an observer analysis, this definition can be transferred to stabilisability of the error dynamics by innovation. However, the classical concept introduced by Teel and Praly does not capture topological constraints associated with stability analysis on manifolds. For a large class of manifolds, including Lie-groups with as a subgroup, these topological constraints prevent the existence of globally smooth asymptotically stable error dynamics [3]. On such spaces, smooth error dynamics will always admit an exception set of unstable or hyperbolic critical points that cannot be part of the basin of attraction of the desired equilibrium.
We consider a system-observer pair, where the observer has the internal model principle, coupled through an innovation function depending on the observer state and system output. We assume that there is a well defined error function where is the observer state space and is the system state space. The error dynamics evolve on the manifold depending on the system and observer state evolution as well as any exogenous inputs such as velocities.
Definition A.1.
An equilibrium of the error dynamics of a system-observer pair, on a manifold , is almost globally stable if its basin of attraction is the complement of an exception set of measure zero.
An equilibrium of the error dynamics of a observer-system pair, on a manifold , is said to be almost semi-globally stabilizable if, for each compact set in the complement of an exception set of measure zero, there exist a choice of innovation such that is an asymptotically stable equilibrium of the error dynamics with basin of attraction containing .
Acknowledgement
This research was supported by the Australian Research Council through the “Australian Centre of Excellence for Robotic Vision” CE140100016.
References
- [1] G. Baldwin, R. Mahony, and J. Trumpf. A nonlinear observer for 6 DOF pose estimation from inertial and bearing measurements. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA), pages 2237–2242, 2009.
- [2] Axel Barrau and Silvere Bonnabel. An EKF-SLAM algorithm with consistency properties, 2016. arXiv:1510.06263.
- [3] S.P. Bhata and D.S. Bernstein. Atopological obstruction to continuous global stabilization of rotational motion and the unwinding phenomenon. Systems & Control Letters, 39:63–70, 2000.
- [4] E. Bjorne, T. A. Johansen, and E. F. Brekke. Redesign and analysis of globally asymptotically stable bearing only SLAM. In 2017 20th International Conference on Information Fusion (Fusion), pages 1–8, July 2017.
- [5] S. Bonnabel, P. Martin, and P. Rouchon. Symmetry-preserving observers. IEEE Transactions on Automatic Control, 53(11):2514–2526, 2008.
- [6] F. Le Bras, T. Hamel, R. Mahony, and C. Samson. Observers for position and velocity bias estimation from single or multiple direction outputs. In T.I. Fossen, K.Y. Pettersen, and H. Nijmeijer, editors, Sensing and Control for Autonomous Vehicles, chapter 1. Lecture Notes in Control and Information Sciences 474, Springer, 2017.
- [7] Martin Brossard, Silvere Bonnabel, and Axel Barrau. Unscented kalman filter on lie groups for visual inertial odometry. In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), pages 649–655. IEEE, 2018.
- [8] Cesar Cadena, Luca Carlone, Henry Carrillo, Yasir Latif, Davide Scaramuzza, José Neira, Ian Reid, and John J Leonard. Past, present, and future of simultaneous localization and mapping: Toward the robust-perception age. IEEE Transactions on robotics, 32(6):1309–1332, 2016.
- [9] J. Delmerico and D. Scaramuzza. A benchmark comparison of monocular visual-inertial odometry algorithms for flying robots. In IEEE International Conference on Robotics and Automation (ICRA), 2018.
- [10] Jorge Fuentes-Pacheco, José Ruiz-Ascencio, and Juan Manuel Rendón-Mancha. Visual simultaneous localization and mapping: a survey. Artificial Intelligence Review, 43(1):55–81, 2015.
- [11] T. Hamel and C. Samson. Riccati observers for the nonstationary pnp problem. IEEE Transactions on Automatic Control, 63(3):726–741, March 2018.
- [12] Minh-Duc Hua, Mohammad Zamani, Jochen Trumpf, Robert Mahony, and Tarek Hamel. Observer design on the special euclidean group SE(3). In Proceedings of the IEEE Conference on Decision and Control and European Control Conference, Orlando, FL, USA, December 2011.
- [13] Pedro Lourenço, Bruno Guerreiro, Pedro Batista, Paulo Oliveira, and Carlos Silvestre. Simultaneous localization and mapping for aerial vehicles: a 3-d sensor-based gas filter. Autonomous Robots, 40(5):881–902, 2016.
- [14] Pedro Lourenço, Pedro Batista, Paulo Oliveira, and Carlos Silvestre. A globally exponentially stable filter for bearing-only simultaneous localization and mapping with monocular vision. Robotics and Autonomous Systems, 100:61 – 77, 2018.
- [15] R. Mahony, T. Hamel, and J. Pflimlin. Nonlinear complementary filters on the special orthogonal group. IEEE Transactions on Automatic Control, 53(5):1203–1218, June 2008.
- [16] Robert Mahony and Tarek Hamel. A geometric nonlinear observer for simultaneous localisation and mapping. In Conference on Decision and Control, page 6 pages, Melbourne, December 2017.
- [17] Robert Mahony, Jochen Trumpf, and Tarek Hamel. Observers for kinematic systems with symmetry. In Proceedings of 9th IFAC Symposium on Nonlinear Control Systems (NOLCOS), page 17 pages, 2013. Plenary paper.
- [18] Felix Schill, Robert Mahony, and Peter Corke. Estimating ego-motion in panoramic image sequences with inertial measurements. In Robotics Research, pages 87–101. Springer, 2011.
- [19] H. Strasdat, J.M.M. Montiel, and A.J. Davison. Visual SLAM: Why filter? Computer Vision and Image Understanding (CVIU), 30(2):65–77, 2012.
- [20] A.R. Teel and L. Praly. Global stabilizability and observability imply semi-global stabilizability by output feedback. Systems and Control Letters, (22):313–325, 1994.
- [21] S Umeyama. Least-squares estimation of transformation parameters between two point patterns. IEEE Transactions on Pattern Analysis and Machine Intelligence, 13(4):376–380, 1991.
- [22] Pieter van Goor, Robert Mahony, Tarek Hamel, and Jochen Trumpf. A geometric observer design for visual localisation and mapping. In 2019 IEEE 58th Conference on Decision and Control (CDC), pages 2543–2549. IEEE, 2019.
- [23] J.F. Vasconcelos, R. Cunha, C. Silvestre, and P. Oliveira. A nonlinear position and attitude observer on SE(3) using landmark measurements. Systems & Control Letters, 59(3-4):155–166, 2010.
- [24] David Evan Zlotnik and James Richard Forbes. Gradient-based observer for simultaneous localization and mapping. IEEE Transactions on Automatic Control, 63(12):4338–4344, 2018.