Skip to content

A Kalman filter and Particle Filter implementation for Gaussian object tracking

Notifications You must be signed in to change notification settings

CesarCaramazana/BayesianFiltering

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Object tracking with Bayesian Filtering systems: Kalman filter and Particle filter

As part of a course in Statistical Signal Processing.

Description

A Kalman filter and Particle Filter implementation for tracking an object in 1) a Gaussian linear model (GaussianModel_ObjectTracking.m) and in the 2) FitzHugh-Nagumo model for the action potential in a cell membrane (ActionPotential_ObjectTracking.m).

fitz

(Example of the FitzHugh-Nagumo model)

Linear model

For a Gaussian linear model, the Kalman filter provides the optimal solution. Despite the Particle filter not providing the optimal solution, due to its approximations, the solution is still accurate enough to track the object in the plane. There are still some peaks in the error curves and some simulations where the estimate deviates significantly from the real trajectory (due to the stochastic nature of the algorithm).

trajectory

velocities

FitzHugh-Nagumo model

For a non-linear model, only the Particle Filter provides a solution.

traject-fitz

traject-fitz2d

traject-fitz_estimate

Conclusions

In this laboratory we have analyzed the role of the parameters for a linear-Gaussian system when estimating the state with both a Kalman filter and a particle filter. We discovered that, for a simplistic model, such as an object moving in a 2D space, the difference between the Kalman solution (optimal) and the particle filter is not that significant. For the FitzHugh-Nagumo model, only the particle filter could be implemented. We found out the effect that the number of particles have on the error –inversly proportional–, and that the form of the observations is critical for the proper functioning of the filter, as with non-linear observations the problem could not be solved at all.

Releases

No releases published

Packages

No packages published

Languages