gpldecha / point-mass-filter

Matlab implementation of a Point Mass Filter (PMF)
MIT License
4 stars 1 forks source link

point-mass-filter

Matlab implementation of a 2D and 3D Point Mass Filter (PMF). This implementation is based on the descritption from Niclas Bergman's Thesis: Recursive Bayesian Estimation Navigation and Tracking Applications, Chapter 5. Both implemenations rely on N-dimensional sparse arrays which is included in this distribution.

Installation

In your matlab Command Window make sure you are outside the point-mass-filter directory and run:

>>> addpath(genpath('./point-mass-filter'))

2D PMF

The folder PMF_2D contains two examples of how to use the 2D PMF filter.

Example 1

Run script Example1.m and you should see an orange packman agent follows a circular motion whilst measuring distances and bearings (red line) to a wall (black line). You should see both figures illustrated below after runing the scripts.

Example1_pmf Example1_lik

Example 2

Run script Example1.m and you should see the figure below appear. To control the agent use your arrow keys and press Esc to exit the simulation loop.

Example2

3D PMF

The folder PMF_3D contains one example of how to use the filter. If you run Example3.m you should see something similar to the figure below.

Example3