C Implementations of Particle Filter
Done:
- A basic framework of C implementations of Particle filter;
- Support multi dimension state;
- Support several resampling methods including: multimodal, stratified, systematic;
How to use it:
-
Define your process function and measure function in the corresponding files;
1.1 process function describes how the state you want to estimate evolves;
1.2 measure function describes how your measured variable is related to the state; The measured value can also be obtained from real measurements (e.g. in my case, from some sensor nodes). This can be achieved by changing a little bit in the measure function.
-
Define the time duration, number of particles in the macro in the main.c, as well as the noise covariance;
-
Define the dimension of the state in the particle.h
To-do:
-
The current implementation of the particle filter is a bit simplified. It conducts resampling every time which may not conform to the standard particle filter. But in general, it works well for my test functions. In the future I will add some more variants of the algorithms.
-
Modified for the future use in a microcontroller.
=============== Let me know if you have any questions. Can contact me through [email protected].