Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs)...

36
CS 523: Computer Graphics, Spring 2009 Sh M d li Shape Modeling Introduction and Overview 1/28/2009 1 Andrew Nealen, Rutgers, 2009

Transcript of Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs)...

Page 1: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

CS 523: Computer Graphics, Spring 2009

Sh M d liShape Modeling

Introduction and Overview

1/28/2009 1Andrew Nealen, Rutgers, 2009

Page 2: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Geometric ModelingGeometric Modeling

To describe any realTo describe any real‐life object on the computer – must start pwith shape (2D/3D)

Geometry processing ‐computerized 

d li fmodeling of 3D geometry

1/28/2009 2Andrew Nealen, Rutgers, 2009

Page 3: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Digital Geometry ProcessingDigital Geometry ProcessingProcessing of discrete (polygonal mesh) modelsmesh) models

Typically triangularWhy discrete?y

Simplicity – ease of description & transferBase data for renderingBase data for rendering software/hardwareOutput of most acquisition tools (CT, MRI, laser, etc..)Input to most simulation/analysis toolssimulation/analysis tools

1/28/2009 3Andrew Nealen, Rutgers, 2009

Page 4: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Interactive shape modelingInteractive shape modeling

Tools for design and editing of digital shapesTools for design and editing of digital shapesInteractive means fast algorithms

Intuitive expected outcomeIntuitive – expected outcome

1/28/2009 4Andrew Nealen, Rutgers, 2009

Page 5: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

ApplicationsApplications

EngineeringGames/Movies g g/

Medicine/Biology Architecture1/28/2009 5Andrew Nealen, Rutgers, 2009

Page 6: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Tools?Tools?

Use techniques from both Math & CSUse techniques from both Math & CSDifferential geometry 

Numerical linear algebraNumerical linear algebra

Graph theory 

...

...Combined with a lot of intuition... 

Work on real data = Write/use a lot of code ☺/

1/28/2009 6Andrew Nealen, Rutgers, 2009

Page 7: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

OrganizationPeople

Andrew NealenAndrew NealenCBIM, room [email protected]@cs.rutgers.eduhttp://www.cs.rutgers.edu/~nealenOffice hours: Tuesday, 3‐5pmy p

Teaching assistant:Xiaofeng [email protected]

1/28/2009 7Andrew Nealen, Rutgers, 2009

Page 8: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

OrganizationWeb and communication

Course website (external access to Wiki)Course website (external access to Wiki)http://tinyurl.com/cs523-spring09

Wiki, archived mails, forum, etc...http://sakai.rutgers.edu

Use mailing list [email protected] Sakai forum for communication

1/28/2009 8Andrew Nealen, Rutgers, 2009

Page 9: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

OrganizationCourse materials

No book covers all topicsNo book covers all topicsMany of the topics are recent research results ☺

I will link to relevant papers, presentations and tutorials on the course websiteand tutorials on the course website

Lecture slides will be available on the webLecture slides will be available on the web shortly before each class

Makes sense to annotate them during the lecturesMakes sense to annotate them during the lectures

1/28/2009 9Andrew Nealen, Rutgers, 2009

Page 10: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

PrerequisitesPrerequisites

Familiarity with basic calculus linear algebraFamiliarity with basic calculus, linear algebra, and vector calculus

Familiarity with a graphics API (e g OpenGL)Familiarity with a graphics API (e.g. OpenGL)If not, learn quickly (for the sake of visualization)

/C/C++ coding skillsIf Java is preferred, you will be on your own

Capability to search Google and forums for useful information ☺

1/28/2009 10Andrew Nealen, Rutgers, 2009

Page 11: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course OverviewTopics

Shape representations in computer graphicsShape representations in computer graphicsPoints, implicits, meshes + related data structures

Shape acquisition and reconstructionShape acquisition and reconstruction

Linear algebra tools for geometric modeling

Differential geometry (normals, curvatures, …)

Digital geometry processing (smoothing etc.)g g y p g ( g )

Mesh deformation (space‐ and surface‐based)Approximately 40 50% of the courseApproximately 40‐50% of the course

