Schedule
Texbooks
S is Computer Vision: Algorithms and Applications by Richard Szeliski, which can be found here.
H&Z is Multiple View Geometry in Computer Vision by Richard Hartley and Andrew Zisserman, which is available from the UM Library (Login required).
ESL is Elements of Statistical Learning by Hastie, Tibshirani, and Friedman, which can be found here
All slides for this course were adapted from the Fall 2019 iteration of this course, taught by David Fouhey.
Event | Date | Description | Course Materials |
---|---|---|---|
Lecture 1 | Thursday January 9 |
Introduction
Computer vision overview Course logistics |
[slides (pdf)]
[slides (pptx)] |
Lecture 2 | Tuesday January 14 |
Cameras I
Pinhole camera Homogenous coordinates Intrinsic / Extrinsic matrices |
[slides (pdf)]
[slides (pptx)] [Reading: S 2.1] [Reading: H&Z 2, 6] |
Lecture 3 | Thursday January 16 |
Cameras II
Thin lens model Depth of field |
[slides (pdf)]
[slides (pptx)] |
Lecture 4 | Tuesday January 21 |
Light and Shading
Human vision Color vision Color spaces Diffuse and Specular Reflection |
[slides (pdf)]
[slides (pptx)] [Reading: S2.2, S2.3] |
Lecture 5 | Thursday January 23 |
Math Review I
Floating point numbers Vectors, Matrices |
[slides (pdf)]
[slides (pptx)] |
Lecture 6 | Tuesday January 28 |
Math Review II
Matrices, Vectorization Linear Algebra |
[slides (pdf)]
[slides (pptx)] |
HW0 Due | Wednesday January 29 |
Homework 0 Due | [HW0] |
Lecture 7 | Thursday January 30 |
Math III + Image Filtering
Eigenvalues, Eigenvectors Least Squares Singular Values Derivatives Linear Filters |
[slides (pdf)]
[slides (pptx)] [Reading: S3.2] |
Lecture 8 | Tuesday February 4 |
Image Filtering II
Blur and sharpening filters Separable filters Image Gradients |
[slides (pdf)]
[slides (pptx)] [Reading: S3.2] |
HW1 Due | Wednesday February 5 |
Homework 1 Due | [HW1] |
Lecture 9 | Thursday February 6 |
Edge and Corner Detection
Edge detection Gaussian Derivative filter Harris Corner detector |
[slides (pdf)]
[slides (pptx)] [Reading: S4.1] |
Lecture 10 | Tuesday February 11 |
Image Descriptors
Scale-space pyramid Laplacian blob detectors SIFT descriptors |
[slides (pdf)]
[slides (pptx)] [Reading: S4.1] |
Lecture 11 | Thursday February 13 |
Transformations I
Linear Regression Total Linear Regression RANSAC Hough Transform |
[slides (pdf)]
[slides (pptx)] [Reading: S2.1, S6] |
Lecture 12 | Tuesday February 18 |
Transformations II
Affine, Projective transforms Fitting transforms |
[slides (pdf)]
[slides (pptx)] [Reading: S2.1, S6] |
HW2 Due | Wednesday February 19 |
Homework 2 Due | [HW2] |
Lecture 13 | Thursday February 20 |
Intro to Machine Learning
Image warping / blending Supervised vs Unsupervised learning Train / Test splits Linear Regression Regularization |
[slides (pdf)]
[slides (pptx)] |
Lecture 14 | Tuesday February 25 |
Linear Models
Cross-Validation K-Nearest Neighbors SVM loss Cross-Entropy loss |
[slides (pdf)]
[slides (pptx)] [CS231n Linear Classification] |
Lecture 15 | Thursday February 27 |
Optimization
Stochastic Gradient Descent SGD + Momentum |
[slides (pdf)]
[slides (pptx)] [CS231n Optimization] |
Tuesday March 3 |
Spring Break | ||
HW3 Due | Wednesday March 4 |
Homework 3 Due | [HW3] |
Thursday March 5 |
Spring Break | ||
Lecture 16 | Tuesday March 10 |
Neural Networks
Overfitting / Underfitting Bias / Variance tradeoff Fully-connected neural networks Biological neurons |
[slides (pdf)]
[slides (pptx)] [CS231n Neural Networks] |
Wednesday March 11 |
Project Proposal Due | ||
Thursday March 12 |
No Class | ||
Lecture 17 | Tuesday March 17 |
Backpropagation
Computational Graphs Backpropagation Matrix multiplication example |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] [231n Backpropagation] [Backprop for Matrix Multiply] [Olah on Backprop] [Nielsen on Backprop] |
Lecture 18 | Thursday March 19 |
Convolutional Networks
Convolution Pooling Batch Normalization |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] [231n ConvNets] [Goodfellow, Chapter 9] |
Lecture 19 | Tuesday March 24 |
CNN Architectures
AlexNet, VGG, ResNet Size vs Accuracy Neural Architecture Search |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] [AlexNet paper] [VGG paper] [GoogLeNet paper] [ResNet paper] |
Lecture 20 | Thursday March 26 |
Training Neural Networks I
Activation Functions Data preprocessing Weight initialization Data Augmentation Regularization |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] [231n Training I] |
Lecture 21 | Tuesday March 31 |
Training Neural Networks II
Learning rate schedules Hyperparameter optimization Model ensembles Transfer learning Large-batch training |
[video (EECS 498/598)]
[slides (from EECS 498/598)] [231n Training II] [Karpathy "Recipe for Training"] |
HW4 Due | Wednesday April 1 |
Homework 4 Due | [HW4] |
Lecture 22 | Thursday April 2 |
Object Detection
Single-Stage detectors Two-Stage detectors |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] |
Lecture 23 | Tuesday April 7 |
Image Segmentation
Semantic segmentation Intance segmentation Keypoint estimation |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] |
Wednesday April 8 |
Progress Report Due | ||
Lecture 24 | Thursday April 9 |
3D Shape Prediction
3D shape representations Depth estimation 3D shape prediction Voxels, Pointclouds, SDFs, Meshes |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] |
Lecture 25 | Tuesday April 14 |
Video Models
Video classification Early / Late fusion 3D CNNs Two-stream networks |
[video (from EECS 498/598)]
[slides (from EECS 498/598)] |
HW5 Due | Wednesday April 15 |
Homework 5 Due | [HW5] |
Wednesday April 22 |
Final Report Due |