Fall 2023 CS 543/ECE 549: Computer Vision

Instructor

D.A. Forsyth --- 3310 Siebel Center

webpage email: (daf -at- illinois.edu)

Note As to email, you may need to be get lucky or be persistent. I get a ton of the stuff, mostly to do with herbal supplements, and often miss things

Office Hours: Wed: 13h00-14h00

Lecture Time: MW 11h00-12h15 mostly at 1404 Siebel

Office Hour Procedures

We will conduct office hours through zoom. Students can access the Zoom link here. We will use a queue. Students should submit questions when the queue is open and join the zoom. They should then wait for their turn. The TA might answer queries out of order  in the zoom or in a breakout room depending on the question. Discussing individual homework solutions will generally happen in breakout rooms. Some queries in an office hour might remain unanswered because of the time constraint. These will be moved to the next office hour automatically by the queuing system

  • Shivansh Patel email: sp58@illinois.edu Office hours: Tue, 11h00-12h00
  • Ayush Sarkar email: ayushs2@illinois.edu Office hours: Fri, 14h00-15h00
  • Mingtong Zhang email: mz62@illinois.edu Office hours: Mon, 09h00-10h00
  • Shuhong Zheng email: szheng36@illinois.edu Office hours: Thu, 15h00-16h00
DAF photo of Bob Thorpe at 55 m at The Bluffs, Lake MI
Other times and locations may be available.

Quick links:

  • The planned schedule is below, but plans change...
  • Campuswire Correct link! (I think) but you should have received an email invitation (announcements and discussion)
  • Canvas Correct link! You should have had an email from Canvas (assignment submission and grades)
  • Mediaspace(lecture recordings - I believe this link is finally (!) now right!)

Contacting the course staff: For emergencies and special circumstances, please email the instructor. For questions about lectures and assignments, use Campuswire. 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: modelling and recognition. The key question in modelling is how to pass from pictures of the world to a model of the world. Usually, the model contains metric 3D information, but often it contains more -- surface properties, texture, and so on. There are many important cases. The key question in recognition is how to recover semantic information -- the categories of objects; the properties of objects; the names or behavior of people; and so on -- from pictures of the world. 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:

I reserve the right to change weights depending on events and my judgement.

  • 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

Course Policies

Be sure to read the course policies!

Warning: I will interpret these policies in what I take to be their spirit and intention. My intention is that you learn a lot about computer vision, and can display what you have learned in some detail and honestly.

Projected course schedule

Planned sequence of lectures, including intended exercises

Syllabus

I. Image processing and low-level vision
  • Image sampling, interpolation, transformations
  • 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. Image formation and geometric vision
  • Camera models
  • Light, shading and color
  • 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

Planned Schedule

I intend to follow something like this schedule

Resources

Credits

This course will follow closely the form established by Prof. Svetlana Lazebnik. The slides are very largely hers, too, though I will likely add some bits; likely, you'll be able to tell which bits I've added by a distinct dip in quality. The course web page very largely follows hers, too.