Fall 22 - Introduction to Computer Vision
- Course title:
EE 379K: Introduction to Computer Vision
- Term:
Fall 2022
- Meeting times and location:
TR 5:00-6:30pm (ETC 2.136)
- After-class platform:
Slack (link sent to registered students)
- Video recording:
No (fully in-person)
Course Description and Prerequisites
Computer vision (CV) is the discipline of “teaching machines how to see”: it makes sense of photographs, video, and other imagery. Applications include analysis of medical images, automated quality inspection, entertainment, vehicle safety, security, and HCI, among many others. This course offers a gentle introduction to computer vision, including image formation, camera imaging geometry, feature detection and matching, stereo, motion estimation and tracking, image classification and scene understanding. Both classical and the latest deep learning approaches will be covered.
The students will digest and practice their knowledge and skills by both homework and a midterm exam. They will also obtain in-depth experience with a particular topic through a final project. There will be no final exam.
Students should have taken the following courses or equivalent: Algorithms (EE 360C or CS 314/314H), Linear Systems and Signals (EE313 or BME 343), Probability and Random Processes (EE 351K or BME 335 or MATH 362K). Solid Knowledge of Linear Algebra will be instrumental to this course.
Coding experiences with Python are assumed. Previous knowledge of C/C++, MATLAB, or PyTorch/Tensorflow is very helpful, but not necessary.
Instructor Information
- Name:
Dr. Zhangyang (Atlas) Wang
- Telephone number:
512-471-1866
- Email address:
- Office hour time:
Tuesday 10:00am - 11:00am
- Office hour location:
EER 6.886 (instructor office)
TA Information
- TA 1 Name:
- Email address:
- Office hour time:
Monday 4:00pm - 5:00pm
- Office hour location:
outside EER O’s Campus Café, outdoor seating area
- TA 2 Name:
- Email address:
- Office hour time:
Friday 4:00pm - 5:00pm
- Office hour location:
outside EER O’s Campus Café, outdoor seating area
Textbook and/or Resource Material
This course does not follow any textbook closely. Among many recommended readings are:
- Computer Vision: Algorithms and Applications, Richard Szeliski (2010). 【Most Recommended for CV beginners】
-
First Principles of Computer Vision (YouTube Lecture), Shree Nayar (2021). 【Classical CV topics, especially non-ML】
-
Pattern Recognition and Machine Learning, Christopher M. Bishop (2006).【Classical ML】
-
Deep Learning, Ian Goodfellow, Yoshua Bengio and Aaron Courville (2016).
-
Diving into Deep Learning, Aston Zhang, Zack Lipton, Mu Li and Alex Smola (2019).
Grading Policies
Grading will be based on homework (20%; there will be 4 assignments), one mid-term exam (30%), and one final project (50%) (proposal 10% + mid-report 10% + presentation 5% + final report 15% + code review 10%).
-
One project to receive the Best Project Award, voted by all class members. (+5%)
-
Projects in the novel, interdisciplinary domains (some examples: 5G/6G telecommunication, brain-computer interface, economics & markets, COVID-19, etc.), judged by the instructor. (+2%)
-
For late submission, each additional late day will incur a 10% penalty.
-
Request for re-grading an assignment must be made in writing within one (1) week of the graded assignment being made available to the class.
Course Topics
| Date | Topic and materials |
|---|---|
| 8/23 Tuesday | Class Logistics, and Fundemental Vision Theory [Slides 8/23] |
| 8/25 Thursday | Image Representation (1): From Our Brain to the Digital World |
| 8/30 Tuesday | Image Representation (2): Gaussian and Laplacian Image Pyramids |
| 9/01 Thursday | TA Lecture: Q&A on Course Projects & Cracking the Coding! [Slides 9/01] [Jupyter Notebook] |
| 9/06 Tuesday | Image Representation (3): Taking A Frequency Domain View [Slides 8/25 + 8/30 + 9/06] |
| 9/08 Thursday | Image Filtering (1): Pointwise, Convolution, and Beyond [Slides 9/08] |
| 9/13 Tuesday | Image Filtering (2): Edge Detection, from Sober to Canny [Slides 9/13] |
| 9/15 Thursday | Cross-Image Matching (1): Detecting Key Points |
| 9/20 Tuesday | Cross-Image Matching (2): Extracting Feature Descriptors from Key Points |
| 9/22 Thursday | Cross-Image Matching (3): Robust Matching of Descriptors [Slides 9/15 + 9/20 + 9/22] |
| 9/27 Tuesday | Mapping 3D World to Image (1): Pinhole and Lens Cameras |
| 9/29 Thursday | Mapping 3D World to Image (2): Developing the Pinhole Camera Model |
| 10/04 Tuesday | Mapping 3D World to Image (3): Geometric Camera Calibration [Slides 9/27 + 9/29 + 10/04] |
| 10/06 Thursday | Stereo Vision (1): Two-Camera Models, and Triangulation |
| 10/11 Tuesday | Stereo Vision (2): Epipolar Geometry |
| 10/13 Thursday | Stereo Vision (3): Essential and Fundemental Matrices |
| 10/18 Tuesday | Stereo Vision (4): Depth Estimation [Slides 10/06 + 10/11 + 10/13 + 10/18] |
| 10/20 Thursday | Video and Optical Flow (1) |
| 10/25 Tuesday | Video and Optical Flow (2) [Slides 10/20 + 10/25] |
| 10/27 Thursday | Classical Machine Learning (1) |
| 11/01 Tuesday | Classical Machine Learning (2) [Slides 10/27 + 11/01] |
| 11/03 Thursday | Image Classification: Bag-of-Words [Slides 11/03] |
| 11/08 Tuesday | Object Detection and Segmentation (1) |
| 11/10 Thursday | Object Detection and Segmentation (2) [Slides 11/08 + 11/10] |
| 11/15 Tuesday | Deep Learning in Computer Vision (1) |
| 11/17 Thursday | Deep Learning in Computer Vision (2) |
| 11/22 Thursday | - No Class (Thanksgiving Break) - |
| 11/24 Thursday | - No Class (Thanksgiving Break) - |
| 11/29 Tuesday | Deep Learning in Computer Vision (3) |
| 12/01 Thursday | Deep Learning in Computer Vision (4) [Slides 11/15 + 11/17 + 11/29 + 12/01] |
Acknowledgement
Many materials included in this course are adapted from the existing teaching or tutorial slides, created by colleagues in CMU, Stanford, UIUC, UC Berkeley, GaTech, Brown, and more. The instructor owes many thanks for their generosity of sharing those materials publicly.
