5 ms·
Kalman and Bayesian Filters in Python (2018)
- kacamak 8y agoMuch easier to use them in Simulink, but it's good to see alternatives.
- msadowski 8y agoI had this book in my backlog for years. The fact that the book is interactive would immensely help me understand the concept.
- Jabbermonkey 8y agoWhile Kalman and Bayesian Filters in Python is a superb resource, probably the best out there, my recommendation for anyone new to the field would be to do Sebastian Thrun's free Artificial Intelligence for Robotics course [1] as an intro, then go through Labbe's work afterwards. Thrun's course is more accessible and even more hands-on than Labbe's content. As a bonus he also covers Particle Filters,PID control, Search and SLAM (which cam out of Thrun's PhD thesis). [1] https://www.udacity.com/course/artificial-intelligence-for-robotics--cs373 https://www.udacity.com/course/artificial-intelligence-for-r...
- rlayton2 8y agoThis book is quite good. I was recently looking for a more production-ready kalman filters, but the ones I found tend to be either abandoned, lacking lots of features, or not mature code bases. Are there any robust libraries for Kalman filters out there?
- WanderPanda 8y agoI think I've used the OpenCV Kalman filter implementation at some point. Maybe that suits your needs
- gyre007 8y agoOpenCV only provides Linear Kalman Filter afaik. For nonlinear estimation you need to use Extended or Unscented (this one is often used in Drone). I wrote estimation library in Go [1] last year which implements a lot of Kalman Filter alternatives and optimisations + smoothing https://github.com/milosgajdos83/go-estimate https://github.com/milosgajdos83/go-estimate
- deleted 8y ago[deleted]
- msadowski 8y agoThe one quite often used in Robotics + ROS combination is robot_localization (https://github.com/cra-ros-pkg/robot_localization https://github.com/cra-ros-pkg/robot_localization). The library provides implementation for ekf and ukf and in my experience it's quite robust.
- zmk_ 8y agoSsfPack [1] is a great implementation if you are willing to suffer through Ox. [1] http://www.ssfpack.com/ http://www.ssfpack.com/
- em500 8y agoMost of SsfPack is now implemented in python statsmodels: https://www.statsmodels.org/stable/statespace.html https://www.statsmodels.org/stable/statespace.html
- zmk_ 7y agoThanks for that! I was not aware of this. SsfPack will still be faster though and be less memory hungry than Python. On the brief look I had, it also seems that the nonlinear/non-Gaussian simulation methods are not implemented.
- boltzmannbrain 8y agoGTSAM [1] packs a lot of functionality for robotics projects, including Kalman filters [2]. A product of GTech (Frank Dellaert), a pro is there are many cool projects built on top of it [3], in C++ and Python. A con is GTSAM is not the cleanest, well-architected codebase (although far better than most products of academic labs). [1] https://bitbucket.org/gtborg/gtsam https://bitbucket.org/gtborg/gtsam [2] https://github.com/borglab/gtsam/tree/develop/examples#kalman-filter-exampleshttps://github.com/borglab/gtsam/tree/develop/examples#kalman-filter-examples https://github.com/borglab/gtsam/tree/develop/examples#kalma... [3] e.g., https://github.com/gtrll/piper https://github.com/gtrll/piper and https://github.com/gtrll/gpmp2 https://github.com/gtrll/gpmp2
- michelpp 8y agoThere is also an excellent series (55 vids!) by Michel van Biezen on Kalman filters: https://www.youtube.com/watch?v=CaCcOwJPytQ https://www.youtube.com/watch?v=CaCcOwJPytQ