Administrative Info for 15-869,
Image-Based Modeling and Rendering
Computer Science Department
Carnegie Mellon University
This course will teach how to acquire, represent, and render scenes
from digitized photographs. Toward this end, several image-based
approaches will be presented, with an emphasis on how to use these
techniques to build practical systems. This hands-on emphasis will
be reflected in the programming assignments, in which students will
have the opportunity to acquire their own images of indoor and outdoor
scenes and develop the image analysis and synthesis tools needed to
render and view the scenes interactively on the computer. This course
will be appropriate for graduate students and advanced undergraduates.
Time: MW 10:30 -- 11:50, Sept. 8 - Dec. 1, 1999
Place: Wean 5409B
Web Page and News Group
The class web page is:
(a.k.a. /afs/cs.cmu.edu/project/classes-ph/869/pub/www/869.html ).
Schedules, announcements, assignments handouts and results, and reading lists
will be posted here.
The class news group, cmu.cs.class.cs869 ,
will be used for discussions among students and professors regarding the class.
The course is open to both graduate students and advanced undergraduates,
in computer science, robotics, or other majors.
Speak to the instructors if you are uncertain about your background.
We strongly recommend that students have taken a graphics or vision course,
We will assume you know such things as:
4x4 matrix representation of transformations,
perspective camera model,
basic raster graphics,
the z-buffer algorithm,
and basic user interface programming.
The assignments will be:
No other homeworks are planned.
There will be no exams.
Programming Assignment 1: image mosaicing
Programming Assignment 2: view interpolation
Programming Assignment 3: image-based photogrammetry
For approximately the last month of the semester,
students will choose a research topic (with help from the instructors),
do some new research and development,
give a 20 minute presentation,
and write a brief (approx. 10 page) report.
Programming Assignments will typically involve data acquisition
(take some pictures / scan a 3-D object),
implementation of an algorithm from a paper discussed in class plus lecture notes,
and creation of an interactive program that allows new images to be generated.
Students will turn in their results by creating web pages with
pictures and explanations of what they did.
Submitted work should go in, for example,
In order to use this directory from an Andrew cluster machine
(not an SCS machine) you'll need to run "cklog cs.cmu.edu" first.
A few digital cameras and 3-D scanners will be available for your use, but
if you have access to others, that would help.
Starter code will be provided that uses C++, the OpenGL graphics library,
and the FLTK user interface toolkit.
This is intended to be portable to UNIX, linux, and Windows systems, but
we will be testing primarily on UNIX.
Students are not required to use the starter code or program in C++,
but doing so will save time.
Each student will give a presentation of about 15 minutes
of one of the papers we read in class.
In class discussions of the papers we read,
students are encouraged to critique the paper
and (constructively) critique the presentation,
to help build technical communication skills.
50% programming assignments
40% research project
5% presentation of assigned reading
5% class participation
There is no required textbook for the course.
There will be 10-20 technical papers assigned as reading during the
semester, which will constitute the bulk of the written notes for the course.
Most papers are available electronically (the class web pages will
provide pointers to them).
Printed copies of other papers will be distributed in class or will
be available from
Maury Burgwin (Paul's secretary) in Doherty 4309.
Slides from some (but not all) of the lectures will be available on the web.
OpenGL Programming Guide by Woo et al.
We recommend this. It will help with the programming assignments.
Computer Graphics, Principles and Practice by Foley et al.
The standard computer graphics textbook.
The Computer Image by Watt and Policarpo.
Covers topics in computer graphics, image processing, and computer vision.
(Book has numerous typos, however.)
Digital Image Warping by Wolberg.
Focused on image warping.
Three-Dimensional Computer Vision by Faugeras.
An excellent computer vision textbook focusing on 3-D geometry.
A Guided Tour of Computer Vision by Nalwa.
An excellent tutorial on computer vision.
Paul Heckbert and Steve Seitz,