CMPEN/EE454 Computer Vision I
Introduction to Computer Vision
CSE Department, Penn State University
Instructor: Robert Collins

Background

I have taught this course several times (almost every semester). I am always fiddling around with the course content, so the material covered and the order of presentation changes from semester to semester. Below are the lecture notes from Fall 2024.

In addition to slides that I created, I borrowed heavily from other lecturers whose computer vision slides are on the web. I used to put an attribution at the bottom of each slide as to where and who it came from. However, that led to cluttered slides, and was distracting. So, I dropped that format. Instead, I'm telling you up-front that a lot of the slides in the lectures below did not originate from me. Here is a partial list of the main sources that I can remember: Octavia Camps, Forsyth and Ponce, David Jacobs, Steve Seitz, Chuck Dyer, Martial Hebert. If I forgot you, and you see your slides here, well... thanks. And drop me a line so I can add your name to the list.

By the same token, if you are putting together a computer vision course, and want to use some of my slides, go right ahead. You are welcome to them, since the main goal here is to improve the quality of computer vision education everywhere. To quote Thomas Jefferson: "He who receives an idea from me, receives instruction himself without lessening mine; as he who lights his taper at mine, receives light without darkening me. That ideas should freely spread from one to another over the globe, for the moral and mutual instruction of man, and improvement of his condition, seems to have been peculiarly and benevolently designed by nature, when she made them, like fire, expansible over all space, without lessening their density at any point, and like the air in which we breathe, move, and have our physical being, incapable of confinement or exclusive appropriation."

Fall 2024 Lecture Notes

Detailed List of Topics Covered in Fall 2024

Lecture 01: Intro to Computer Vision slides
Lecture 02: Intensity Surfaces and Gradients slides
Lecture 03: Linear Operators and Convolution slides
Lecture 04: Smoothing slides
Lecture 05: Edge and Smoothed Derivatives slides
Lecture 06: Second Derivatives and LoG slides
Lecture 07: Patch Matching slides
Lecture 08: Harris Corners slides
Lecture 09: Multi-Scale Representations slides
Lecture 10: SIFT and other Handcrafted Features slides
Lecture 11: Convnets slides
Lecture 12: Introduction to Stereo slides
Lecture 13: Stereo Matching slides
Lecture 14: Pinhole Camera Model slides
Lecture 15: Triangulation slides
Lecture 16: Epipolar Geometry slides
Lecture 17: E/F Matrices slides
Lecture 18: The 8-point Algorithm slides
Lecture 19: Parametric Image Warping slides
Lecture 20: Parameter Estimation: LS and RANSAC slides
Lecture 21: Homographies slides
Lecture 22: Panoramic Mosaicking slides
Lecture 23: Video Stabilization slides
Lecture 24: Video Change Detection slides
Lecture 25: Intro to Tracking slides
Lecture 26: Camera Motion slides
Lecture 27: Optical Flow slides
Lecture 28: Structure from Motion slides
Lecture 29: Color and Light slides
Lecture 30: Rendering Color and Light slides
Bonus Lecture 1: Mean-shift Algorithm slides
Bonus Lecture 2: MCMC slides
Bonus Lecture 3: Boosting / Viola-Jones slides
Bonus Lecture 4: Unsupervised Learning slides