1/28/2009 11Andrew Nealen, Rutgers, 2009

Page 12: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

GradingGrading

30% ‐ Assignments (can be done in pairs)30%  Assignments (can be done in pairs)

Assignment 1: Mesh processing “Hello World”.mesh data structure programming + renderingmesh data structure programming + rendering

Assignment 2: Basic local mesh operations + selection toolsselection tools

40% ‐ Final project (can be done in pairs)Implementation/extension of a space or surfaceImplementation/extension of a space or surface based editing tool (makes use of assignments 1+2)

Includes proposal report and presentationIncludes proposal, report and presentation

1/28/2009 12Andrew Nealen, Rutgers, 2009

Page 13: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

GradingGrading

20% ‐ Paper presentation20%  Paper presentationMany possible sources: SIGGRAPH, Symposium on Geometry Processing (SGP) Shape ModelingGeometry Processing (SGP), Shape Modeling International (SMI), Eurographics, seehttp://kesen.huang.googlepages.com/

15‐20 minute power point presentation + discussion with me (latest) one day before class

10% ‐ Class participationFeedback on peer paper presentation + application presentations, etc.

1/28/2009 13Andrew Nealen, Rutgers, 2009

Page 14: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

3D graphics programming in 19793D graphics programming in 1979

approx. 50 x 100 pixelsapprox. 25 triangles

1/28/2009 14Andrew Nealen, Rutgers, 2009

Page 15: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Common workflowCommon workflowModeling Rendering

Images3D Objects 3D Models

approx. 50 x 100 pixelsapprox. 25 triangles1/28/2009 15Andrew Nealen, Rutgers, 2009

Page 16: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Common workflowCommon workflowModeling Rendering

Images• Interaction• Animation

3D Objects 3D Models• Scene• Geometry• Material• Material• Lighting

1/28/2009 16Andrew Nealen, Rutgers, 2009

Page 17: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Common workflowCommon workflowModeling Rendering

Images• Interaction• Animation

3D Objects 3D Models• Scene• Geometry• Material• Material• Lighting

1/28/2009 17Andrew Nealen, Rutgers, 2009

Page 18: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Common workflowCommon workflowModeling Rendering

Images• Interaction

• Direct i l ti

3D Objects• Manual• ProceduralSi l ti

3D Models• Scene• Geometry

• Parametric manipulation• Sketching

• Animation• Skeletal

• Simulation• Sampling of real‐world objects

• Images

• Parametric• Points• Implicit• Mesh • Skeletal

deformation• Keyframing

• Images• Video

Mesh• Material• Lighting

1/28/2009 18Andrew Nealen, Rutgers, 2009

Page 19: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Model creationModel creationModeling Rendering

Images• Interaction

• Direct i l ti

3D Objects• Manual• ProceduralSi l ti

3D Models• Scene• Geometry

• Parametric manipulation• Sketching

• Animation• Skeletal

• Simulation• Sampling of real‐world objects

• Images

• Parametric• Points• Implicit• Mesh • Skeletal

deformation• Keyframing

• Images• Video

Mesh• Material• Lighting

1/28/2009 19Andrew Nealen, Rutgers, 2009

Page 20: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Model creationModel creationModeling Rendering

Images• Interaction

• Direct i l ti

3D Objects• Manual• ProceduralSi l ti

3D Models• Scene• Geometry

• Parametric manipulation• Sketching

• Animation• Skeletal

• Simulation• Sampling of real‐world objects

• Images

• Parametric• Points• Implicit• Mesh • Skeletal

deformation• Keyframing

• Images• Video

Mesh• Material• Lighting

1/28/2009 20Andrew Nealen, Rutgers, 2009

Page 21: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Model representation and conversionModel representation and conversionModeling Rendering

Images• Interaction

• Direct i l ti

3D Objects• Manual• ProceduralSi l ti

3D Models• Scene• Geometry

• Parametric manipulation• Sketching

• Animation• Skeletal

• Simulation• Sampling of real‐world objects

• Images

• Parametric• Points• Implicit• Mesh • Skeletal

deformation• Keyframing

• Images• Video

