Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 1: Overview Ravi Ramamoorthi cs4162.

24
Advanced Computer Graphics Advanced Computer Graphics (Spring 2005) (Spring 2005) COMS 4162, Lecture 1: Overview Ravi Ramamoorthi http://www.cs.columbia.edu/~cs4162
  • date post

    21-Dec-2015
  • Category

    Documents

  • view

    228
  • download

    1

Transcript of Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 1: Overview Ravi Ramamoorthi cs4162.

Advanced Computer Graphics Advanced Computer Graphics (Spring 2005) (Spring 2005)

COMS 4162, Lecture 1: Overview

Ravi Ramamoorthi

http://www.cs.columbia.edu/~cs4162

GoalsGoals

Systems: Write fairly complex programs for image processing, mesh algorithms, image synthesis

Theory: Understand mathematical aspects and algorithms underlying modern 3D graphics [Fourier analysis+sampling theory, mesh geometric data structures, Monte Carlo rendering, integration]

This course is a continuation of COMS 4160, intro graphics. It fills in some of the gaps there, and provides a more advanced thorough overview

Course OutlineCourse Outline

3D Graphics Pipeline

Rendering(Creating, shading images from geometry, lighting, materials)

Modeling(Creating 3D Geometry)

Course OutlineCourse Outline

3D Graphics Pipeline

Rendering(Creating, shading images from geometry, lighting, materials)

Modeling(Creating 3D Geometry)

Unit 1: Foundations of Signal and Image ProcessingUnderstanding the way 2D images are formed and displayed, the important concepts and algorithms, and to build an image processing utility like PhotoshopWeeks 1 – 3. Assignment 1 due Feb 15

Course OutlineCourse Outline

3D Graphics Pipeline

Rendering(Creating, shading images from geometry, lighting, materials)

Modeling(Creating 3D Geometry)

Unit 1: Foundations of Signal and Image ProcessingUnderstanding the way 2D images are formed and displayed, the important concepts and algorithms, and to build an image processing utility like PhotoshopWeeks 1 – 3. Assignment 1 due Feb 15

Unit 2: Meshes, ModelingWeeks 4 – 6. Ass 2 due Mar 10

Course OutlineCourse Outline

3D Graphics Pipeline

Rendering(Creating, shading images from geometry, lighting, materials)

Modeling(Creating 3D Geometry)

Unit 1: Foundations of Signal and Image ProcessingUnderstanding the way 2D images are formed and displayed, the important concepts and algorithms, and to build an image processing utility like PhotoshopWeeks 1 – 3. Assignment 1 due Feb 15

Unit 2: Meshes, ModelingWeeks 4 – 6. Ass 2 due Mar 10

Unit 3: Ray TracingWeeks 7 – 9. Ass 3 due Apr 12

Unit 4: Advanced TopicsWeeks 10+. Ass 4 (final project) due May 2

LogisticsLogistics

Website http://www1.cs.columbia.edu/~cs4162 has most of information (look at it)

Office hours: after class (or just send me e-mail)

TA: Bo Sun, CEPSR 615

Course bulletin board to be set up, class TA e-mail: [email protected]

TA office hours etc after next week of lectures

Textbook: Computer Graphics Principles and Practice by Foley, van Dam, Feiner, Hughes

WorkloadWorkload

Challenging course: Lots of fun, rewarding but may involve significant work (like 4160, perhaps more understanding, a little less actual code)

4 programming projects. All are significant effort, real systems. Also require well documented reports (websites). Challenging but fun But most of you built games. I don’t think workload substantial relative to that You have 3-4 weeks. Project scope assumes you actually work on them for 3-4

weeks. START EARLY and work steadily. Groups of 2 quasi-required (you can work alone, but at your own risk)

Assignments 1-3 also have written questions that test understanding of mathematical and geometrical concepts taught Also done in groups of 2 as for programming. Start early here too No midterms or finals

Prerequisites: COMS 4160 or equivalent intro to graphics Note: some overlap possible for those who took intro graphics elsewhere.

Have fun and relax on those parts, or go overboard…

