Udacity Self-Driving Car Nanodegree - Kidnapped Vehicle Project
This project implements a Particle Filter applied to a Kidnapped robot(car) problem. A simulator is provided by Udacity (it could be downloaded here). This simulator will generate noisy landmark observation from a car to the Particle Filter using WebSocket. The Particle Filter uses the uWebSockets WebSocket implementation to respond to this observation with the estimated car position. Udacity provides a seed project to start from on this project (here).
The project has the following dependencies (from Udacity's seed project):
- cmake >= 3.5
- make >= 4.1
- gcc/g++ >= 5.4
- Udacity's simulator.
For instructions on how to install these components on different operating systems, please, visit Udacity's seed project. As this particular implementation was done on Linux Ubuntu, the rest of this documentation will be focused on Linux.
In order to install the necessary libraries, use the install-xxxx.sh based on your operating system.
These are the suggested steps:
- Clone the repo and cd to it on a Terminal.
- Clone this repo.
- Make a build directory:
mkdir build && cd build
- Compile:
cmake .. && make
- Start the Simulator
- Run it by the following command:
./particle_filter
From the build directory, execute ./particle_filter
. The output should be:
Listening to port 4567
Connected!!!
In this project, Udacity's seed repo provides scripts to clean, compile and run it. These are the following commands you need to run from this repo directory
> ./clean.sh
> ./build.sh
> ./run.sh