Nanodegree Program
Self-driving cars are transformational technology, on the cutting-edge of robotics, machine learning and engineering. Learn the skills and techniques used by self-driving car teams at the most advanced technology companies in the world.
04Days07Hrs49Min02Sec
Estimated time5 Months
At 10 hours/week
Enroll bySeptember 21, 2022
Get access to the classroom immediately on enrollment
PrerequisitesPython, C++, Linear Algebra and Calculus
Built in partnership with
Self-Driving Car Engineer
5 months to complete
In this program, you will learn the techniques that power self-driving cars across the full stack of a vehicle’s autonomous capabilities. Using Deep Learning with radar and lidar sensor fusion, you will train the vehicle to detect and identify its surroundings to inform navigation.
Prerequisite knowledge
- Computer Vision
In this course, you will develop critical Machine Learning skills that are commonly leveraged in autonomous vehicle engineering. You will learn about the life cycle of a Machine Learning project, from framing the problem and choosing metrics to training and improving models. This course will focus on the camera sensor and you will learn how to process raw digital images before feeding them into different algorithms, such as neural networks. You will build convolutional neural networks using TensorFlow and learn how to classify and detect objects in images. With this course, you will be exposed to the whole Machine Learning workflow and get a good understanding of the work of a Machine Learning Engineer and how it translates to the autonomous vehicle context.
- Sensor Fusion
In this course, you will learn about a key enabler for self-driving cars: sensor fusion. Besides cameras, self-driving cars rely on other sensors with complementary measurement principles to improve robustness and reliability. Therefore, you will learn about the lidar sensor and its role in the autonomous vehicle sensor suite. You will learn about the lidar working principle, get an overview of currently available lidar types and their differences, and look at relevant criteria for sensor selection. Also, you will learn how to detect objects such as vehicles in a 3D lidar point cloud using a deep-learning approach and then evaluate detection performance using a set of state-of-the-art metrics. In the second half of the course, you will learn how to fuse camera and lidar detections and track objects over time with an Extended Kalman Filter. You will get hands-on experience with multi-target tracking, where you will learn how to initialize, update and delete tracks, assign measurements to tracks with data association techniques and manage several tracks simultaneously. After completing the course, you will have a solid foundation to work as a sensor fusion engineer on self-driving cars.
- Localization
In this course, you will learn all about robotic localization, from one-dimensional motion models up to using three-dimensional point cloud maps obtained from lidar sensors. You’ll begin by learning about the bicycle motion model, an approach to use simple motion to estimate location at the next time step, before gathering sensor data. Then, you’ll move onto using Markov localization in order to do 1D object tracking, as well as further leveraging motion models. From there, you will learn how to implement two scan matching algorithms, Iterative Closest Point (ICP) and Normal Distributions Transform (NDP), which work with 2D and 3D data. Finally, you will utilize these scan matching algorithms in the Point Cloud Library (PCL) to localize a simulated car with lidar sensing, using a 3D point cloud map obtained from the CARLA simulator.
- Planning
Path planning routes a vehicle from one point to another, and it handles how to react when emergencies arise. The Mercedes-Benz Vehicle Intelligence team will take you through the three stages of path planning. First, you’ll apply model-driven and data-driven approaches to predict how other vehicles on the road will behave. Then you’ll construct a finite state machine to decide which of several maneuvers your own vehicle should undertake. Finally, you’ll generate a safe and comfortable trajectory to execute that maneuver.
- Control
This course will teach you how to control a car once you have a desired trajectory. In other words, how to activate the throttle and the steering wheel of the car to move it following a trajectory described by coordinates. The course will cover the most basic but also the most common controller: the Proportional Integral Derivative or PID controller. You will understand the basic principle of feedback control and how they are used in autonomous driving techniques.
- Computer Vision
All our programs include:
Real-world projects from industry experts
With real-world projects and immersive content built in partnership with top-tier companies, you’ll master the tech skills companies want.
Technical mentor support
Our knowledgeable mentors guide your learning and are focused on answering your questions, motivating you, and keeping you on track.
Career services
You’ll have access to Github portfolio review and LinkedIn profile optimization to help you advance your career and land a high-paying role.
Flexible learning program
Tailor a learning plan that fits your busy life. Learn at your own pace and reach your personal goals on the schedule that works best for you.
Program offerings
project reviewers projects reviewedGet timely feedback on your projects.
reviewer rating
avg project review turnaround time
Mentors available to answer your questions.
- Support for all your technical questions
- Questions answered quickly by our team of technical mentors
1,400+ technical mentors
0.85 hours median response time
Learn with the best.
Learn with the best.
Thomas Hossler
Sr Deep Learning EngineerThomas is originally a geophysicist but his passion for Computer Vision led him to become a Deep Learning engineer at various startups. By creating online courses, he is hoping to make education more accessible. When he is not coding, Thomas can be found in the mountains skiing or climbing.
Antje Muntzinger
Self-Driving Car EngineerAntje Muntzinger is a technical lead for sensor fusion at Mercedes-Benz. She wrote her PhD about sensor fusion for advanced driver assistance systems and holds a diploma in mathematics. By educating more self-driving car engineers, she hopes to realize the dream of fully autonomous driving together in the future.
Andreas Haja
ProfessorAndreas Haja is an engineer, educator and autonomous vehicle enthusiast with a PhD in computer science. Andreas now works as a professor, where he focuses on project-based learning in engineering. During his career with Volkswagen and Bosch he developed camera technology and autonomous vehicle prototypes.
Aaron Brown
Senior AV Software EngineerAaron has a background in electrical engineering, robotics and deep learning. Currently working with Mercedes-Benz Research & Development as a Senior AV Software Engineer, he has worked as a Content Developer and Simulation Engineer at Udacity focusing on developing projects for self-driving cars.
Munir Jojo Verge
Lead Autonomous & AI Systems Developer at MITREBefore MITRE, Munir was a Motion Planning & Decision-Making Manager at Amazon. He also worked for a 2 Self-driving car companies and for WaltDisney Shanghai building TronLightcycle. Munir holds a B.Eng. in Aerospace, a M.S. in Physics, and a M.S. in Space Studies.
Mathilde Badoual
Fifth year PhD student at UC BerkeleyMathilde has a strong background in optimization and control, including reinforcement learning and has an engineering diploma from the electrical engineering school Supelec, in France. Previously she worked at Tesla in the energy and optimization team.
David Silver
Senior Software EngineerPrior to working as a Senior Software Engineer in the autonomous vehicle industry, David Silver led School of Autonomous Systems at Udacity. David was also a research engineer on the autonomous vehicle team at Ford. He has an MBA from Stanford, and a BSE in computer science from Princeton.
Enroll now - Maximum flexibility to learn at your own pace.
- Cancel anytime.
Best Value
for - access- Save an extra 0% vs. pay as you go.
- 5 months is the average time to complete this course.
- Switch to monthly price after if more time is needed.
- Cancel anytime.
Learn
Power self-driving vehicles by implementing detection, classification, prediction and path planning.
Average Time
On average, successful students take 5 months to complete this program.
Benefits include
- Real-world projects from industry experts
- Technical mentor support
- Career services
Program overview: Why should I take this program?
- Why should I enroll?
- What jobs will this program prepare me for?
- How do I know if this program is right for me?
- What is the difference between the Intro to Self-Driving Cars Nanodegree program and the Self-Driving Car Engineer Nanodegree program?
- Do I need to apply? What are the admission criteria?
- What are the prerequisites for enrollment?
- If I do not meet the requirements to enroll, what should I do?
- How is this Nanodegree program structured?
- How long is this Nanodegree program?
- Can I switch my start date? Can I get a refund?
- I have graduated from the Self-Driving Car Engineer Nanodegree program but I want to keep learning. Where should I go from here?
- What software and versions will I need in this program?
- Which libraries or languages are used in this program?