CS 216: Image Understanding

Fall 2012

Who, Where, When

Instructor: Charless Fowlkes
Lectures: MW 3:30-5pm, 1300 DBH
Office Hours: T 2-3pm, 4076 DBH

Overview

Image understanding, extracting useful semantic content from image data, is a core human ability whose emulation by machine systems has been an area of active research in artificial intelligence for the last 40 years. Contemporary computer vision research draws heavily from machine learning and serves as a testing ground for new learning theories and algorithms. Computer vision in turn provides a set of tools for many applications in multimedia information systems and HCI, as well as the natural sciences, e.g. biomedical imaging. Graduate students completing this course will be well prepared to comprehend current research in computer vision or apply state-of-the-art techniques to problems of interest in their own field.

Course Topics

  • Linear Filters - Convolution, smoothing, spatial frequency analysis, Fourier transform, FFT, sampling, image pyramids, scale space

  • Edge Detection - Gaussian derivatives, Gabor filters, gradients, Laplacian pyramid, steerable filters

  • Templates - optimality of matched templates, detection theory (Bayes risk, ROC curves), normalized convolution, "eigenfaces"

  • Feature Descriptors - feature invariance, histogram of gradients (e.g. SIFT, geometric blur), interest point detection

  • Segmentation - grouping and features (color, texture), clustering algorithms (k-means, mixture models, EM algorithm, normalized cut), enforcing spatial coherence (Markov random fields, min-cut), contours and curvilinear continuity

  • Optical Flow - background subtraction, differential methods, regularization, layer based models, video compression

  • Object Recognition - 2D shape, model alignment, deformable templates, active appearance models, parts based models

  • Tracking - linear dynamics, Kalman filtering, human kinematics, motion capture

!! Lecture Notes, Slides and Readings !!

Homeworks

  • Homework #1: MATLAB warmup (due 10/17/12) [here]
  • Homework #2: Linear filtering, DFTs and convolution (due 10/31/12) [pdf]
    Test images for use on the homework: zebra  detection1  detection2 
  • Homework #3: Segmentation (due 11/14/12) [pdf]
    zebra  mincut.zip 
  • Homework #4: Recognition (due 11/28/12) [here]
  • Homework #5: Project Report (due 12/03/12). Submit a brief document to the EEE folder describing your progress on the final project.

Textbook

The textbook for the course is Computer Vision: A modern approach, by Forsyth and Ponce. We will not follow it closely but it will be valuable for filling in details we don't discuss in class and providing an alternative presentation.

An alternate textbook is Computer Vision: Algorithms and Applications, by Rick Szeliski. A pdf version is freely available here.

Project Ideas

Grading

The grading for this class will be based on homeworks and a final project

Homeworks

There will be approximately 4 homeworks during the quarter. Each homework due electronically at midnight on the due date. Late homeworks will not be graded so please just hand in whatever you have completed by the beginning the class that it is due.  Solution sketches will be provided after homeworks have been turned in.

You will be asked to use MATLAB for some of your homework problems. You can find info about accessing MATLAB at UCI here.

Academic Honesty

Homeworks can be discussed, but each student must independently write up their own solutions. In particular, no sharing of code. Please see the university policy on academic honesty. It is fine to use reference materials found online, but do not search for homework solutions. Rather, students are strongly encouraged to ask questions at both office hours and on the class discussion group.