Fall 2021 CS 543/ECE 549: Computer Vision

Quick links: schedule, Piazza (announcements and discussion), Compass (assignment submission and grades), lecture recordings

Instructor: Svetlana Lazebnik  (slazebni -at- illinois.edu)
Lectures: W F 11:00-12:15 -- see Piazza for details

TAs: Mukesh Chugani (chugani2), Meha Goyal (mehagk2), Ryan Marten (marten4), Yuan Shen (yshen47)

Instructor and TA office hours: TBA

Contacting the course staff: For emergencies and special circumstances, please email the instructor. For questions about lectures and assignments, use Piazza. For questions about your scores (including regrade requests), email the responsible TAs.

Overview

In the simplest terms, computer vision is the discipline of "teaching machines how to see." This field dates back more than fifty years, but the recent explosive growth of digital imaging and machine learning technologies makes the problems of automated image interpretation more exciting and relevant than ever. There are two major themes in the computer vision literature: 3D geometry and recognition. The first theme is about using vision as a source of metric 3D information: given one or more images of a scene taken by a camera with known or unknown parameters, how can we go from 2D to 3D, and how much can we tell about the 3D structure of the environment pictured in those images? The second theme, by contrast, is all about vision as a source of semantic information: can we recognize the objects, people, or activities pictured in the images, and understand the structure and relationships of different scene components just as a human would? This course will provide a coherent perspective on the different aspects of computer vision, and give students the ability to understand state-of-the-art vision literature and implement components that are fundamental to many modern vision systems.

Prerequisites: Basic knowledge of probability, linear algebra, and calculus. Python programming experience and previous exposure to image processing are highly desirable.

Recommended textbooks: Grading scheme:
  • Programming assignments: 50%
    • Five MPs, done individually, in Python
  • Final project: 30%
    • Groups of two to four; deliverables include proposal, intermediate progress report, final report
  • Unit quizzes: 20%
    • Four multiple-choice online quizzes on the four units from the syllabus below
  • Participation: up to 3% extra credit
    • Students can get extra credit for actively participating in class, on Piazza, or during office hours
  Be sure to read the course policies!

Syllabus

I. Image formation and low-level vision
  • Camera models
  • Light and color
  • Linear filters and edges
  • Feature extraction
  • Optical flow and feature tracking
II. Grouping and fitting
  • Least squares fitting, robust fitting
  • RANSAC
  • Alignment, image stitching
III. Geometric vision
  • Camera calibration
  • Epipolar geometry
  • Two-view and multi-view stereo
  • Structure from motion
IV. Recognition and beyond
  • Statistical learning framework
  • Image classification
  • Deep learning
  • Object detection
  • Segmentation
  • Advanced topics (depending on time, student interest, and instructor choice): image generation and manipulation, deep learning for 3D vision, vision and language, video

Schedule (tentative)

Date Topic Readings (F&P 2nd ed.), assignments
August 25 Introduction: PPTX, PDF Homework: Assignment 0
August 27 Perspective projection: PPTX, PDF Reading: F&P ch. 1
September 1 Cameras: PPTX, PDF  
September 3 Light and shading: PPTX, PDF Reading: F&P ch. 2
Assignment 0 due September 6
September 8 Color: PPTX, PDF Reading: F&P ch. 3
Homework: Assignment 1
September 10 Linear filtering: PPTX, PDF Reading: F&P ch. 4
September 15 Edge detection: PPTX, PDF Reading: F&P sec. 5.1-5.2
September 17 Corner detection: PPTX, PDF Reading: F&P sec. 5.3
September 22 SIFT keypoints: PPTX, PDF Reading: Distinctive image features from scale-invariant keypoints
Assignment 1 due September 23
September 24 Optical flow: PPTX, PDF Reading: F&P sec. 11.1
Homework: Assignment 2, project proposal
September 29 Fitting: PPTX, PDF Reading: F&P sec. 10.2-10.4, 22.1
October 1 Alignment: PPTX, PDF  
October 6 Alignment cont. (slides above) Reading: F&P sec. 12.1
Project proposals due October 7
October 8 Camera calibration: PPTX, PDF Reading: F&P ch. 1
October 13 Single-view modeling: PPTX, PDF Assignment 2 due October 14
October 15 Epipolar geometry: PPTX, PDF Reading: F&P sec. 7.1, H&Z ch. 9
Homework: Assignment 3
October 20 Structure from motion: PPTX, PDF Reading: F&P ch. 8
October 22 Two-view stereo: PPTX, PDF Reading: F&P ch. 7
October 27 Multi-view stereo: PPTX, PDF  
October 29 Intro to recognition: PPTX, PDF  
November 3 Intro to neural networks: PPTX, PDF Assignment 3 due November 4
November 5 Neural networks cont.  
November 10 Convolutional networks: PPTX, PDF Project progress reports due November 11
November 12 Convolutional networks cont. Homework: Assignment 4
November 17 Detection: PPTX, PDF  
November 19 Detection cont.  
December 1 Dense prediction: PPTX, PDF Assignment 4 due December 2
December 3 Generative networks, image-to-image translation: PPTX, PDF  
December 8 Transformers, other trends: PPTX, PDF Final project reports due December 13th

Resources