Instructor: | Mohit Gupta (mohitg@cs.wisc.edu) |
Instructor office hours: | 10.45 am — 11.45 am (Central) on Tuesdays |
TAs: | Shantanu Gupta (sgupta@cs.wisc.edu) |
TA office hours: | 11.00 am — 12.00 pm (Central) on Wednesdays, or by appointment |
Mode: | Online. Lectures and administrative news will be shared on Canvas. |
Lecture hours: | (Synchronous) 9.30 am — 10.45 am, Tuesdays and Thursdays. |
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. |
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 MATLAB, 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 and MATLAB Refresher | ||
R, Sep 8 | Introduction and Fun with Optical Illusions | |
T, Sep 13 | MATLAB Tutorial 1 | HW-1 out |
R, Sep 15 | MATLAB Tutorial 2 | |
Image Formation and Filtering | ||
T, Sep 20 | Image Formation and Sensing | |
R, Sep 22 | Image Filtering | HW-1 due |
T, Sep 27 | Thinking about Images in the Fourier Domain | |
Feature Detection and Matching | ||
R, Sep 29 | Edge and Corner Detection | |
T, Oct 4 | Boundary Detection and Hough Transforms | HW-2 out |
R, Oct 6 | Video Boundary Detection using Active Contours | Project proposal due |
T, Oct 11 | 2D Object Recognition using SIFT | |
R, Oct 13 | Image Alignment: Image Transformations | |
Basics of Machine Learning | ||
T, Oct 18 | Image Alignment: RANSAC | HW-2 due, HW-3 out |
R, Oct 20 | Face Detection with Support Vector Machines | |
T, Oct 25 | Image Segmentation with k-Means Clustering and Mean-Shift | |
R, Oct 27 | Introduction to Neural Networks and Convolutional Neural Networks | |
3D Vision | ||
T, Nov 1 | Radiometry and Surface Appearance | |
R, Nov 3 | 3D Shape from Photometric Stereo | HW-3 due |
T, Nov 8 | Shape from Focus/Defocus | HW-4 out |
R, Nov 10 | Camera Calibration and Shape from Stereo | Project mid-term report due |
T, Nov 15 | Internet-Scale 3D Reconstruction | |
Motion | ||
R, Nov 17 | Optical Flow and Motion Measurement | |
T, Nov 22 | Background Subtraction and Image Tracking | HW-4 due, HW-5 out |
R, Nov 24 | no class (Thanksgiving) | |
Modern Cameras | ||
T, Nov 29 | Modern 3D Cameras: Structured Light and Time-of-Flight | |
R, Dec 1 | Advanced Topics: Computational Cameras | |
T, Dec 6 | Project Presentations | |
R, Dec 8 | Project Presentations | |
T, Dec 13 | Project Presentations | |
R, Dec 15 | Project Presentations | Project webpage due, HW-5 due |
Grading will be based on a 100 point system. There are three main components:
The course will consist of 5 MATLAB programming assignments.
We will have two lectures on getting started with MATLAB, and a walkthrough video on Canvas to help get MATLAB set up on your computer with the University's license. The first homework is a simple refresher on MATLAB.
The homework assignments will be:
Title | Out on | Due | Total points |
---|---|---|---|
HW 1 | September 13 | September 22 | 5 |
HW 2 | October 4 | October 18 | 16 |
HW 3 | October 18 | November 3 | 13 |
HW 4 | November 3 | November 22 | 7 |
HW 5 | November 22 | December 15 | 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.