A curated list of online courses and tutorials for a new student.
0. Autonomous Driving
If you are new to Autonomous Driving, it is better to start with an overview of the area. The most common approach is to read a review or survey papers to get your feet wet.
Survey Papers
- A Survey of Autonomous Driving: Common Practices and Emerging Technologies
- Autonomous Vehicles: State of the Art, Future Trends, and Challenges
- Autonomous Driving: Context and State-of-the-Art
- Autonomous Vehicle Implementation Predictions
Online Courses
- Self-Driving Cars Specialization by the University of Toronto through Coursera. You may audit the courses for free.
1. Intro
Programming
- Intro to Computer Science
- Intro to Python for Data Science
- Python for Data Science
Machine Learning
- Machine Learning by Andrew Ng
- Convolutional Neural Network
- Neural Networks and Deep Learning – Online book
- Machine Learning Crash Course by Google
- Artificial Neural Networks (ANN) – Concepts without equations
Robotics
- Artificial Intelligence for Robotics
Term Project
- A vehicular robot that runs in a maze.
2. ROS
Preparation for this term
We have to prepare an environment for this term. The following are the software packages.
- OS:
- Ubuntu 18.04 for ROS,
- Ubuntu 20.04 or above for ROS2
- ROS
- Melodic for Ubuntu 18.04
- Noetic for Ubuntu 20.04
- ROS2
- Foxy, Galactic, Rolling for Ubuntu 20.04, 20.04, and 22.04 respectively.
- Visual Studio Code ← IDE
- Git / GitHub ← Version control
Version Control
These are short courses. Their timelines are usually 3 weeks.
- Version Control with Git
- How to Use Git and GitHub
- GitHub & Collaboration
Deep Learning
- Deep Learning
- CS231n: Convolutional Neural Networks for Visual Recognition by Fei-Fei Li
Tutorials: not a course
- Keras as a simplified interface to TensorFlow: tutorial
- https://blog.keras.io/keras-as-a-simplified-interface-to-tensorflow-tutorial.html
- Very short tutorial: Keras Tensorflow tutorial: Practical guide from getting started to developing complex deep neural network
- 7 Steps to Mastering Deep Learning with Keras
Robotics
- Programming for Robotics – ROS by ETH Zurich
- MIT 6.S094: Deep Learning for Self-Driving Cars
Tutorials: not a course
- Tutorials by Justin Huang
Final Project
- Build a model car powered by ROS
3. Deep Learning
Deep Learning
- Practical Deep Learning for Coders
Robotics
- Gazebo
- Simulation
- Rviz
- Robot visualization
Final Project
- Donkey Car
4. ROS + Deep Learning = Autonomous Vehicle
Deep Learning
- Implement End-To-End Driving
Robotics
Final Project
- Jetson Autonomous RC Car
5. Build an Autonomous Vehicle Model
Final Project
- Interfacing a DBW car with ROS