320491 – advanced graphics · 3d laser scanner. 320491: advanced graphics - chapter 1 47...
TRANSCRIPT
Visualization and Computer Graphics LabJacobs University
320491 – Advanced Graphics
Prof. Dr.-Ing. Lars Linsen
Jacobs UniversitySpring 2015
320491: Advanced Graphics - Chapter 1 2
Visualization and Computer Graphics LabJacobs University
0. Introduction
320491: Advanced Graphics - Chapter 1 3
Visualization and Computer Graphics LabJacobs University
0.1 Syllabus
320491: Advanced Graphics - Chapter 1 4
Visualization and Computer Graphics LabJacobs University
Course Website
http://www.faculty.jacobs-university.de/llinsen/teaching/320491.htm
(accessible through CampusWeb)
320491: Advanced Graphics - Chapter 1 5
Visualization and Computer Graphics LabJacobs University
Content
Computer graphics deals with the digital synthesis and manipulation of visual content, typically embedded in a three-dimensional scene. Prominent tasks in computer graphics are geometry processing, rendering, and animation. – Geometry processing is concerned with object
representations such as surfaces and their modeling,– rendering is concerned with simulating light transport to get
physically-based photorealistic images of 3D scenes or applying a certain style to create non-photorealistic images, and
– animation is concerned with descriptions for objects that move or deform over time.
Methods that tackle these three tasks are being taught.
320491: Advanced Graphics - Chapter 1 6
Visualization and Computer Graphics LabJacobs University
Pre-requisites
• 320322 Graphics and Visualization
Co-requisites
• 320621 Advanced Graphics Lab(for graduate students)
320491: Advanced Graphics - Chapter 1 7
Visualization and Computer Graphics LabJacobs University
Lectures
• Times: – Monday 9:45am-11am – Wednesday 8:15am–9:30am.
• Location: West Hall 5
320491: Advanced Graphics - Chapter 1 8
Visualization and Computer Graphics LabJacobs University
Instructor
• Lars Linsen• Office: Res I, 128.• Phone: 3196• E-Mail: l.linsen [@jacobs-university.de]• Office hours: by appointment
320491: Advanced Graphics - Chapter 1 9
Visualization and Computer Graphics LabJacobs University
Assignments
There will be three assignments:
Due: May 6Handed out: Apr 15Project 3:
Due: Apr 15Handed out: Mar 18Project 2:
Due: Mar 18Handed out: Feb 18Project 1:
320491: Advanced Graphics - Chapter 1 10
Visualization and Computer Graphics LabJacobs University
Exams
There will be a midterm and a final examination. It is planned to have a written midterm and an oral final examination.
320491: Advanced Graphics - Chapter 1 11
Visualization and Computer Graphics LabJacobs University
Grading
The assignments will contribute 20%, the midterm exam 30%, and the final exam 50% to the overall grade.
320491: Advanced Graphics - Chapter 1 12
Visualization and Computer Graphics LabJacobs University
Dates – Lectures (1)
Lecture 1318.03.Lecture 1216.03.Week 7:No lecture – off campus11.03.Lecture 1109.03.Week 6:Lecture 1004.03.Lecture 902.03.Week 5:Lecture 825.02.Lecture 723.02.Week 4:Lecture 618.02.Lecture 516.02.Week 3:Lecture 411.02.Lecture 309.02.Week 2:Lecture 204.02.Lecture 102.02.Week 1:
320491: Advanced Graphics - Chapter 1 13
Visualization and Computer Graphics LabJacobs University
Dates – Lectures (2)
Lecture 2613.05.Lecture 2511.05.Week 14:Lecture 2406.05.Lecture 2304.05.Week 13:Lecture 2229.04.Lecture 2127.04.Week 12:Lecture 2022.04.Lecture 1920.04.Week 11:Lecture 1815.04.Lecture 1713.04.Week 10:Lecture 1608.04.Holiday06.04.Week 9:
Spring breakLecture 1525.03.Lecture 1423.03.Week 8:
320491: Advanced Graphics - Chapter 1 14
Visualization and Computer Graphics LabJacobs University
Dates - Exams
• Midterm: 23.03.• Final: tbd (finals week)
320491: Advanced Graphics - Chapter 1 15
Visualization and Computer Graphics LabJacobs University
Lab
• There will be no exams.
• There will be 5 course-accompanying project assignments. Solutions that are handed in late lead to reduced credit (-15% per day). Exceptions are only made with an official excuse.
• The grade is to 100% based on the projects.
320491: Advanced Graphics - Chapter 1 16
Visualization and Computer Graphics LabJacobs University
Dates - Assignments
Due: 13.05.Handed out: 29.04.Project 5:Due: 29.04.Handed out: 15.04.Project 4:Due: 15.04.Handed out: 18.03.Project 3:Due: 18.03.Handed out: 04.03.Project 2:Due: 04.03.Handed out: 11.02.Project 1:
320491: Advanced Graphics - Chapter 1 17
Visualization and Computer Graphics LabJacobs University
Literature
• Rick Parent: Computer Animation: Algorithms and Techniques, Morgan Kaufman Publishers, 2nd Edition, 2007.
• Matt Pharr & Greg Humphreys: Physically-based Rendering: From Theory to Implementation, Elsevier, 2nd Edition, 2010.
• Selected journal and conference proceedings papers as announced in class.
• Dave Shreiner, Mason Woo, and Jackie Neider: OpenGL Programming Guide: The Official Guide to Learning OpenGL, Addison-Wesley Longman, 3rd edition, 2006. (Old version available at http://www.glprogramming.com/red.)
• Randi J. Rost and Bill Licea-Kane: OpenGL Shading Language, Addison-Wesley, 3rd edition, 2009.
320491: Advanced Graphics - Chapter 1 18
Visualization and Computer Graphics LabJacobs University
0.2 Goal
320491: Advanced Graphics - Chapter 1 19
Visualization and Computer Graphics LabJacobs University
Goal
Deepen and broaden concepts and techniques in 3D computer graphics.
320491: Advanced Graphics - Chapter 1 20
Visualization and Computer Graphics LabJacobs University
0.3 Content
320491: Advanced Graphics - Chapter 1 21
Visualization and Computer Graphics LabJacobs University
Content
Modeling
Animation
Rendering
• mesh data structures• subdivision surfaces• multiresolution meshes• mesh smoothing• mesh parametrization • deformation
• morphing• particle systems• spring-mass models• applications
• global illumination• monte carlo methods• light field• lumigraph• non-photorealism
GPU programming:• GL shading language
320491: Advanced Graphics - Chapter 1 22
Visualization and Computer Graphics LabJacobs University
Examples
320491: Advanced Graphics - Chapter 1 23
Visualization and Computer Graphics LabJacobs University
Examples
320491: Advanced Graphics - Chapter 1 24
Visualization and Computer Graphics LabJacobs University
320322 revisited
1. Geometric Background2. Object Representation3. Raster Graphics4. Color Models5. Illumination6. Shading7. Global Illumination8. Textures9. Data Visualization10. Curves and Surfaces
320491: Advanced Graphics - Chapter 1 25
Visualization and Computer Graphics LabJacobs University
Graphics Programming
• Graphical user interface (GUI)• Windowing system
– X– Integrated in OS: Microsoft Windows, Mac OS
• Microsoft Direct3D• OpenGL (Open Graphics Library)• OpenGL 2.0 (and higher)
– GLSL (GL Shading Language)• Cg (nVidia)• HLSL (high level shader language, DirectX)• GPGPU programming: CUDA (nVidia), CTM (ATI),
OpenCL
320491: Advanced Graphics - Chapter 1 26
Visualization and Computer Graphics LabJacobs University
1. Modeling
320491: Advanced Graphics - Chapter 1 27
Visualization and Computer Graphics LabJacobs University
Goal
Changing the shape of objects• to adjust to desired look• to improve shape• to improve representation / appearance
320491: Advanced Graphics - Chapter 1 28
Visualization and Computer Graphics LabJacobs University
Driving questions
• How can we modify the shape?• What representations support these changes?• How can we obtain intuitive modeling operations?• How can we obtain interactive modeling operations?• How can we fix undesired changes quickly?• How can we improve appearance?• How can we improve quality?• How can we judge quality?
320491: Advanced Graphics - Chapter 1 29
Visualization and Computer Graphics LabJacobs University
1.1 Object representation (revisited)
320491: Advanced Graphics - Chapter 1 30
Visualization and Computer Graphics LabJacobs University
Boundary representations
Objects are typically represented by theirboundary surfaces.
320491: Advanced Graphics - Chapter 1 31
Visualization and Computer Graphics LabJacobs University
Manifold surfaces
Boundary representations lead to manifold surfaces, i.e. 2-manifolds.Definition:• A 2-manifold is a surface, where for each surface
point the surface is locally homeomorphic to a disk.
non-manifold surface
320491: Advanced Graphics - Chapter 1 32
Visualization and Computer Graphics LabJacobs University
Topology
Genus = number of handles
genus 0 genus 1 genus 2
320491: Advanced Graphics - Chapter 1 33
Visualization and Computer Graphics LabJacobs University
Homeomorphism
homeomorph = topologically isomorph
320491: Advanced Graphics - Chapter 1 34
Visualization and Computer Graphics LabJacobs University
Acquisition vs. generation
320491: Advanced Graphics - Chapter 1 35
Visualization and Computer Graphics LabJacobs University
Acquisition vs. generation
320491: Advanced Graphics - Chapter 1 36
Visualization and Computer Graphics LabJacobs University
Acquisition vs. generation
320491: Advanced Graphics - Chapter 1 37
Visualization and Computer Graphics LabJacobs University
Acquisition vs. generation
320491: Advanced Graphics - Chapter 1 38
Visualization and Computer Graphics LabJacobs University
Implicit vs. explicit representation
explicit implicit
generated
acquired
320491: Advanced Graphics - Chapter 1 39
Visualization and Computer Graphics LabJacobs University
A. Explicit surface representations
320491: Advanced Graphics - Chapter 1 40
Visualization and Computer Graphics LabJacobs University
Explicit surface representations
polygonal meshes
320491: Advanced Graphics - Chapter 1 41
Visualization and Computer Graphics LabJacobs University
Heightfield
320491: Advanced Graphics - Chapter 1 42
Visualization and Computer Graphics LabJacobs University
Arbitrary triangular mesh
320491: Advanced Graphics - Chapter 1 43
Visualization and Computer Graphics LabJacobs University
„Almost“ regular triangular mesh
320491: Advanced Graphics - Chapter 1 44
Visualization and Computer Graphics LabJacobs University
„Almost“ regular quadrilateral mesh
320491: Advanced Graphics - Chapter 1 45
Visualization and Computer Graphics LabJacobs University
Euler formula
For closed polygonal meshesV – E + F = 2 (1-g)
withV = # verticesE = # edgesF = # facesg = genus
Example: Cube8 – 12 + 6 = 2
320491: Advanced Graphics - Chapter 1 46
Visualization and Computer Graphics LabJacobs University
3D Laser Scanner
320491: Advanced Graphics - Chapter 1 47
Visualization and Computer Graphics LabJacobs University
Point Cloud
320491: Advanced Graphics - Chapter 1 48
Visualization and Computer Graphics LabJacobs University
Surface Reconstruction
320491: Advanced Graphics - Chapter 1 49
Visualization and Computer Graphics LabJacobs University
Point Cloud Rendering
320491: Advanced Graphics - Chapter 1 50
Visualization and Computer Graphics LabJacobs University
Splat-based Rendering
320491: Advanced Graphics - Chapter 1 51
Visualization and Computer Graphics LabJacobs University
Computer Aided Geometric Design
320491: Advanced Graphics - Chapter 1 52
Visualization and Computer Graphics LabJacobs University
Piecewise polynomial surfaces
Freeform surfaces• Bézier surfaces• B-spline surfaces
320491: Advanced Graphics - Chapter 1 53
Visualization and Computer Graphics LabJacobs University
B. Implicit surface representations
320491: Advanced Graphics - Chapter 1 54
Visualization and Computer Graphics LabJacobs University
Quadrics
ellipsoid
320491: Advanced Graphics - Chapter 1 55
Visualization and Computer Graphics LabJacobs University
Hyperboloid
320491: Advanced Graphics - Chapter 1 56
Visualization and Computer Graphics LabJacobs University
Paraboloid
320491: Advanced Graphics - Chapter 1 57
Visualization and Computer Graphics LabJacobs University
Constructive Solid Geometry (CSG)
320491: Advanced Graphics - Chapter 1 58
Visualization and Computer Graphics LabJacobs University
Boolean operations
320491: Advanced Graphics - Chapter 1 59
Visualization and Computer Graphics LabJacobs University
Boolean operations
320491: Advanced Graphics - Chapter 1 60
Visualization and Computer Graphics LabJacobs University
Volume data
320491: Advanced Graphics - Chapter 1 61
Visualization and Computer Graphics LabJacobs University
Isosurface
320491: Advanced Graphics - Chapter 1 62
Visualization and Computer Graphics LabJacobs University
C. Conversion
320491: Advanced Graphics - Chapter 1 63
Visualization and Computer Graphics LabJacobs University
Implicit to explicit
Isosurface extraction• E.g. Marching Cubes
320491: Advanced Graphics - Chapter 1 64
Visualization and Computer Graphics LabJacobs University
Explicit to implicit
Create a signed distance field• generate a grid• compute at each grid point the signed distance to
the surface
320491: Advanced Graphics - Chapter 1 65
Visualization and Computer Graphics LabJacobs University
1.2 Mesh Data Structures
320491: Advanced Graphics - Chapter 1 66
Visualization and Computer Graphics LabJacobs University
References
• Mario Botsch, Mark Pauly, Leif Kobbelt, Pierre Alliez, Bruno Lévy, Stephan Bischoff, and Christian Rössl, Geometric modeling based on polygonal meshes. SIGGRAPH '07: ACM SIGGRAPH 2007 courses, ACM, 2007.
• Kenneth I. Joy, Justin Legakis, and Ron MacCracken: Data Structures for Multiresolution Representationof Unstructured Meshes. in: HierarchicalApproximation and Geometric Methods for ScientificVisualization, Gerald Farin, Hans Hagen, and Bernd Hamann (editors), Springer-Verlag, Heidelberg, Germany, 2002.
320491: Advanced Graphics - Chapter 1 67
Visualization and Computer Graphics LabJacobs University
Polygon soup
• array of vertices• array of polygons (stored as sequence of vertex indices)Example:• vertices = [(v1.x,v1.y,v1.z), …]• triangles = [(1,2,3),(2,3,4),…]Advantage: memory efficient