Skip to content
Self-Driving Car Nanodegree Program Starter Code for the Unscented Kalman Filter Project
Jupyter Notebook C++ Other
Branch: master
Clone or download
Pull request Compare This branch is 4 commits ahead, 38 commits behind udacity:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ipynb_checkpoints
data
src
.gitignore
CMakeLists.txt
README.md
readme.txt
ukf-visualization.ipynb

README.md

Unscented Kalman Filter Project Starter Code

Self-Driving Car Engineer Nanodegree Program

In this project an Unscented Kalman Filter was used to track various objects given noisy lidar and radar measurement data. The UKF was able to succesfully fuse the two different kinds of measurements together even though lidar was in cartesian coordinates and radar was in polar. Although radar was not as accurate spatially as lidar, it could directly measure the velocity of objects.

UKF Performance on data

sample-laser-radar-measurement-data-1.txt

Parameters

std_a_ = 0.6;

std_yawdd_ = 0.6;

Accuracy - RMSE:

0.072281

0.0780509

0.586903

0.572921

NIS Laser Percent 1

NIS Radar Percent 0.833333

sample-laser-radar-measurement-data-2.txt

Parameters

std_a_ = 0.6;

std_yawdd_ = 0.6;

Accuracy - RMSE:

0.192021

0.188751

0.353605

0.499168

NIS Laser Percent 0.99

NIS Radar Percent 0.99

Visuals

All provided data samples can be visually inspected by using the included ukf-visualization jupyter notebook file which also includes graphs for LASER and RADAR NIS values.

Dependencies

  • cmake >= v3.5
  • make >= v4.1
  • gcc/g++ >= v5.4

Basic Build Instructions

  1. Clone this repo.
  2. Make a build directory: mkdir build && cd build
  3. Compile: cmake .. && make
  4. Run it: ./UnscentedKF path/to/input.txt path/to/output.txt. You can find some sample inputs in 'data/'.
    • eg. ./UnscentedKF ../data/sample-laser-radar-measurement-data-1.txt output.txt

Editor Settings

We've purposefully kept editor configuration files out of this repo in order to keep it as simple and environment agnostic as possible. However, we recommend using the following settings:

  • indent using spaces
  • set tab width to 2 spaces (keeps the matrices in source code aligned)

Code Style

Please stick to Google's C++ style guide as much as possible.

Generating Additional Data

This is optional!

If you'd like to generate your own radar and lidar data, see the utilities repo for Matlab scripts that can generate additional data.

Project Instructions and Rubric

This information is only accessible by people who are already enrolled in Term 2 of CarND. If you are enrolled, see the project page for instructions and the project rubric.

You can’t perform that action at this time.