Be the first to rate this file! 33 Downloads (last 30 days) File Size: 25 KB File ID: #42769
image thumbnail

Gaussian Mixture Probability Hypothesis Density Filter (GM-PHD)

by Bryan Clarke

 

22 Jul 2013 (Updated 31 Jul 2013)

Implementation of the Gaussian mixture probability hypothesis density filter GM-PHD.

| Watch this File

File Information
Description

This is an implementation of the Gaussian mixture probability hypothesis density filter (GM-PHD) described in:
B.-N. Vo, W.-K. Ma, "The Gaussian Mixture Probability Hypothesis Density Filter", IEEE Transactions on Signal Processing, Vol 54, No. 11, November 2006, pp4091-4104.

The submission includes a Matlab implementation of the GM-PHD filter algorithm described by Vo & Ma as well as one of the simulated problems described in their paper. A few modifications were made from Vo & Ma's algorithm but they are for technical reasons and don't change the overall structure of the filter.

The GM-PHD filter is a means of estimating the number and positions of targets in measurement data. Its advantages include a representation of target position uncertainty (using a covariance matrix) as well as target existence uncertainty (using a weight) and the absence of data association in the update step. This implementation is quite heavily commented and will probably be helpful to people trying to learn about GM-PHD filtering, but the paper by Vo & Ma is essential to understand what is really going on.

The simulator creates noisy measurements of two moving targets in a cluttered environment, with a third target being created approximately halfway through the simulation. It's a fairly simple problem but it is effective in demonstrating filter performance.

Read the README.txt, or just start with GM_PHD_Filter.m and work from there.

Acknowledgements

Error Ellipse inspired this file.

Required Products MATLAB
MATLAB release MATLAB 8.1 (R2013a)
Tags for This File  
Everyone's Tags
probability hypothesis density, tracking
Tags I've Applied
Add New Tags Please login to tag files.
Please login to add a comment or rating.
Updates
26 Jul 2013

Fixed typos in the description.

31 Jul 2013

New targets can now be initialised with a 'spawned' weight rather than a 'birthed' weight. Whichever weight is higher is the one that is used. Previously all targets were birthed.
Extra output statements are now output when VERBOSE is set.

Contact us