All Projects → udacity → Robond Rover Project

udacity / Robond Rover Project

Licence: mit
Project repository for the Unity rover search and sample return project.

Projects that are alternatives of or similar to Robond Rover Project

Limperg python
Repository with material for the Limperg Python course by Ties de Kok.
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Machine learning model
机器学习基本模型算法介绍(附加案例)
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Batchai
Repo for publishing code Samples and CLI samples for BatchAI service
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Naturallanguagerecommendations
Getting recommendations from natural language
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Western constellations atlas of space
Code, data, and instructions to map every star you can see from Earth
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Deep learning explorations
Codes and experiments while learning and exploring deep learning for personal curiosity by doing online courses, personal projects and work.
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Climatemodeling courseware
A collection of interactive lecture notes and assignments in Jupyter notebook format.
Stars: ✭ 119 (-1.65%)
Mutual labels:  jupyter-notebook
Hsbm topicmodel
Using stochastic block models for topic modeling
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Pytorch Rl
Tutorials for reinforcement learning in PyTorch and Gym by implementing a few of the popular algorithms. [IN PROGRESS]
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Drl Portfolio Management
CSCI 599 deep learning and its applications final project
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Chatbot Retrieval
Dual LSTM Encoder for Dialog Response Generation
Stars: ✭ 1,547 (+1178.51%)
Mutual labels:  jupyter-notebook
Research public
Quantitative research and educational materials
Stars: ✭ 1,776 (+1367.77%)
Mutual labels:  jupyter-notebook
Time Series Classification And Clustering With Reservoir Computing
Library for implementing reservoir computing models (echo state networks) for multivariate time series classification and clustering.
Stars: ✭ 120 (-0.83%)
Mutual labels:  jupyter-notebook
Yolov3 Point
从零开始学习YOLOv3教程解读代码+注意力模块(SE,SPP,RFB etc)
Stars: ✭ 119 (-1.65%)
Mutual labels:  jupyter-notebook
Models
Model zoo for genomics
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Bostonml
Stars: ✭ 120 (-0.83%)
Mutual labels:  jupyter-notebook
Keywords2vec
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Bobsql
demos, scripts, samples, and code from the two bobs who work at Microsoft on SQL Server
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Eeg Classification
This project was a joint effort with the neurology labs at UNL and UCD Anschutz to use deep learning to classify EEG data.
Stars: ✭ 121 (+0%)
Mutual labels:  jupyter-notebook
Multilstm
keras attentional bi-LSTM-CRF for Joint NLU (slot-filling and intent detection) with ATIS
Stars: ✭ 122 (+0.83%)
Mutual labels:  jupyter-notebook

Udacity - Robotics NanoDegree Program

Search and Sample Return Project

alt text

This project is modeled after the NASA sample return challenge and it will give you first hand experience with the three essential elements of robotics, which are perception, decision making and actuation. You will carry out this project in a simulator environment built with the Unity game engine.

The Simulator

The first step is to download the simulator build that's appropriate for your operating system. Here are the links for Linux, Mac, or Windows.

You can test out the simulator by opening it up and choosing "Training Mode". Use the mouse or keyboard to navigate around the environment and see how it looks.

Dependencies

You'll need Python 3 and Jupyter Notebooks installed to do this project. The best way to get setup with these if you are not already is to use Anaconda following along with the RoboND-Python-Starterkit.

Here is a great link for learning more about Anaconda and Jupyter Notebooks

Recording Data

I've saved some test data for you in the folder called test_dataset. In that folder you'll find a csv file with the output data for steering, throttle position etc. and the pathnames to the images recorded in each run. I've also saved a few images in the folder called calibration_images to do some of the initial calibration steps with.

The first step of this project is to record data on your own. To do this, you should first create a new folder to store the image data in. Then launch the simulator and choose "Training Mode" then hit "r". Navigate to the directory you want to store data in, select it, and then drive around collecting data. Hit "r" again to stop data collection.

Data Analysis

Included in the IPython notebook called Rover_Project_Test_Notebook.ipynb are the functions from the lesson for performing the various steps of this project. The notebook should function as is without need for modification at this point. To see what's in the notebook and execute the code there, start the jupyter notebook server at the command line like this:

jupyter notebook

This command will bring up a browser window in the current directory where you can navigate to wherever Rover_Project_Test_Notebook.ipynb is and select it. Run the cells in the notebook from top to bottom to see the various data analysis steps.

The last two cells in the notebook are for running the analysis on a folder of test images to create a map of the simulator environment and write the output to a video. These cells should run as-is and save a video called test_mapping.mp4 to the output folder. This should give you an idea of how to go about modifying the process_image() function to perform mapping on your data.

Navigating Autonomously

The file called drive_rover.py is what you will use to navigate the environment in autonomous mode. This script calls functions from within perception.py and decision.py. The functions defined in the IPython notebook are all included inperception.py and it's your job to fill in the function called perception_step() with the appropriate processing steps and update the rover map. decision.py includes another function called decision_step(), which includes an example of a conditional statement you could use to navigate autonomously. Here you should implement other conditionals to make driving decisions based on the rover's state and the results of the perception_step() analysis.

drive_rover.py should work as is if you have all the required Python packages installed. Call it at the command line like this:

python drive_rover.py

Then launch the simulator and choose "Autonomous Mode". The rover should drive itself now! It doesn't drive that well yet, but it's your job to make it better!

Note: running the simulator with different choices of resolution and graphics quality may produce different results! Make a note of your simulator settings in your writeup when you submit the project.

Project Walkthrough

If you're struggling to get started on this project, or just want some help getting your code up to the minimum standards for a passing submission, we've recorded a walkthrough of the basic implementation for you but spoiler alert: this Project Walkthrough Video contains a basic solution to the project!.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].