CMSC733 Computer Processing of Pictorial Information

General Information

 

 

Class Time  

Tue., Thurs. 11:00-12:15

Room

CSI 3118

Course Info

See below

Text

 

Personnel

 

Instructor

TA

Name

David Jacobs

Jin Sun

Email

djacobs at cs

jinanderson at gmail

Office

AVW 4421

AVW 4420

Office hours

Tues. 2:00-3:00 or by appt.

Wed. 3:00-4:00 or by appt.

Announcements:

Description

This class will provide a general, graduate level introduction to computer vision. We will attempt to give students a broad understanding of all important topics in computer vision.

Prerequisites

Knowledge of and comfort with mathematics will be very helpful. At a minimum, students should know multivariable calculus and linear algebra. No knowledge of computer vision will be assumed, but we will go quickly, so some background in computer vision will certainly be helpful.

Text

There is no single required text. Required readings for the class will be listed below, and will be available online. Three books that will be useful are:

         A draft of Richard Szeliski's computer vision book is available online. There will be some required readings from this book.

        Introductory Techniques for 3-D Computer Vision by Trucco and Verri. This is more of an undergraduate text, and a bit old, so many topics are not covered. However, the fundamentals are explained very clearly.

        Computer Vision: A Modern Approach by Forsyth and Ponce (2nd edition). This is well worth buying if you are a graduate student in computer vision.

Requirements

Assigned work for the class will consist of problem sets (40% of grade), a take-home midterm (20%), and a final exam (40%).

Problem Sets

 

Assigned

Due

 

Problem Set 1

9/17/13

10/1/13

Edge Detection. Implement 2D edge detection, paper and pencil problems about convolution.  Problem Set  You will also use the following Matlab files: test_smooth_image.m, test_image_gradient.m, test_gradient_magnitude_direction.m, interpolate_gradients.m, and the images: swanbw.jpg, swanedges.jpg, swanedges_h.jpg

Problem Set 2

10/1/13

10/17/13

Normalized Cut and Texture Synthesis. Problem Set.

To test your normalized cut code, you will use the routine: test_normalized_cut_points.m. My results with this routine are here and here.

For texture synthesis, look at the Efros and Leung paper. You can use the brick image to test your code.

Problem Set 3

10/17/13

10/31/13

E-M and Mosaicing. Problem Set.

For the mosaicing problem, you will use these images: Image 1 Image 2 and this matlab code.

Midterm

10/31/13

11/7/13

Midterm

Problem Set 4

11/12/13

11/26/13

Stereo matching with graph cuts. Problem Set.

First test image pair: I1L.jpg I1R.jpg

Second test image pair: T3bw.jpg T4bw.jpg Tresult.jpg

Problem Set 5

11/26/13

12/10/13

Bag of words classification. Problem Set. ps5.m

Review for Final

12/3/13

 

Review

 

Class Schedule

This schedule should be considered more of a guideline than a rigid plan.

Lectures

Class

Topic

Required Reading

Background Reading

Problem Sets

1. 9/3

Introduction

Slides

 

 

2. 9/5

Fourier 1

Fourier Transforms

This material is covered in many standard techniques.  You might look at:A Wavelet Tour of Signal Processing , by Mallat for this and material on wavelets. Chapters 2 and 3 are on the Fourier Transform.

 

I also like the discussion in Elementary Functional Analysis by Shilov (This is part of the Dover Classics series, so there is a cheap paperback edition).

 

Some of this material is discussed in Forsyth and Ponce, Chapter 7.

 

3. 9/10

Fourier 2

Convolution

 

Szeliski, 3.2 and 3.4

 

4. 9/12

Diffusion and smoothing

Diffusion

 

Diffusion Phenomena, by Ghez, Sections 1.1-1.4 (available from instructor)

 

 

5. 9/17

Edge Detection

Edge Detection

 

Canny edge detector

6. 9/19

Non-linear Diffusion

Non-linear Diffusion

 

"A review of nonlinear diffusion filtering," by Joachim Weickert.  In Scale-Space Theory in Computer Vision, Lecture Notes in Computer Science, Vol. 1252, Springer, Berlin, pp. 3-28, 1997.

