This repository contains the results of Team "Wow That Was Fast"'s capstone project for the Udacity Self-Driving Car Engineer Nanodegree Program. The project utilizes Ubuntu Linux 14.04 with Robot Operating System (ROS) Indigo and/or Ubuntu Linux 16.04 with ROS Kinetic, the Udacity System Integration Simulator, and code written in C++ and Python to provide a System Integration solution to the self-driving car problem. The code developed will be tested on Udacity's real-world test vehicle (a Lincoln MKZ that the company has named "Carla") during December 2017.
Name | Location | ||
---|---|---|---|
Kyle Martin (Team Lead) |
Phoenix, Arizona | linkedin.com/in/kylemart | |
Farrukh Ali | Los Angeles, California | linkedin.com/in/farrukhtech | |
Michael Matthews | Sydney, Australia | linkedin.com/in/michael-matthews-59378933 | |
Daniel Kröhnert | Duesseldorf, Germany | linkedin.com/in/daniel-kröhnert-411235128 | |
Jordan Lee | Tucson, Arizona | linkedin.com/in/TBD |
-
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.
Build the docker container
docker build . -t capstone
Run the docker file
docker run -p 4567:4567 -v $PWD:/capstone -v /tmp/log:/root/.ros/ --rm -it capstone
- Clone the project repository
git clone https://github.com/kylemartin1/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