Skip to content

The Udacity Carla Project: Programming a Real Self-Driving Car with team members Andre Meeusen, Christian Marzahl, Haidyn Mcleod, Kamil Kindziuk and Punnu Phairatt.

Heych88/Udacity-CarND-Capstone

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This is the project repo for Programming a Real Self-Driving Car, using TensorFlow, ROS and OpenCV as part of the final project of the Udacity Self-Driving Car Nanodegree. For more information about the project, see the Udacity project repository here.

This project is the combined work of;

A video of the project in action using the simulator can be viewed here.

Capstone project in simulator action

Stop Light Detection Notebook

An ipython Notebook of the traffic light detection pipeline can be found in /ros/src/tl_detector/training/TrafficLightPipeline.ipynb here.

System Dependencies

Ubuntu

The code requires a workstation 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 a minimum:
    • 2 CPU
    • 2 GB system memory
    • 25 GB of free hard drive space

ROS

Follow these instructions to install ROS

Vehicle ROS Model

The Simulator uses the Dataspeed DBW model which can be found here here

Simulator

Download the Udacity Simulator for your host operating system from here.

If using a Virtual Machine, it is recommended to downloading the simulator for your host operating system and using this outside of the VM. You will be able to run code within the VM while running the simulator natively on the host using port forwarding on port 4567 for both the Host and Guest ports. For more information on how to set up port forwarding, see here.

Installation and setup

Docker Installation

Not required, but if you would prefer to use Docker to run the system, Install Docker from here

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

Build Instructions

  1. Clone the project repository
git clone https://github.com/Heych88/Udacity-CarND-Capstone.git
  1. Install python dependencies
cd Udacity-CarND-Capstone
pip install -r requirements.txt
  1. Make and build the code
cd ros
catkin_make
source devel/setup.sh

Running Code

  1. Run styx
roslaunch launch/styx.launch
  1. Run the simulator and untick the manual box in the top left of the screen. The car will now drive around the track, stopping at red lights, and you should arrive at a result similar to the below.

Simulator running

Real world testing

  1. Download training bag that was recorded on the Udacity self-driving car (a bag demonstrating the correct predictions in autonomous mode can be found here)
  2. Unzip the file
unzip traffic_light_bag_files.zip
  1. Play the bag file
rosbag play -l traffic_light_bag_files/loop_with_traffic_light.bag
  1. Launch your project in site mode
cd CarND-Capstone/ros
roslaunch launch/site.launch
  1. Confirm that traffic light detection works on real-life images

About

The Udacity Carla Project: Programming a Real Self-Driving Car with team members Andre Meeusen, Christian Marzahl, Haidyn Mcleod, Kamil Kindziuk and Punnu Phairatt.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Jupyter Notebook 74.7%
  • Python 10.4%
  • CMake 8.9%
  • C++ 5.9%
  • Shell 0.1%