See also Weickert's book: Anisotropic Diffusion in Image Processing

 

7. 9/24

Bilateral Filtering and Normalized Cut

Carlo Tomasi and Roberto ManduchiBilateral Filtering for Gray and Color Images. ICCV 1998.

Normalized Cut.

Jianbo Shi and Jitendra Malik. Normalized cuts and image segmentation. IEEE Transactions on Pattern Analysis and Machine Intelligence , 22(8):888-905, August 2000.

Michael EladOn the Origin of the Bilateral Filter and ways to improve it.  IEEE Trans. on Image Processing, 2002.

Spectral graph cut from a filtering point of view, by Ye, Lin, Song, Chen and Jacobs.

 

 

8. 9/26

K-means, E-M and Background Subtraction

E-M, Mean shift, Mixtures of Gaussians

 

Adaptive background mixture models for real-time tracking, by Stauffer and Grimson

Forsyth and Ponce, Computer Vision A Modern Approach, Chapter 16

E-M tutorial by Yair Weiss

Szeliski, Section 5.3

 

9. 10/1

Texture

Texture

Texture Synthesis by Non-parametric Sampling by Efros and Leung. Web page contains links to the paper and pseudocode.

 

Texture synthesis

10. 10/3

Markov Processes and Markov Random Fields

Notes

 

 

11. 10/8

Graph cuts for segmentation and MRFs

Interactive Graph Cuts for Optimal Boundary & Region Segmentation of Objects in N-D images.
Yuri Boykov and Marie-Pierre Jolly. In International Conference on Computer Vision, (ICCV), vol. I, pp. 105-112, 2001.

 

 

12. 10/10

Features: corners and blobs

For corners, see section in notes on edge detection.

 

 

13. 10/15

Matching: SIFT and RANSAC

David G. Lowe, "Distinctive image features from scale-invariant keypoints," International Journal of Computer Vision, 60, 2 (2004), pp. 91-110.

RANSAC slides

The RANSAC song

 

 

14. 10/17

Geometric transformations and mosaicing

Geometric Transformation Slides

 

Mosaicing

15. 10/22

Tracking

An introduction to the Kalman filter, by Welch and Bishop (Section 1)

 

Condensation: conditional density propagation for visual tracking by Isard and Blake

Tutorial: the Kalman filter (contains a more complete derivation)

 

16. 10/24

Biological Vision

Slides

 

 

17. 10/29

Cameras, perspective projection, projective geometry

Slides

 

 

18. 10/31

Stereo geometry

Slides, Szeliski, 11-11.1.1

 

Midterm

19. 11/5

Stereo matching: dynamic programming and graph cuts

Szeliski, 11.3-11.5.1

Fast approximate energy minimization via graph cuts, by Boykov, Veksler, and Zabih

 

 

20. 11/7

Stereo, contd.

 

 

 

21. 11/12

Review of midterm

 

 

Graph cut stereo

22. 11/14

Optical flow and flow fields

Slides

 

 

23. 11/19

Structure-from-motion with perspective, the Essential matrix

Szeliski, 7.2 through 7.2.1

 

 

24. 11/21

Structure-from-motion with scaled orthographic projection, factorization

Szeliski, 7.3

 

 

25. 11/26

Classification

Slides (from Andrew Zisserman)

Text (from Kristin Grauman)

 

Bag of words classifier

26. 12/3

Lighting

Slides

Lambertian Reflectance and Linear Subspaces by Basri and Jacobs

 

27. 12/5

Review for final

 

 

 

28. 12/10

Sliding window detection

Rapid object detection using a boosted cascade of simple features by Viola and Jones

 

 

29. 12/12

Detection: deformable part models, fine-grained classification

Ross Girshick's DPM slides:

 

LeafSnap slides:

 

P. Felzenszwalb, R. Girshick, D. McAllester, D. Ramanan
Object Detection with Discriminatively Trained Part Based Models

 

Pictorial Structures for Object Recognition Pedro F. Felzenszwalb, Daniel P. Huttenlocher

 

dogsnap slides

 

12/16 8:00-10:00

FINAL