CS 590G Image-Based 3D Computer Graphics
-general information-
Prerequisites
-
Required
-
basic programming (data structures, algorithms, file I/O, C / C++)
-
some basic mathematics concepts (3D vectors, matrices)
-
Some exposure to 3D graphics recommended
-
i.e. classes CS 334, CS 434 or CS 535 (ME 573)
Course Description (preliminary)
The course will present a recent but very promising alternative approach
to 3D computer graphics.
-
Basic concepts
-
images (loading, displaying, saving, data structure, pixels, image sequences)
-
cameras (pinhole camera model, extrinsic and intrinsic parameters, calibration,
animation paths)
-
points, vectors, translations, rotations
-
geometric models
-
Texture-mapping (conveniently modeling surface detail using images,
see Figure 1)
-
attaching a texture to a surface
-
rendering the texture-mapped surface

Figure 1. A relatively simple geometric model of a Jeep produces realistic
renderings if texture-mapped (click on the images for higher resolution).
-
Panoramas (single point-of-view image-based technique)
-
description and construction of cylindrical and spherical images
-
rendering from panoramas (rotation, zoom)
-
Image morphing (creating new images by interpolation)
-
the problem of correspondences
-
rendering by interpolation using correspondences
-
3D image warping (full 3D image-based technique)
-
depth images
-
3D warping equation
-
reconstruction (splatting, meshing)
-
the disocclusion problem; layered depth images
Click on the image for a 8MB Quicktime animation that illustrates image-based
rendering by warping
-
Ray databases (an image-only approach)
-
description and construction of ray databases
-
rendering by querying ray databases
Required (but Fun) Work
-
Homeworks (subject to change)
-
5 total, due approximately every two weeks
-
covering "basic concepts", "texture-mapping", "panoramas" or "image morphing"
(your choice), "3D image warping", "ray databases"
-
homeworks will mainly consist of implementing the various image-based rendering
techniques
-
credit
-
14% each homework, 70% total
-
numerous extra-credit opportunities
-
late policy
-
once late (up to one week) no penalty
-
late second and subsequent times, 15% per day
-
all homeworks are required by the last day of classes for completion of
course
-
Mini-project
-
typically an enhancement of one of the homeworks
-
students can propose different topics
-
4 weeks before the end of the semester each student has to have an approved
project topic, a project description and an execution plan
-
the last two class sessions will be reserved for project presentations
and demonstrations
-
credit
-
30% of total course credit
-
No mid-term exams, final exam, tests or quizzes
Cheating policy
-
Do not cheat!
-
Frequent and thorough scans for cheating
-
If caught automatic failing grade for the class and reported to the Dean
of Students' Office
-
Examples of cheating (courtesy of Gene Spafford)
-
Using part or all of someone else's work, from this or any prior semester,
in projects or homework without the instructor's prior approval;
-
Misrepresenting the functionality of code. That is, if a student submits
a project with falsified output or test data to make it look as if a program
works better than it does;
-
Using hidden notes or hints to answer questions during a test that does
not allow open notes or crib sheets;
-
Submitting answers on homework or projects that were developed or researched
by any other individual and presented as the student's own work;
-
Copying text from a book or paper to include in the student's own writing
without clearly marking it as a quote and citing the source (This is plagiarism
and may be a violation of copyright law as well as cheating.);
-
Setting permissions on files and directories in a student's account so
that someone can easily copy programs and documents, or allowing any other
person, in the class or otherwise, to use your computer account (note that
this is also a violation of department policy or PUCC policy;
-
Providing program code or problem solutions to another student in the class
without the instructor's explicit, prior approval;
-
Encouraging anyone to do any of the above, or failing to report anyone
involved in any of these activities.
Course material
-
photocopies of technical papers
Voicu Popescu 01.08.2002