Mesh• Material• Lighting

1/28/2009 21Andrew Nealen, Rutgers, 2009

Page 22: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Computer GraphicsThe big picture

Model modification and editing loopModel modification and editing loopModeling Rendering

Images• Interaction

• Direct i l ti

3D Objects• Manual• ProceduralSi l ti

3D Models• Scene• Geometry

• Parametric manipulation• Sketching

• Animation• Skeletal

• Simulation• Sampling of real‐world objects

• Images

• Parametric• Points• Implicit• Mesh • Skeletal

deformation• Keyframing

• Images• Video

Mesh• Material• Lighting

1/28/2009 22Andrew Nealen, Rutgers, 2009

Page 23: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Shape representationShape representationParametric surfaces

Subdivision surfacesSubdivision surfaces

Implicits

1/28/2009 23Andrew Nealen, Rutgers, 2009

Page 24: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Shape representationShape representationPolygonal meshes

1/28/2009 24Andrew Nealen, Rutgers, 2009

Page 25: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Shape acquisitionShape acquisitionScanning/imaging

ReconstructionReconstruction

1/28/2009 25Andrew Nealen, Rutgers, 2009

Page 26: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Mathematical toolsMathematical toolsRevisit linear algebra: transformations, spectral decomposition PCA SVDdecomposition, PCA, SVD

See where these are used!

A

n

σ1σ2

A U Σ TV

=m σn

A U Σ V

1/28/2009 26Andrew Nealen, Rutgers, 2009

Page 27: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Mathematical toolsMathematical toolsDifferential geometry – continuous and discrete

Our main tool to analyze and understand shapesOur main tool to analyze and understand shapes

1/28/2009 27Andrew Nealen, Rutgers, 2009

Page 28: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Digital geometry processingDigital geometry processingDenoising, smoothing, simplification/remeshing, parameterization compressionparameterization, compression

1/28/2009 28Andrew Nealen, Rutgers, 2009

Page 29: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Shape modeling and deformationShape modeling and deformationSpace warps/ Freeform deformations

1/28/2009 29Andrew Nealen, Rutgers, 2009

Page 30: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Shape modeling and deformationShape modeling and deformationSurface‐based deformations

1/28/2009 30Andrew Nealen, Rutgers, 2009

Page 31: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

Sketch‐based interfacesSketch based interfacesShape creation

Shape editingShape editing

1/28/2009 31Andrew Nealen, Rutgers, 2009

Page 32: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Course TopicsCourse Topics

More applications of geometric deformationMore applications of geometric deformationSkeleton‐skin animation; morphing

Image/video retargetingImage/video retargeting

1/28/2009 32Andrew Nealen, Rutgers, 2009

Page 33: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

AssignmentsAssignments

Assignment 1: Mesh processing “Hello World”Assignment 1: Mesh processing  Hello WorldGoals: learn basic mesh data structure programming + rendering (flat/gouraud shadedprogramming + rendering (flat/gouraud shaded, wireframe) + basic GUI programming

1/28/2009 33Andrew Nealen, Rutgers, 2009

Page 34: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

AssignmentsAssignments

Assignment 2: selection + operation toolsAssignment 2: selection + operation toolsGoals: implement image‐space selection tools and perform local operations (smoothing etc ) onperform local operations (smoothing, etc.) on selected region

1/28/2009 34Andrew Nealen, Rutgers, 2009

Page 35: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Final ProjectFinal Project

Implementation/extension of a space orImplementation/extension of a space or surface based editing tool

makes use of assignments 1 + 2makes use of assignments 1 + 2

Your own suggestion, with instructor approval

1/28/2009 35Andrew Nealen, Rutgers, 2009

Page 36: Graphics, Spring 2009 Shape MdliM odeling · 40% ‐Final project (can be done in pairs) Implementation/extension ofof aa spacespace oror surfacesurface based editing tool (makes

Final ProjectFinal Project

Includes written project report andIncludes written project report and presentation

Latex style files will be providedLatex style files will be provided

Power Point examples will be provided

1/28/2009 36Andrew Nealen, Rutgers, 2009