Git Product home page Git Product logo

carnd-term1-starter-kit's Introduction

CarND Term1 Starter Kit

Udacity - Self-Driving Car NanoDegree

Software for Term 1 of the Udacity Self-Driving Car Engineer Nanodegree. Python 3 is used for entirety of term 1.

There are two ways to get up and running:

  1. Anaconda Environment
  2. Docker

Anaconda

Install miniconda on your machine.

Next, setup the CarND term 1 environment.

To install:

git clone https://github.com/udacity/CarND-Term1-Starter-Kit.git
cd CarND-Term1-Starter-Kit
conda env create -f environment.yml

Verify that the carnd-term1 environment was created in your environments:

conda info --envs

If the carnd-term1 environment is not listed, make sure that the environment.yml file exists in your directory "..\CarND-Term1-Starter-Kit". If it does not exist there, the previous conda command (conda env create -f environment.yml) won't create the carnd-term1 environment. You can manually add the environment.yml file by downloading it from the git repository (https://github.com/udacity/CarND-Term1-Starter-Kit/) using your browser and adding the file to the directory "..\CarND-Term1-Starter-Kit". Perform the conda command "conda env create -f environment.yml" again if necessary.

To use:

# Enter the environment, should be called before you plan to work on a project (unless already active)
source activate carnd-term1
# Exit the environment
source deactivate

To cleanup downloaded libraries (remove tarballs, zip files, etc):

conda clean -tp

To uninstall the environment:

conda env remove -n carnd-term1

Install Tensorflow for GPU

The current setup only installs the CPU version of TensorFlow. If you wish to use the GPU version follow the instructions here.

Docker

Using Docker to run your code consists of the following:

  1. Install Docker on your computer
  2. Pull the precompiled Docker image from Docker Hub
  3. Run the image as a new container

You may also wish to run a [python module][doc/py_mod.md] or [ipython][doc/ipython.md].

Install Docker On Your Computer

Instructions for installation very by operating system and version.

OS Specific instructions can be found below:

Recommended Shell:

OS Docker System Shell Access Jupyter at
Linux Docker for Linux bash localhost:8888
MacOS >= 10.10.3 (Yosemite) Docker for Mac bash localhost:8888
MacOS >= 10.8 (Mountain Lion) Docker Toolbox for Max Docker Quickstart Terminal #DOCKERIP:8888
Windows 10 Pro, Enterprise, or Education Docker for Windows Windows PowerShell localhost:8888
Windows 7, 8, 8.1, or 10 Home Docker Toolbox for Windows Docker Quickstart Terminal #DOCKERIP:8888

Pull the Precompiled Docker Image from Docker Hub

A precompiled image with all dependencies required for the first term is available on Docker Hub.

Once you have docker working, pull the image using the following command:

docker pull udacity/carnd-term1-starter-kit

Run The Image as a New Container

In your shell, navigate to the directory of a project, e.g.

$ cd ~/src/CarND-LaneLines-P1

From within this directory, you are going to run a Jupyter server. In order to do this you must attach to the correct port and share a local volume.

The easiest way to share a local volume is via the pwd command, a shell command that prints the working directory. This command will be used differently based on your shell.

If you're using Windows PowerShell:

docker run -it --rm -p 8888:8888 -v ${pwd}:/src udacity/carnd-term1-starter-kit

If you're using bash or Docker Quickstart Terminal:

docker run -it --rm -p 8888:8888 -v `pwd`:/src udacity/carnd-term1-starter-kit

Let's break this down.

docker run is the command a startup and run a Docker container.

-it forces the container to run in the foreground (interactive mode) and provides an I/O to the container.

--rm removes the container once it stops running. It prevents the buildup of stale containers once you stop them from running.

-p 8888:8888 maps port 8888 on our local machine to port 8888 in the Docker container, this allows us to access port 8888 in the container by visiting localhost:8888.

-v ${pwd}:/src mounts the pwd (present working directory) to the /src directory in the container. Basically, this let's us access files from our local machine on the docker container.

udacity/carnd-term1-starer-kit is the name of the container to run.

To learn more about Docker visit the docs.

GPU support

The current image does not support GPU use. An image with GPU support is in the works although this would only work with a Linux base OS.

carnd-term1-starter-kit's People

Contributors

domluna avatar giladgressel avatar brok-bucholtz avatar joshuacook avatar mathieu-wang avatar mattharrington avatar nachtfuchs avatar

Watchers

Reinaldo Maslim avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.