Advanced Computer Graphics CSE 190 [Spring 2015], Lecture 14 Ravi Ramamoorthi ravir.
Advanced Computer Graphics (Spring 2005) COMS 4162, Lecture 1: Overview Ravi Ramamoorthi 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?
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
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
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