This is the project repo for the Autonomous Wizards team from the inaugural (July 7th - October 16th, 2017) cohort of the Udacity Self Driving Car Engineer Nanodegree final & capstone project for said Nanodegree, alternately titled "System Integration" & "Programming a Real Self Driving Car". For more information about the project, see the project introduction here--note: massive "paywall", you have to be registered for the 3rd Term of said Nanodegree, total cost for said activity being $2400, plus having passed the prior two terms / 10 projects.
A video showing a complete run of the virtual track in the simulator by our current--as of October 10th, 2017--version of our repo can be found here, at this link to YouTube video--or just <ctrl>click (to open in a new tab) on thumbail below, same link
Introducing Team Autonomous Wizards (Members in alphabetical order):
Juan Carlos Ortiz [email protected]
Chuck S. [email protected]
Ezra J. Schroeder [email protected]
Christian Sousa [email protected]
Calvenn Tsuu [email protected]
-
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 127.0.0.1:4567:4567 -v $PWD:/capstone -v /tmp/log:/root/.ros/ --rm -it capstone
- Clone the project repository
git clone https://github.com/seneca-wolf/CarND-Capstone
- Install python dependencies (Please note: if you do not have ROS installed / experience w/ ROS it may interfere w/ your [e.g. conda] python distributions & environments, which is why Udacity uses a specific preconfigured Virtual Machine for the Capstone project). Also, please note that the setup here (particularly in item 3, below) are different than for the original Udacity repo for this project. C.f. the changelog.txt file maintained by Chuck.
cd CarND-Capstone
pip install -r requirements.txt
- Make and run styx
cd ros
cd src
catkin_init_workspace
cd ..
catkin_make
source devel/setup.bash
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