Stuff available for downloading:


A week-by-week schedule of the lectures, accompanied by a list of suggested reading material.

Assignment 1 (due Nov. 22):

Write a simple regularized stereo matcher, in Matlab. The program should read in a pair of images, and compute a disparity field optimizing the match between the two images and a measure of smoothness of the disparities. Test the program on the stereo pair available via ftp (left and right images, both in GIF format; set the Options menu in Mosaic to "Load to local disk" if you wish to download the images rather than see them on the screen). Submit the program, the output, and a short discussion of your approach and results. Compare your approach with the one described in an upcoming CVGIP paper, A Maximum Likelihood Stereo Algorithm from NEC Research.

NOTE: make use of the optimization and the image processing toolboxes in Matlab. For example, you can run the matching algorithm after extracting the intensity edges in the original images. To find an appropriate built-in function in Matlab, use the "lookfor" and the "help" commands.

Assignment 2 (due Dec. 22):

Write a neural-network surface interpolator that would take a set of disparities at discrete points (either artificially created, or obtained with a stereo matcher), and produce a surface passing through or near the points. Compare multilayer perceptrons, available as a part of the Neural Network toolbox in Matlab, or some other method of your choice, with the surface interpolation functions built into Matlab.

Make your program general enough so that it can be applied to multidimensional function approximation. Test it on a number of artificial examples of your choice. Describe the performance of the program for different ratios of the number of examples to the number of dimensions and the number of weights in the network.

A textbook on neural networks is available online here. Check out this URL for more on neural nets.

Assignment 3 (due Jan. 22):

State any formalization of your choice for the problem of learning a visual representation within the PAC framework (there is no need to prove theorems, but please make the statement formal); compare with the k-inaccurate copy, defined in the lecture notes; discuss advantages and disadvantages, applicability to real-world problems.

If you are interested in machine learning, have a look at the notes (handouts and slides) for a course held at CMU last fall.

The teaching assistant for this course is Uri Pryadkin ( Please coordinate with him the submission of the exercises.
If you are interested in computer vision, check out this URL.