|
Advanced Topics in Graphics:
Non-Photorealistic Rendering
|
Winter 2005
|
Announcements:
-
Monday, January 3: While preparing for Thursday's class, during which I'm going to try and convince you that technical communication skills really matter, someone sent me this mildly amusing article which talks about that very issue as well as offering some other advice to students. Of course, there is that well-known saying about free advice...
-
Thursday, January 6: Welcome to CS767. First day of class is today.
-
Friday, January 7: Due to higher-than-expected enrollment, students will only be required to do two presentations over the course of the semester. See updated grading below.
-
Monday, January 10: Here are some screen shots of a new adventure game that is currently being developed. Note the decision to go with 2D NPR style. Here is a description of the game.
-
Tuesday, January 11: Don't forget: sign-ups for the the first round of paper presentations are in-class today.
-
Friday, January 14: I am posting pdf versions of student presentations for those who are interested. See yesterday's lecture as an example.
-
Saturday, January 15: Hmmmm...does this count as NPR or not? You be the judge.
-
Monday, January 17: A few more project ideas were added today.
-
Thursday, January 20: Reminder: no class on Tuesday and project proposals due next Thursday.
-
Monday, January 24: Here is a cool trailer for an NPR movie.
-
Monday, January 24: Please let me know if you plan to come to office hours tomorrow, otherwise they will be cancelled (just this one time).
-
Monday, February 7: Don't forget that next week the first project presentations are due and we will also be signing up for the second round of talks.
-
Thursday, February 10: Please look at the projects web page to see how to give your presentation next Tuesday. Your presentations should be comprehensible, informative, and adequately paced.
-
Thursday, February 10: An NPR game based on Quix (an old arcade game) plus the artistic style of Piet Mondrian.
-
Monday, February 14: For tomorrow's presentation, if you really want to use powerpoint slides, that is okay, just please send me the slides BEFORE class.
-
Thursday, February 17: Links to project web pages are now posted (the order is based on the order I got the URL e-mails).
-
Monday, February 28: Check out this NPR movie trailer. (Thanks, Leonid Gaiazov for pointing out the link!)
-
Tuesday, March 1: You've got to see it to believe it! Check out this portfolio of touchups complete with before and after images.
-
Thursday, March 10: Movie trailers! Here is the latest trailer for "Robots", which is opening tomorrow. And check out this cool new tailer and this even funnier new trailer for "Hitchhiker's Guide to the Galaxy."
-
Thursday, March 10: Details on the class trip to see "Robots": Let's all go see the 4:40 IMAX showing at the Paramount tomorrow, Friday March 11! For those who can make it, just go ahead and buy your tickets (again, the IMAX version!) and grab seats in the theater. Afterwards, we can all meet outside the theater entrance and decide where to go to grab a drink together before dinner!
-
Monday, March 14: Don't forget that the 2nd project progress presentations are this Thursday.
-
Monday, March 14: New Wallace and Gromit trailer!
-
Wednesday, March 16: Reminder: 2nd project progress presentations are tomorrow.
-
Monday, March 21: Here is a cool website featuring an artist who does kind of the inverse of NPR: she's a sidewalk chalk artist who tries to make things look like actual 3D objects. (Click on the images in the "3D Illusions" section.) This image seems particularly compelling!
-
Tuesday, March 29: Don't forget: final papers are due in about 2 weeks! Why not format your final paper like the pros? Go to the siggraph submission site and look under "Technical Papers" to get the siggraph LaTeX style sheet. (Because everything looks better in LaTeX.)
-
Thursday, March 31: We'll be talking about how (and when) you'll be doing your final presentations today in class, so every project group should have at least 1 representative there.
-
Thursday, March 31: The final presentation schedule is posted here. Please read the presentation guidelines when preparing your final talk. (12 minutes + 3 for questions, etc.) Also, regardless of what day you are presenting, your final paper is due April 13th at 5pm. No exceptions. Also, attendance at the final presentations is MANDATORY.
Summary
The goal of this seminar is to give students a solid foundation in non-photorealistic rendering (NPR).
Non-photorealistic rendering is a general term for graphics techniques in which the goal is something other than simulating realism. Often, but not always, the goal is to create imagery with the look of traditional artistic media or stylization. In many applications, an NPR image has advantages over a photorealistic image because the latter can omit extraneous detail, focus attention on relevant features, clarify shape, or heighten emotional content of a scene.
Students will read, present, and discuss papers on NPR. In order for this course to be both instructive and
interesting, lively discussions and active student participation are
required. In addition to paper presentations, students will form groups of up
to three people and implement a substantive NPR project.
Administrative Information
Prerequisites: cs557. Advanced undergraduates wishing to take the course must also obtain the professor's permission.
Meeting times and location: Tuesdays and Thursdays 2:35 - 3:55,
McConnell 103
Professor Allison Klein
(office hours: Tuesdays 1-2:30 and by appointment), McConnell 204N
Syllabus
The work in this seminar will be divided between projects and presentations as
follows:
Projects: Students in the seminar will form groups of one, two,
or three. Each group will do one big project that spans the semester. The scale
of the project should be roughly the scale of picking out a SIGGRAPH paper and
implementing what it describes. A list of suggested projects can be found
here.
Papers / Presentations: For most weeks, each
class will be devoted to discussion of two papers which everyone should have read
ahead of time. (Study questions will also be posted ahead of time to help you better understand the readings.) Each paper will be presented by one student, and that student
will receive a grade (decided upon by both the professor and the students)
based on the quality of their presentation. Each student will present 2 papers
over the course of the semester.
Grading:
-
60% Project - one during the semester, groups of up to 3 students
-
10% Proposal (written)
-
5% Progress Reports (x2)
-
40% Final (results/presentation)
-
40% Presentations (20% for each presentation). Grades will be in the
following form:
-
"0" - A failing grade
-
"1" - An acceptable but not particularly outstanding presentation.
-
"2" - A really good presentation.
-
Attendance is mandatory. Students who miss more than 3 lectures will
receive failing grades.
Schedule
Week 1
-
Thursday, January 8: Introduction
-
Course overview and how to give a good talk here
-
Hans Peter Pfister put together this excellent overview
of how to give a good talk
-
Here is a powerpoint template you can
use
Week 2 - Two Fundamental Papers and Painterly Rendering
-
Tuesday, January 11:
-
Thursday, January 13:
Week 3 - Painterly Rendering Cont'd
-
Tuesday, January 18:
-
Thursday, January 20:
Week 4 - Mosaics
-
Tuesday, January 25: No class today.
-
Thursday, January 27:
Week 5 - Silhouettes
-
Tuesday, February 1:
-
Thursday, February 3:
Week 6 - Stippling and Halftoning
-
Tuesday, February 8:
-
Thursday, February 10:
Week 7 - Progress Reports and Guest Speaker
-
Tuesday, February 15: Progress Report 1
-
See the projects page for details.
-
The list of project web pages will be posted here after today's presentations.
-
Thursday, February 17: Guest Speaker
Week 8
-
Spring break - no classes
Week 9 - Pen-and-Ink, Hatching, and Physical Simulation
-
Tuesday, March 1:
-
Thursday, March 3:
Week 10 - Modelling
-
Tuesday, March 8:
-
Thursday, March 10:
Week 11 - Simulating Natural Phenomena
-
Tuesday, March 15:
-
Thursday, March 17: Progress reports 2
Week 12 - Toon Shading and Animation
-
Tuesday, March 22:
-
Thursday, March 24:
Week 13 - Visualization and Technical Illustration Continued
-
Tuesday, March 29:
-
Thursday, March 31:
Week 14 - Fun Stuff (May be bumped for guest speaker)
- Tuesday, April 5:
-
Thursday, April 7: Final project presentations (attendance is mandatory for
everyone)
Week 15 - Final Projects
-
Tuesday, April 12: Final project presentations (attendance
is mandatory for everyone)
How to Read A Research Paper
If this is your first time reading research papers, you may be feeling a bit
unpleasantly surprised -- namely, the papers may seem really hard to understand!
Fortunately (or unfortunately), this is how everyone feels when they are
learning about a new research area. Most papers assume a familiarity with the
area on the part of the reader, making getting started a bit challenging. For
the neophyte researcher, here are some suggestions:
-
Expect to read the paper multiple times: The first time you
read the paper, don't worry about what you don't understand. Just try to pick
up whatever information you can. Pay special attention to the abstract,
introduction, conclusion, and any useful pictures, as these are most likely to
give you a general impression of "what is this paper trying to achieve and
why." Then, read the paper one or two more times. At the end of these readings,
you will probably generally understand what this paper is trying to do. Try
formulating your own abstract for the paper -- a very short summary of the
paper's high-level goals and how these were achieved. Above all, don't give
up after just one reading!
-
How to deal with what you still don't understand: At this
point, there may still be details you don't understand. They probably fall into
four categories:
-
Important implementation details
These are key details that you need to understand in order to really understand
how the actual algorithm or system works. For example, in the Chen and Williams
paper, you need to understand that the transformation from one image to another
is a morph that approximates the intermediate 3D transformation of an object,
and what this means. In this case, you may need to read some related work (like
Beier and Neely), or review the relevant fundamental graphics ideas
(perspective projection matrices.)
-
Unimportant implementation details
These are details that you really only need to understand if you are
implementing the system. Things like how to avoid really obscure boundary
conditions or deal with floating point errors, etc. They can be ignored.
-
Important extensions to the basic idea
Maybe part of what makes this paper such a great one is that the basic idea
applies to lots of different problem domains. In that case, you need to
understand how this same idea applies to other problems and reading up on those
other problems may be necessary. Often just googling for an overview of these
other problem domains will suffice; you can find a good summary web page of the
other problem and not read lots of other technical papers.
-
Unimportant extensions to the basic idea A lot of times, to
try and make their papers seem bigger, authors will include unimportant
extensions to their work ("this works not just with color images but with
black-and-white, too!") to try and fool you into thinking there are lots of
important extensions. If the idea doesn't seem that interesting or is only
mentioned in one or two sentences, feel free to ignore it.
-
What if I am still totally lost? If you've honestly tried to
read the paper 3 or more times and are still feeling really confused, talk to
the prof, or wait for the paper presentation and see if someone else's
explanation helps you. Then try reading over the paper again. Once you have a
basic idea of what is going on, it will be much easier to see the structure and
meaning in the paper.