Skip to content

Implementation of UKF on a CTRV (Constant Turn Rate and Velocity) process model for object tracking.

Notifications You must be signed in to change notification settings

askmuhsin/unscented-kalman-filter

Repository files navigation

Unscented-Kalman-Flter

Implementation of UKF on a CTRV (Constant Turn Rate and Velocity) process model for object tracking. The UKF is a powerful technique for performing recursive nonlinear estimations. Compared to Extended Kalman filter, UKF uses a derivative-free approach. UKF is also more accurate than the Extended Kalman Filter and has an equivalent computational complexity.

More on UKF

EKF implimentation of a similar project


Build Instruction

  1. Clone this repo and cd into it.
  2. mkdir build && cd build
  3. cmake ..
  4. make
  5. Run : ./UnscentedKF

Note: This project requires the Udacity open source simulator : Udacity term 2 sim


Dependencies

  • cmake >= 3.5

  • make >= 4.1 (Linux, Mac), 3.81 (Windows)

  • gcc/g++ >= 5.4


    Result

    The make file runs without any errors. The RMSE for dataset 1 is as follows :

    Input MSE
    px 0.0701
    py 0.0839
    vx 0.3446
    vy 0.2293

    The RMSE for same dataset running EKF :

    Input MSE
    px 0.0974
    py 0.0855
    vx 0.4517
    vy 0.4404

    NIS (normalized innovation squared) was used for optimizing the noise parameters. NIS of liadar and radar measurements visualized: LIDAR-NIS

    RADAR_NIS

    ScreenCapture

    TODO

    • finish control flow
    • achieve acceptable rmse

About

Implementation of UKF on a CTRV (Constant Turn Rate and Velocity) process model for object tracking.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages