IMM PDA
Python implementation of the Interacting Multiple Models Probabalistic data association filter (IMM-PDA). Tracking targets from noisy RADAR data. This filter deals with multiple motion models in the Extended Kalman filter (EKF). Tuned and tested on simulated and real datasets.
Install / Use
npx skills add ludvigls/IMM-PDAInstalls into whichever agent you are using.
README
IMM-PDA
Python implementation of the IMM-PDA algorithm for target tracking in RADAR data. In this algorithm the Interacting Multiple Models algorithm (IMM) with the Extended Kalman filter (EKF) is combined with the Probabilistic data association filter (PDA) to create an IMM-PDA filter. IMM combines several modes, in our case a Constant Velocity process model (CV-model) and a Constant Turn-rate process model (CT-model). The PDA uses the IMM filter together with information such as the clutter intensity, detection probability and gate size. The final IMM-PDA filter is tuned to accurately fuse position sensor data with the process model. This implemtation was tested on simulated and real datasets.
How to run
The IMM-PDA with a simulated dataset:
python3 run_imm_pda.py
The IMM-PDA with a real life dataset, named the "Joyride" dataset.
python3 run_joyride.py
Report
Check out report.pdf for more details
Related Skills
node-connect
385.5kDiagnose OpenClaw Android, iOS, or macOS node pairing, QR/setup code, route, auth, and connection failures.
blender-python-addon
40.5kBlender Python add-on rules for operators, panels, properties, registration, testing, and API-safe scripting
flutter-development-guidelines-cursorrules-prompt-file
40.5kCursor rules for Flutter development with MVVM architecture, Riverpod state management, Material widgets, and Dart style guidelines.
commit-push-pr
140.7kCommit, push, and open a PR