Generously graded: You did well in 4160, here to have fun, learn graphics. Don’t really worry about scores and grades. Just do work, have fun

Related coursesRelated courses

COMS 4167, on animation Prof. Grinspun this semester

Many 6000-level courses (e.g. COMS 6160 High Quality Real-Time Rendering taught by me last fall) if you are still here next year

Part of Vision and Graphics track in BS and MS programs. Columbia Vision and Graphics Center

Other related courses: Computer Vision, Robotics, User Interfaces Computational Geometry, …

To Do To Do

Look at website

Various policies etc. for course. Send me e-mail if confused.

Skim assignments if you want. All are tentatively ready (except for assignment 1, which is released)

Assignment 0, Due Jan 20 tomorrow (see website). Send e-mail to [email protected] telling us about yourself and sending us a digital photo if possible (to put names to faces).

Assignment 1, Due Feb 15. Start working on it next week, but for now, make sure you can download and compile

Find partners for assignment 1 and possibly later. Does anyone need help? Any other questions?

HistoryHistory

Brief summary of course in context of history of field

2D Graphics2D Graphics

Many of the standard operations you’re used to:

Text

Graphical User Interfaces (Windows, MacOS, ..)

Image processing and paint programs (Photoshop, …)

Drawing and presentation (Powerpoint, …)

SuperPaint system: Richard Shoup, Alvy Ray Smith (PARC, 1973-79)

Nowadays, image processing programs like Photoshop can draw, paint, edit, etc.

Paint SystemsPaint Systems

Digitally alter images, crop, scale, composite

Add or remove objects

Sports broadcasts for TV (combine 2D and 3D processing)

Image Processing Image Processing

Relevance to CourseRelevance to Course

In 4160, didn’t cover 2D at all

But relevant broadly (not just for 2D), since ultimately 3D scene displayed as 2D image

In 4162, we cover image processing and many photoshop functions [assignment to write a mini-version]

ModelingModeling

Spline curves, surfaces: 70s – 80s

Utah teapot: Famous 3D model

More recently: Triangle meshes often acquired from real objects

Relevance to CourseRelevance to Course

Covered Bezier, B-spline curves for modeling in 4160Will talk briefly about NURBS, surfaces in 4162

Main idea is to talk about mesh processing algs.

Will learn to represent, work with meshes

Do mesh simplification, progressive meshes

Progressive Mesh MovieProgressive Mesh Movie

Rendering: 1960s (visibility)Rendering: 1960s (visibility) Roberts (1963), Appel (1967) - hidden-line algorithms Warnock (1969), Watkins (1970) - hidden-surface Sutherland (1974) - visibility = sorting

Images from FvDFH, Pixar’s ShutterbugSlide ideas for history of Rendering courtesy Marc Levoy

1970s - raster graphics Gouraud (1971) - diffuse lighting, Phong (1974) - specular lighting Blinn (1974) - curved surfaces, texture Catmull (1974) - Z-buffer hidden-surface algorithm

Rendering: 1970s (lighting)Rendering: 1970s (lighting)

Rendering (1980s, 90s: Global Illumination)Rendering (1980s, 90s: Global Illumination)

early 1980s - global illumination Whitted (1980) - ray tracing Goral, Torrance et al. (1984) radiosity Kajiya (1986) - the rendering equation

Relevance to CourseRelevance to Course

We didn’t talk about visibility algorithms in 4160 Nowadays, simple Z-buffer used OpenGL

Discussed illumination and shading models And theory (but not practice) of global illumination

In 4162, we will cover practical global illum.

First, build a simple ray tracer

Extensions/final project related to rendering

Image Synthesis ExamplesImage Synthesis Examples

SummarySummary

COMS 4160 covered basics of computer graphics Theory of transformations, curves, illumination Building complex interactive graphics programs

COMS 4162 covers more advanced topics and fills in the gaps in 4160. Essential for full graphics intro 2D Image and Signal Processing (+Fourier analysis) Mesh algorithms (+Mesh geometric data structures) Ray Tracing (+Monte Carlo sampling for rendering) Advanced Rendering and other topics