This project is a part of:
and it's basing on CarND-Extended-Kalman-Filter-Project github repository.
This project utilizes a kalman filter to estimate the state of a moving object of interest with:
- noisy lidar measurements
- noisy radar measurements.
This project involves the Term 2 Simulator.
- mkdir build
- cd build
- cmake ..
- make
- ./ExtendedKF
- cmake >= 3.5
- All OSes: click here for installation instructions
- make >= 4.1 (Linux, Mac), 3.81 (Windows)
- Linux: make is installed by default on most Linux distros
- Mac: install Xcode command line tools to get make
- Windows: Click here for installation instructions
- gcc/g++ >= 5.4
- Linux: gcc / g++ is installed by default on most Linux distros
- Mac: same deal as make - install Xcode command line tools
- Windows: recommend using MinGW
The code follows standards of applying Kalman Filter which contain:
- Initialization step
- Prediction step
- Update step
The data that is received comes from two sources:
- Laser
- Radar
Those two sources differ in terms of:
- Coordinate system (cartesian vs polar)
- Data (position vs position with speed)
That's why different transofmarions were applied for those two sources. The algorithm itself tires to combine measurment and prediction in terms of gaussian probability. More lecture about the theory can be viewed here.
The error was checked in terms of RMSE (Root Mean Squared Error) on Dataset1 and Dataset2 from "Term 2 Simulator" mentioned above.
The results on Dataset1:
- X: 0.0974
- Y: 0.0855
- VX: 0.4517
- VY: 0.4404
The results on Dataset2:
- X: 0.0726
- Y: 0.0965
- VX: 0.4216
- VY: 0.4932