Visual Perception for Self-Driving Cars
Ends soon! Keep adding new skills with 10,000+ programs for $239 (usually $399). Save now.
Visual Perception for Self-Driving Cars
This course is part of Self-Driving Cars Specialization
45,811 already enrolled
Included with
Learn more
587 reviews
Recommended experience
587 reviews
Recommended experience
What you'll learn
Work with the pinhole camera model, and perform intrinsic and extrinsic camera calibration
Detect, describe and match image features and design your own convolutional neural networks
Apply these methods to visual odometry, object detection and tracking
Apply semantic segmentation for drivable surface estimation
Details to know
4 assignments
See how employees at top companies are mastering in-demand skills
Build your subject-matter expertise
- Learn new concepts from industry experts
- Gain a foundational understanding of a subject or tool
- Develop job-relevant skills with hands-on projects
- Earn a shareable career certificate
There are 7 modules in this course
Welcome to Visual Perception for Self-Driving Cars, the third course in University of Torontoβs Self-Driving Cars Specialization.
This course will introduce you to the main perception tasks in autonomous driving, static and dynamic object detection, and will survey common computer vision methods for robotic perception. By the end of this course, you will be able to work with the pinhole camera model, perform intrinsic and extrinsic camera calibration, detect, describe and match image features and design your own convolutional neural networks. You'll apply these methods to visual odometry, object detection and tracking, and semantic segmentation for drivable surface estimation. These techniques represent the main building blocks of the perception system for self-driving cars. For the final project in this course, you will develop algorithms that identify bounding boxes for objects in the scene, and define the boundaries of the drivable surface. You'll work with synthetic and real image data, and evaluate your performance on a realistic dataset. This is an advanced course, intended for learners with a background in computer vision and deep learning. To succeed in this course, you should have programming experience in Python 3.0, and familiarity with Linear Algebra (matrices, vectors, matrix multiplication, rank, Eigenvalues and vectors and inverses).
This module introduces the main concepts from the broad and exciting field of computer vision needed to progress through perception methods for self-driving vehicles. The main components include camera models and their calibration, monocular and stereo vision, projective geometry, and convolution operations.
What's included
4 videos4 readings1 discussion prompt
4 videosβ’Total 18 minutes
- Welcome to the Self-Driving Cars Specialization!β’6 minutes
- Welcome to the courseβ’5 minutes
- Meet the Instructor, Steven Waslanderβ’6 minutes
- Meet the Instructor, Jonathan Kellyβ’2 minutes
4 readingsβ’Total 60 minutes
- Course Prerequisitesβ’15 minutes
- How to Use Discussion Forumsβ’15 minutes
- How to Use Supplementary Readings in This Courseβ’15 minutes
- Recommended Textbooksβ’15 minutes
1 discussion promptβ’Total 30 minutes
- Get to Know Your Classmatesβ’30 minutes
This module introduces the main concepts from the broad field of computer vision needed to progress through perception methods for self-driving vehicles. The main components include camera models and their calibration, monocular and stereo vision, projective geometry, and convolution operations.
What's included
6 videos4 readings1 assignment1 programming assignment2 ungraded labs
6 videosβ’Total 43 minutes
- Lesson 1 Part 1: The Camera Sensorβ’7 minutes
- Lesson 1 Part 2: Camera Projective Geometryβ’8 minutes
- Lesson 2: Camera Calibrationβ’7 minutes
- Lesson 3 Part 1: Visual Depth Perception - Stereopsisβ’8 minutes
- Lesson 3 Part 2: Visual Depth Perception - Computing the Disparityβ’6 minutes
- Lesson 4: Image Filteringβ’7 minutes
4 readingsβ’Total 90 minutes
- Supplementary Reading: The Camera Sensorβ’30 minutes
- Supplementary Reading: Camera Calibrationβ’15 minutes
- Supplementary Reading: Visual Depth Perceptionβ’30 minutes
- Supplementary Reading: Image Filteringβ’15 minutes
1 assignmentβ’Total 30 minutes
- Module 1 Graded Quizβ’30 minutes
1 programming assignmentβ’Total 90 minutes
- (Submission) Applying Stereo Depth to a Driving Scenarioβ’90 minutes
2 ungraded labsβ’Total 180 minutes
- Practice Assignment: Applying Stereo Depth to a Driving Scenarioβ’120 minutes
- (Solution) Applying Stereo Depth to a Driving Scenarioβ’60 minutes
Visual features are used to track motion through an environment and to recognize places in a map. This module describes how features can be detected and tracked through a sequence of images and fused with other sources for localization as described in Course 2. Feature extraction is also fundamental to object detection and semantic segmentation in deep networks, and this module introduces some of the feature detection methods employed in that context as well.
What's included
6 videos5 readings1 programming assignment1 ungraded lab
6 videosβ’Total 44 minutes
- Lesson 1: Introduction to Image features and Feature Detectorsβ’7 minutes
- Lesson 2: Feature Descriptorsβ’7 minutes
- Lesson 3 Part 1: Feature Matchingβ’7 minutes
- Lesson 3 Part 2: Feature Matching: Handling Ambiguity in Matchingβ’5 minutes
- Lesson 4: Outlier Rejectionβ’8 minutes
- Lesson 5: Visual Odometryβ’10 minutes
5 readingsβ’Total 85 minutes
- Supplementary Reading: Feature Detectors and Descriptorsβ’30 minutes
- Supplementary Reading: Feature Matchingβ’15 minutes
- Supplementary Reading: Feature Matchingβ’15 minutes
- Supplementary Reading: Outlier Rejectionβ’15 minutes
- Supplementary Reading: Visual Odometryβ’10 minutes
1 programming assignmentβ’Total 150 minutes
- Visual Odometry for Localization in Autonomous Drivingβ’150 minutes
1 ungraded labβ’Total 150 minutes
- Visual Odometry for Localization in Autonomous Drivingβ’150 minutes
Deep learning is a core enabling technology for self-driving perception. This module briefly introduces the core concepts employed in modern convolutional neural networks, with an emphasis on methods that have been proven to be effective for tasks such as object detection and semantic segmentation. Basic network architectures, common components and helpful tools for constructing and training networks are described.
What's included
6 videos6 readings1 assignment
6 videosβ’Total 58 minutes
- Lesson 1: Feed Forward Neural Networksβ’10 minutes
- Lesson 2: Output Layers and Loss Functionsβ’11 minutes
- Lesson 3: Neural Network Training with Gradient Descentβ’11 minutes
- Lesson 4: Data Splits and Neural Network Performance Evaluationβ’8 minutes
- Lesson 5: Neural Network Regularizationβ’9 minutes
- Lesson 6: Convolutional Neural Networksβ’9 minutes
6 readingsβ’Total 80 minutes
- Supplementary Reading: Feed-Forward Neural Networksβ’15 minutes
- Supplementary Reading: Output Layers and Loss Functionsβ’15 minutes
- Supplementary Reading: Neural Network Training with Gradient Descentβ’15 minutes
- Supplementary Reading: Data Splits and Neural Network Performance Evaluationβ’10 minutes
- Supplementary Reading: Neural Network Regularizationβ’15 minutes
- Supplementary Reading: Convolutional Neural Networksβ’10 minutes
1 assignmentβ’Total 30 minutes
- Feed-Forward Neural Networksβ’30 minutes
The two most prevalent applications of deep neural networks to self-driving are object detection, including pedestrian, cyclists and vehicles, and semantic segmentation, which associates image pixels with useful labels such as sign, light, curb, road, vehicle etc. This module presents baseline techniques for object detection and the following module introduce semantic segmentation, both of which can be used to create a complete self-driving car perception pipeline.
What's included
4 videos4 readings1 assignment
4 videosβ’Total 52 minutes
- Lesson 1: The Object Detection Problemβ’15 minutes
- Lesson 2: 2D Object detection with Convolutional Neural Networksβ’11 minutes
- Lesson 3: Training vs. Inferenceβ’11 minutes
- Lesson 4: Using 2D Object Detectors for Self-Driving Carsβ’14 minutes
4 readingsβ’Total 120 minutes
- Supplementary Reading: The Object Detection Problemβ’15 minutes
- Supplementary Reading: 2D Object detection with Convolutional Neural Networksβ’30 minutes
- Supplementary Reading: Training vs. Inferenceβ’45 minutes
- Supplementary Reading: Using 2D Object Detectors for Self-Driving Carsβ’30 minutes
1 assignmentβ’Total 30 minutes
- Object Detection For Self-Driving Carsβ’30 minutes
The second most prevalent application of deep neural networks to self-driving is semantic segmentation, which associates image pixels with useful labels such as sign, light, curb, road, vehicle etc. The main use for segmentation is to identify the drivable surface, which aids in ground plane estimation, object detection and lane boundary assessment. Segmentation labels are also being directly integrated into object detection as pixel masks, for static objects such as signs, lights and lanes, and moving objects such cars, trucks, bicycles and pedestrians.
What's included
3 videos3 readings1 assignment
3 videosβ’Total 31 minutes
- Lesson 1: The Semantic Segmentation Problemβ’8 minutes
- Lesson 2: ConvNets for Semantic Segmentationβ’11 minutes
- Lesson 3: Semantic Segmentation for Road Scene Understandingβ’11 minutes
3 readingsβ’Total 90 minutes
- Supplementary Reading: The Semantic Segmentation Problemβ’30 minutes
- Supplementary Reading: ConvNets for Semantic Segmentationβ’30 minutes
- Supplementary Reading: Semantic Segmentation for Road Scene Understandingβ’30 minutes
1 assignmentβ’Total 20 minutes
- Semantic Segmentation For Self-Driving Carsβ’20 minutes
The final module of this course focuses on the implementation of a collision warning system that alerts a self-driving car about the position and category of obstacles present in their lane. The project is comprised of three major segments: 1) Estimating the drivable space in 3D, 2) Semantic Lane Estimation and 3) Filter wrong output from object detection using semantic segmentation.
What's included
4 videos1 programming assignment1 discussion prompt1 ungraded lab
4 videosβ’Total 24 minutes
- Project Overview: Using CARLA for object detection and segmentationβ’6 minutes
- Final Project Hintsβ’6 minutes
- Final Project Solution [LOCKED]β’9 minutes
- Congratulations for completing the course!β’3 minutes
1 programming assignmentβ’Total 180 minutes
- Environment Perception For Self-Driving Carsβ’180 minutes
1 discussion promptβ’Total 15 minutes
- Your Learning Journeyβ’15 minutes
1 ungraded labβ’Total 180 minutes
- Environment Perception For Self-Driving Carsβ’180 minutes
Earn a career certificate
Add this credential to your LinkedIn profile, resume, or CV. Share it on social media and in your performance review.
Instructors
Offered by
Explore more from Software Development
- Status: Free TrialU
University of Toronto
Course
- Status: Free TrialU
University of Toronto
Course
- Status: Free TrialU
University of Toronto
Course
- Status: Free TrialC
Columbia University
Course
Why people choose Coursera for their career
Learner reviews
- 5 stars
77.55%
- 4 stars
16.32%
- 3 stars
3.91%
- 2 stars
0.68%
- 1 star
1.53%
Showing 3 of 587
Reviewed on Oct 17, 2021
This is EPIC. Love the profs for splitting it down to such easy to understand sections
Reviewed on Mar 18, 2025
it was good, but it could be more in depth. what provided in the course was just the tip of the iceberg.
Reviewed on Mar 24, 2019
Good intro for those with not much experience w/ image processing/computer vision w.r.t. autonomous driving.
Frequently asked questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you canβt afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, youβll find a link to apply on the description page.
More questions
Financial aid available,
