This is the project repo for the final project of the Udacity Self-Driving Car Nanodegree: Programming a Real Self-Driving Car. For more information about the project, see the project introduction here.
Name | Udacity account email |
---|---|
Carlos Galvez (Team Lead) | carlosgalvezp (at) gmail.com |
Marko Sarkanj | marko.sarkanj (at) gmail.com |
Oren Meiri | oren.meiri (at) gmail.com |
Ivan Danov | ivan.geo.danov (at) gmail.com |
Follow these steps to setup the development/runtime environment without having to install any dependencies, except for Docker. NOTE: currently supported only on Linux and OSX.
-
Install dependencies:
- docker.
- nvidia-docker. Only supported on Ubuntu, to get GPU acceleration.
-
Build and run code on simulator (CPU only):
$ ./run.py
-
Build and run code on simulator, with GPU acceleration (Ubuntu only):
$ ./run.py --gpu
-
Build and run code using a
rosbag
:$ ./run.py --rosbag <path_to_rosbag>
-
Build and run code on Carla (GPU always enabled, Ubuntu only):
$ ./run.py --carla
Follow these steps to have a native installation (only supported on Ubuntu).
-
Be sure that your workstation is running Ubuntu 16.04 Xenial Xerus or Ubuntu 14.04 Trusty Tahir. Ubuntu downloads can be found here.
-
If using a Virtual Machine to install Ubuntu, use the following configuration as minimum:
- 2 CPU
- 2 GB system memory
- 25 GB of free hard drive space
The Udacity provided virtual machine has ROS and Dataspeed DBW already installed, so you can skip the next two steps if you are using this.
-
Follow these instructions to install ROS
- ROS Kinetic if you have Ubuntu 16.04.
- ROS Indigo if you have Ubuntu 14.04.
-
- Use this option to install the SDK on a workstation that already has ROS installed: One Line SDK Install (binary)
-
Download the Udacity Simulator.
- Clone the project repository
git clone https://github.com/udacity/CarND-Capstone.git
- Install python dependencies
cd CarND-Capstone
pip install -r requirements.txt
- Make and run styx
cd ros
catkin_make
source devel/setup.sh
roslaunch launch/styx.launch
- Run the simulator
- Download training bag that was recorded on the Udacity self-driving car (a bag demonstraing the correct predictions in autonomous mode can be found here)
- Unzip the file
unzip traffic_light_bag_files.zip
- Play the bag file
rosbag play -l traffic_light_bag_files/loop_with_traffic_light.bag
- Launch your project in site mode
cd CarND-Capstone/ros
roslaunch launch/site.launch
- Confirm that traffic light detection works on real life images