Skip to content
/ trackun Public

A Python package for (multiple) object tracking using recursive Bayesian filtering

License

Notifications You must be signed in to change notification settings

vltanh/trackun

Repository files navigation

trackun

A Python package for (multiple) object tracking using recursive Bayesian filtering

Demo

Note: You can find more in images.

Example 1: GM-Bernoulli filter for single-object tracking on Constant Velocity with Gaussian noise model

python demo.py -s -m linear_gaussian -f GM-Bernoulli -o vis/output
Click to expand

Examples of GM-Bernoulli filter

Example 2: GM-PHD and GM-CPHD filter for multi-object tracking on Constant Velocity with Gaussian noise model

python demo.py -m linear_gaussian -f GM-PHD GM-CPHD -o vis/output
Click to expand

Examples of GM-PHD and GM-CPHD filter

Example 3: GM-LMB filter for multi-object tracking on Constant Velocity with Gaussian noise model

python demo.py -m linear_gaussian -f GM-LMB -o vis/output
Click to expand

Examples of GM-PHD and GM-CPHD filter

Checklist

Click to expand

Filters

Click to expand
  • Single Object
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Bernoulli
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Probability Hypothesis Density (PHD)
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Cardinalized Probability Hypothesis Density (CPHD)
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Robust Probability Hypothesis Density (PHD)
    • Unknown clutter (Lambda-CPHD)
      • Kalman Filter (GMS)
      • Particle Filter (SMC)
      • Extended Kalman Filter (EKF)
      • Unscented Kalman Filter (UKF)
    • Unknown detection probability (pD-CPHD)
      • Kalman Filter (GMS)
      • Particle Filter (SMC)
      • Extended Kalman Filter (EKF)
      • Unscented Kalman Filter (UKF)
    • Unknown clutter rate and detection probability
      • Kalman Filter (GMS)
      • Particle Filter (SMC)
      • Extended Kalman Filter (EKF)
      • Unscented Kalman Filter (UKF)
  • Cardinality Balanced Multi-target Multi-Bernoulli (CBMeMBer)
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Generalized Labeled Multi-Bernoulli (GLMB)
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)
  • Labeled Multi-Bernoulli (LMB)
    • Kalman Filter (GMS)
    • Particle Filter (SMC)
    • Extended Kalman Filter (EKF)
    • Unscented Kalman Filter (UKF)

Models

Click to expand

Motion model

  • Linear Gaussian
    • Constant velocity
  • Non-Linear Gaussian
    • Coordinated turn (CT)

Measurement model

  • Linear Gaussian
    • Cartesian coordinate
  • Non-Linear
    • Bearing/Polar coordinate

Other models

  • Birth model
    • Multi-Bernoulli Gaussian
    • Multi-Bernoulli Gaussian Mixture
  • Detection model
    • Constant probability
    • Bearing Gaussian
  • Survival model
    • Constant probability
  • Clutter model
    • Uniform clutter

Metrics

  • OSPA
  • OSPA2

Utility

  • Examples and Visualization
  • Benchmarking
  • Optimization (consider memory-speed tradeoffs, JIT,...)
  • System design and folder structure
  • Testing

Credits

Original MATLAB implementation comes from http://ba-tuong.vo-au.com/codes.html

About

A Python package for (multiple) object tracking using recursive Bayesian filtering

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages