CMSC: 426 Computer Vision
(aka Image Processing in the Catalog)
Spring 2005, Mondays and Wednesdays, 3:30 p.m. – 4:45 p.m.,
Instructor: Ramani Duraiswami
E-mail: ramani AT umiacs.umd.edu;
Grader: Justin Domke
Email: domke AT cs.umd.edu
Homework is given on Wednesdays at the end of the class and due on the Monday of the week following the next one, at the beginning of class
DATE |
LECTURE |
CONTENTS |
01/26/2005
|
Introduction,
Course rules, exams
Course outline
Introduction to
vision. Vision is an inferential process.
Applications |
|
01/31/2005 |
Image
formation-I: |
|
02/02/2005 |
Image
formation-II: Homogeneous coordinates. Lens equations. Optical power.
Accommodation.
Radiance, Irradiance, BRDF. Solid angle.
Pixel and scene brightness. The Eye: and its relation to cameras. CCD
cameras. |
|
02/07/05 |
Image Features:
Features allow us to perform inference. Edges as features. Causes for
edges. Treating images as functions. discrete
image gradients. Representing gradients as filter masks. Non maxima
suppression. Noise. Smoothing noise. The Gaussian
function. Filters and convolution. 2D edge detection filters. The
Canny edge detector |
|
02/09/05 |
Image Features: Linear Filters. Filters as a means to extract features.
The convolution operation. Matlab
implementation. Filters for blurring, sharpening, noise reduction. The
Gaussian function. Separable filters.
notion of scale. |
|
02/14/05 |
Scale, Fourier Transform: Scale. Sampling an image. Reconstructing an
image from samples. Images as functions. representing
images in the Fourier basis. What Fourier basis functions look
like. Fourier transform
as convolution with Fourier basis filters. Image smoothing as removing
high frequencies. Phase and magnitude.
|
|
02/16/05 |
Image
Pyramids: Scale. Gaussian Pyramids. Laplacian
Pyramids. Gabor/wavelet functions. Phase & Magnitude. |
|
02/21/2005 |
Texture synthesis. Discussion of the paper by
Heeger & Bergen. Discussion of
elements of more advanced approaches |
|
02/23/2005 |
Matlab
Wrap up. Writing a function in Matlab.
Combining features. Detecting lines. Parametric representation. The
Hough transform. HT for curves. Corner
detection: the Harris detector. |
|
02/28/2005 |
Lecture 10 |
No
class due to
anticipated snow
Homework is now due when class begins on March 2. |
03/02/2005 |
Perceptual grouping. Mid-Level vision. Gestalt principles.
Wertheimer's paper.
proximity. similarity.
common-fate. geometric
similarity. Smoothness. curve-completion.
Building cost-functions that incorporate psychological ideas.
Performing vision tasks by minimization. Finding closed contours. |
|
03/07/2005 |
Color: Physics of light. Visible spectrum. Color of light sources.
Radiometry on a per wavelength basis. How the eye perceives color. Rods
and cones. Tri-chromaticity. Color matching by addition and
subtraction. Metameric colors.
Grassman's laws and linear color models.
Non-linear color models. Color constancy and other eye adaptations. |
|
03/09/2005 |
Model
fitting; Least Squares; SVD |
|
03/14/2005 |
RANSAC (lecture notes same as for lecture 12)
|
|
03/16/2005 |
EXAM
|
Remember the main source material are the class
notes. You can use the text for background or clarifications. The
following sections are included: Chapter 1 (all except 1.4.1,1.4.2).
Briefly scan Chapter 2. Chapter 4 (4.1, 4.2, 4.3). Chapter 6 (up to and
including 6.3). Chapter 7, Chapter 8. Chapter 9 (up to & including 9.3).
Chapter 14 (up to & including 14.2).
Chapter 15 (up to & including 15.2) . |
03/21/2005 |
SPRING |
No
Class |
03/28/2005 |
Exam
review. |
|
03/30/2005 |
Stereo: Epipolar
geometry. Matching via SSF and cross-correlation. The ordering constraint.
Introduction to dynamic programming. The principle of optimality. Local
optimality.
Book: Chapter 11
(excluding11.4). The class notes contain some extra material. |
|
04/04/2005 |
Stereo via Dynamic Programming: Dynamic
programming pseudocode.
Structure from motion. Scene model. Image
points. Camera projection. Rotation. Translation.
Chapter 12,
|
|
04/06/2005 |
Review of transformations of rigid body coordinate systems.
Translation. Rotation. Representation via matrices. Use of homogeneous
coordinates. Scaling. Three dimensional rotation and Euler angles.
Perspective and weak perspective models.
(Chapter 2.)
Affine structure from
motion. Two frames. Solving for the affine transform. Solving for
structure. Multiple frames. Rank theorem.
(Chapter 12, till 12.3) |
|
04/11/2005 |
Image Motion and Optical flow (lecture notes
are the same for Lectures 18 and 19).
Motion field. Optical flow. Brightness
constancy. Aperture problem. Normal flow. Solving for the optical flow via
least squares. Image gradients. |
|
04/13/2005 |
|
Homework
5 T4bw
T3bw
I1R
I1L
I3
Review of least squares. Normal equations. Weighted least squares.
Iterative Lucas Kanade. (ignore
slides 37-39). |
04/18/2005 |
Review of concepts from probability.
Bayes theorem.
Frequentist and subjectivist approach. Bayesian inference.
Probability. Probability density function. Expectation and variance.
Sample mean and variance.
Clustering and segmentation.:
Agglomerative clustering.
(Chapter 14.4) |
|
04/20/2005 |
Review of Bayes
Theorem.
K-means clustering. Expectation Maximization. Expectation
and maximization steps. General paradigm for vision problems.
(Chapter 16.1, 16.2) |
|
04/25/2005 |
|
Homework
6 I164
I165 Object recognition and Pose. Recognition from models. Chamfer matching. Distance transform. Ransac
|
04/27/2005 |
3D Pose. The Posit algorithm. |
|
05/02/2005 |
|
Object Recognition. Trying to find features
that help in recognition. Looking for invariant features. Color indexing.
Salient Point Method. Geometric Hashing.
Part decomposition. |
05/04/2005 |
Tracking. The tracking problem. Kalman
filter. Recursive estimation. Innovation; gain.
(Chapter 17 till 17.3 … but treatment in lecture is a
bit different) |
|
05/09/2005 |
Classification: Classification boundaries.
Bayes Risk. Loss functions.
Estimating
pdfs: histograms and kernel density estimation. Application to skin
color classification of pixels. ROC curve of a classifier. Nearest
neighbor and K-nearest neighbor classifiers.
(Section 22.1-22.2)
Face Recognition via Eigenfaces:
Preparing a face-data set. Computation of principal components. Using
principal components for recognition.
(Section 22.3) |
|
05/11/2005 |
Lecture 27 |
Exam Review:
Remember the main source material is class notes.
|
05/18/2005 | Final Exam | 1:30 p.m.- 3:30 p.m. in the same classroom (CSI 3120) |
NEW: You may find the robotics class being offered next semester (Fall 2005) of interest. A course description for this class is here.
Materials based on my slides, previous CMSC 426 slides (taught by Cornelia Fermuller and David Jacobs) and stuff off the web.
Useful Links (from Prof. Jacobs)
Image Processing Learning resources:
http://www.dai.ed.ac.uk/HIPR2/index.htm
MATLAB resources:
Introductory Tutorials
Slightly more advanced Tutorials
More complete references/tutorials/FAQs
Computer Vision related sites:
An
extensive computer vision bibliography at USC
Pointers to many vision classes
A tutorial
on drawing with perspective
Some computer vision tutorials from Sussex
Lecture notes are based on materials from the text, my
slides, and borrow
from previous UMD courses (CMSC426 by David
Jacobs, Cornelia Fermuller,
and Larry Davis and CMSC 828D by Davis, Duraiswami and DeMenthon) and
from materials on the web.