| Mode: | Online. Lectures and administrative news will be shared on Canvas. |
| Lecture hours: | (Synchronous) 9:30 AM — 10:45 AM, Tuesdays and Thursdays. Access via Canvas Zoom Page |
| Discussion: | Piazza. A discussion thread will be created for each homework assignment. Please post all of your questions on the discussion board so that others may learn from your questions as well. Do not email the professor or TA directly with homework questions. |
| Mohit Gupta | Tuesdays, 11 am — 12 pm (Central), via Canvas Zoom Page |
|---|---|
| Aniket Rege | Wednesdays and Fridays, 9 am — 10 am. Remote via Canvas Zoom Page until September 23; in-person in Morgridge B2532 thereafter. |
| Sungjin Cheong | Wednesdays, 1 pm — 2 pm and Fridays, 2 pm — 3 pm, via Canvas Zoom Page |
The goal of computer vision is to compute properties of the three-dimensional world from digital images. Problems in this field include reconstructing the 3D shape of an environment, determining how things are moving, and recognizing people and objects and their activities, all through analysis of images and videos.
This course will provide an introduction to computer vision, including such topics as image formation, feature detection, motion estimation, image mosaics, 3D shape reconstruction, and object recognition. Applications of these techniques include building 3D maps, creating virtual characters, organizing photo and video databases, human computer interaction, video surveillance, and automatic vehicle navigation. This is a project-based course, in which you will implement several computer vision algorithms and do a final project on a research topic of your choice.
The course assumes a reasonable knowledge of linear algebra, calculus, and statistics, as a prerequisite. The programming assignments will be in Python, so a familiarity with it is essential. Please speak to the instructor if you are unsure of whether you can take the course.
| Class Date | Topic | Homeworks and project |
|---|---|---|
| Introduction | ||
| R, Sep 3 | Introduction and Fun with Optical Illusions | HW-1 Out |
| Image Formation and Filtering | ||
| T, Sep 8 | Image Formation and Sensing | |
| R, Sep 10 | Image Filtering | |
| T, Sep 15 | Thinking about Images in the Fourier Domain | HW-1 Due |
| Feature Detection and Matching | ||
| R, Sep 17 | Edge and Corner Detection | |
| T, Sep 22 | Boundary Detection and Hough Transforms | HW-2 out |
| R, Sep 24 | Video Boundary Detection using Active Contours | |
| T, Sep 29 | 2D Object Recognition using SIFT | Project proposal due |
| R, Oct 1 | Image Alignment: Image Transformations | |
| Basics of Machine Learning | ||
| T, Oct 6 | Image Alignment: RANSAC | HW-2 due, HW-3 out |
| R, Oct 8 | Face Detection with Support Vector Machines | |
| T, Oct 13 | Image Segmentation with k-Means Clustering and Mean-Shift | |
| R, Oct 15 | Introduction to Neural Networks and Convolutional Neural Networks | |
| 3D Vision | ||
| T, Oct 20 | Radiometry and Surface Appearance | |
| R, Oct 22 | 3D Shape from Photometric Stereo | HW-3 Due |
| T, Oct 27 | Shape from Focus/Defocus | |
| R, Oct 29 | Camera Calibration and Shape from Stereo | Project mid-term report due, HW-4 out |
| T, Nov 3 | Internet-Scale 3D Reconstruction | |
| Motion | ||
| R, Nov 5 | Optical Flow and Motion Measurement | |
| T, Nov 10 | Background Subtraction and Image Tracking | |
| Modern Cameras | ||
| R, Nov 12 | NO CLASS | HW-4 due, HW-5 out |
| T, Nov 17 | Modern 3D Cameras: Structured Light and Time-of-Flight | |
| R, Nov 19 | Advanced Topics: Computational Cameras | |
| T, Nov 24 | Advanced Topics: Quanta Computer Imaging | |
| R, Nov 26 | NO CLASS (Thanksgiving) | |
| T, Dec 1 | Project Presentations | HW-5 Due |
| R, Dec 3 | Project Presentations | |
| T, Dec 8 | Project Presentations | |
| R, Dec 10 | Project Presentations | Project webpage due |
Grading will be based on a 100 point system. There are three main components:
The course will consist of 5 Python programming assignments.
The first homework is introduction to image manipulation in Python.
The homework assignments will be:
| Title | Out on | Due | Total points |
|---|---|---|---|
| HW 1 | September 3 | September 15 | 5 |
| HW 2 | September 22 | October 6 | 16 |
| HW 3 | October 6 | October 22 | 13 |
| HW 4 | October 29 | November 12 | 7 |
| HW 5 | November 12 | December 1 | 14 |
Guidelines for completing home-work assignments are given here. Please read these carefully.
There will be two types of problems in homeworks: walkthroughs and challenges. Below is a brief description of each problem type:
You can use up to 7 late days over the whole semester without any grade penalty. Any further delays in any homework submission after your late days are up, will result in a penalty of 20% per late day.
You do not need to notify us when you use late days; we will count them ourselves at the end of the semester. Also note that late days are not rounded up, meaning that if you are only 20 minutes late for a deadline, you still have 6 days, 23 hours, and 40 minutes remaining (Canvas does this tracking automatically).
The final project is research-oriented. It can be a pure vision project or an application of vision technique in the student's own research area. Some example projects.
You should work on the project in groups of 2-3. You are expected to implement one (or more) related research papers, or think of some interesting novel ideas and implement them using the techniques discussed in class. Students are encouraged to propose their own project topics, subject to the instructor's approval.
There will be three checkpoints: a proposal, a mid-term report, and a final project webpage. Create a webpage for the project from the beginning. This page will include the proposal, the mid-term report, interesting implementation details, some results (e.g., images, videos, etc.), and so on. Your website should also include downloadable source and executable code. Do not modify the website after the due date of the "Project Webpage" assignment on Canvas.
This is calculated based on answers to the multiple-choice quizzes on Canvas. Grades depend only on participation, not on correctness.
The material covered in the course will be available in the presentation slides which will be fairly self-contained. The slides will be available on Canvas. An optional text-book reading is "Computer Vision: Algorithms and Applications", by Richard Szeliski.
This course follows the University of Wisconsin-Madison Code of Academic Integrity. Unless specifically authorized by the instructor, all coursework is to be done by the student working alone. Violations of the rules will not be tolerated.