As far as I know all current 3d SLAM systems use pose graph optimization, both local and global. EKF and particle filter algorithms are not used or referenced at all as far as I can tell and the estimate of feature locations is deterministic at the output, not probabilistic.

Why is this? Is it purely because of computational constraints or is there another reason?


1 Answer 1


Particle filters while not abandoned have become quite rare. Nowadays they are really only used to solve localization problems. The reason being that they are quite expensive (each particle essentially stores the entire state) so 50 particles would be 50 times as expensive as an EKF. Also its other two benefits

  1. Being able to handle non gaussian noise distributions
  2. Handling multi modal distributions

Just don't end up being so important in practice. At least not worth the additional computation cost.

EKF's ,however, nowadays are still used a bunch. Typically they are paired together with a pose graph optimization algorithm. Where the EKF part estimates the current pose(and usually some sort of sliding window of past poses), and those then get fed into backend of all past poses(this is almost always solved with factor graph/optimization based approaches).

An example of this is approach is OpenVINS when paired with ov_secondary.

You still have some papers that solve the whole SLAM problem local and global in one EKF framework such as https://arxiv.org/pdf/1903.08636.pdf.

  • $\begingroup$ openVINS is kind of unusual, I was thinking about OrbSlam and the ones that followed it. Also as you point out it only applies EKF locally which kind of takes away it value IMO as loop closing and global error probabilities are the main benefit of the EKF framework I think. $\endgroup$ Nov 3, 2022 at 22:16
  • 1
    $\begingroup$ It is not really that unusually. Most SLAM systems are setup in such a way that you have a separation between local and global. Also I think you are misunderstanding how global optimization works. Factor graphs/Optimization methods are the exact same math as an EKF. It is just in the information form rather then the covariance. So calling it an iterative EKF is not really a stretch. So the loop closing, and global error properties you talk about are all still available in an optimization based framework. $\endgroup$
    – edwinem
    Nov 3, 2022 at 22:53

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.