Computer Vision

CSE P576 // Spring 2018

ai rendered image

Meeting Information

Lectures: Thursdays 6:30 - 9:20 pm, Johnson Hall (JHN) 075

Office Hours: Wednesdays 5:00 - 6:00 pm, CSE 674, or by appointment


Matthew Brown, Richard Newcombe, Rob Gens, David Rosen, Steven Lovegrove, Jonathan Huang, Jakob Engel, Yuting Ye

TAs: Tanner Schmidt (, Melody Su (

Course Description

A professional masters course in computer vision, emphasizing fundamentals of geometry and image formation as well as deep learning and image understanding. Covers low-level image processing, image geometry, motion and depth estimation, object recognition, deep learning and optimization techniques, and case studies of current research.


The grade is based on four projects. Each project will be a mix of coding and written answers. See the course overview below for handin dates. Late policy is as follows: Late assignments will be accepted up to 5 days after the deadline, but with 10% subtracted from the mark per day.


  1. Feature Extraction and Matching: Build an image feature matcher, starting with simple convolution operations.
  2. Panoramic Stitching: Implement a panorama stitcher using features, RANSAC and rotation estimation.
  3. Image Classification using CNNs (ipynb, html)
  4. Stereo Matching with ML: Perform block matching with learned cost volume filtering.
Useful Resources:

Course Overview

Week Date Topic Description
1 3/29 Introduction
Image Formation Geometric and Photometric Image Formation, Pinhole Camera, Lenses, Sensors, Colour, Gamma, DCT, Image Coding
Week 1 Notes
2 4/5 Filtering and Pyramids Linear + Non-linear filtering, Correlation, Convolution, Gaussian + Laplacian Pyramids, Sampling and Aliasing
Features and Matching Detection, Correspondence, Edges, Corners, Regions, Patch matching, SIFT, Shape Context, Learning Features
Week 2 Notes
Project 1 start
3 4/12 Planar Geometry Image Alignment, Linear and Projective Cameras + 2D Transforms
RANSAC Robust 2-view geometry estimation
Epipolar Geometry Epipolar Lines, Plane Constraint, Fundamental Matrix, Stereo Matching
Week 3 Notes
4 4/19 Multiview Geometry SFM/SLAM, 3D points, Camera Pose and Calibration, Bundle Adjustment
Optimization Noise Modelling, Non-L2 residuals, Convexity, Problem Solving
Project 2 start
4/22 Project 1 due
5 4/26 Camera Tracking Sparse vs dense, brightness constancy, optical flow, coarse to fine, lucas kanade, incremental rotation, dense tracking + mapping, ICP
Dense Reconstruction Stereo, disparity space, aggregation/block matching, plane sweep, baseline, denoising, depth priors, signed distance functions + depth fusion, voxel colouring
LucasKanade ipynb
PlaneSweep ipynb
6 5/3 Machine Learning for Vision Intro, inductive learning, decision trees, instance-based learning
Project 3 start (ipynb, html)
5/6 Project 2 due
7 5/10 Convolutional Neural Networks Neural Networks, Backpropagation, Convolutional Neural Nets, Training Neural Networks, Additional slides
8 5/17 Object Detection Sliding windows, detection with convnets, anchor regression+classification, SSD, Faster R-CNN, R-FCN, evaluation, IOU, AP, instance segmentation, keypoint detection
Depth Estimation Unsupervised Monocular Depth [Godard et al.]
Project 4 start
5/20 Project 3 due
9 5/24 Hand Tracking
Dense Reconstruction
SLAM SLAM+VO: (Jakob Engel) Direct/indirect, sparse/dense, DSO, ORB-SLAM, photometric calibration, practical tips, evaluation, analysis
10 5/31 History and Futurology
6/3 Project 4 due