SLAM with Bearing-only Sensors

An important milestone for building affordable robots that can become widely popular is to address robustly the Simultaneous Localization and Mapping (SLAM) problem with inexpensive, off-the-shelf sensors, such as monocular cameras. These sensors, however, impose significant challenges on SLAM procedures because they provide only bearing data related to environmental landmarks. This paper starts by providing an extensive comparison of different techniques for bearing-only SLAM in terms of robustness under different noise models, landmark densities and robot paths. We have experimented in a simulated environment with a variety of existing online algorithms including Rao-Blackwellized Particle Filters (RB-PFs). Our experiments suggest that RB-PFs are more robust compared to other existing methods and run considerably faster. Nevertheless, their performance suffers in the presence of outliers. In order to overcome this limitation we proceed to propose an augmentation of RB-PFs with: (a) Gaussian Sum Filters for landmark initialization and (b) an online, unsupervised outlier rejection policy. This framework exhibits impressive robustness and efficiency even in the presence of outliers.

The figures below show an example of a simulated experiment. There are 20 landmarks dispersed in the environment and a mobile robot.

The top figure shows the uncertainty in the landmark locations when the robot has just started moving.

In the bottom figure, the robot has executed its exploration path and the landmark positions have been estimated.

Check a video that is based on real data gathered with an omnidirectional camera. The robot executes a circular path in an indoor office environment.

Comparison of Techniques

There is a wide variety of algorithms that have been proposed to solve the SLAM problem in general and Bearing-Only SLAM (BO-SLAM) in particular. Our goal with this project is to implement the various algorithms and compare their efficiency in accurately and robustly solving the BO-SLAM problem. In our setup we assume that the sensor is able to extract landmarks from its sensory input, so mapping the environment corresponds to estimating the landmark coordinates.

The algorithms we are considering are the following:

  1. Extended Kalman Filter (EKF): Assuming the motion and odometry models can be linearized and that the noise follows a white, Gaussian model. We are testing the following EKF approaches:
    • The most straightforward approach assumes that an Extended Kalman Filter is used to simultaneously localize the robot and to locate the landmark coordinates.
    • An improvement over the previous method can possibly be achieved by using multiple Kalman filters to independently track each landmark. Filters that do not agree with the measurements are pruned. When only one Kalman filter remains then the landmark is added in the global Kalman filter and the method continues as above.
  2. On-line Expectation Maximization: Iteratively solve the Localization and the Mapping subproblems separately by assuming that there is a solution to the sibling subproblem. Apply Particle Filters (PFs) to solve each one of the subproblems. We are testing the following variants of PFs:
    • The Sampling Importance Sampling (SIS) approach with Resampling according to the Effective Sampling Size (ESS) criterion.
    • The Sampling Importance Resampling (SIR) aka. Monte Carlo Localization (MCL).
    • The Dual-MCL and Mixture-MCL approaches.
    • The SIR approach with Sensor Bias.
    • The SIR approach with Sensor Resetting.
    • The SIR approach with Roughing.
  3. Rao-Blackwellized Particle Filters: By applying an approach from statistics called Rao-Blackwellization it is possible to show that we can get an algorithm for the SLAM problem that converges (Online E/M does not provably converge) and which has a better complexity than the EKF.

Related Publications

People Involved