CENG 789 – Digital Geometry Processing 01- Introduction

Slides:



Advertisements
Similar presentations
Discrete Differential Geometry Planar Curves 2D/3D Shape Manipulation, 3D Printing March 13, 2013 Slides from Olga Sorkine, Eitan Grinspun.
Advertisements

Spherical Representation & Polyhedron Routing for Load Balancing in Wireless Sensor Networks Xiaokang Yu Xiaomeng Ban Wei Zeng Rik Sarkar Xianfeng David.
Applications of Euler’s Formula for Graphs Hannah Stevens.
Extended Gaussian Images
By Groysman Maxim. Let S be a set of sites in the plane. Each point in the plane is influenced by each point of S. We would like to decompose the plane.
Discrete Geometry Tutorial 2 1
Xianfeng Gu, Yaling Wang, Tony Chan, Paul Thompson, Shing-Tung Yau
Rüdiger Westermann Lehrstuhl für Computer Graphik und Visualisierung
1 Computer Graphics Chapter 7 3D Object Modeling.
Asst. Prof. Yusuf Sahillioğlu
CENG 789 – Digital Geometry Processing 01- Introduction Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
CENG 789 – Digital Geometry Processing 05- Smoothing and Remeshing
Asst. Prof. Yusuf Sahillioğlu
Offset of curves. Alina Shaikhet (CS, Technion)
Cutting a surface into a Disk Jie Gao Nov. 27, 2002.
Applied Combinatorics, 4th Ed. Alan Tucker
Computational Geometry Seminar Lecture 1
Content Subdivision First some basics (control point polygon, mesh)
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Chapter 4: 3D Convex Hulls Monday, 2/23/04.
Curve Curve: The image of a continous map from [0,1] to R 2. Polygonal curve: A curve composed of finitely many line segments. Polygonal u,v-curve: A polygonal.
12.1 Exploring Solids Geometry Mrs. Spitz Spring 2006.
Chapter 12 Surface Area and Volume. Topics We Will Discuss 3-D Shapes (Solids) Surface Area of solids Volume of Solids.
Mesh Representation, part I
A D V A N C E D C O M P U T E R G R A P H I C S CMSC 635 January 15, 2013 Spline curves 1/23 Curves and Surfaces.
Algorithms for Triangulations of a 3D Point Set Géza Kós Computer and Automation Research Institute Hungarian Academy of Sciences Budapest, Kende u
Geometric Modeling using Polygonal Meshes Lecture 1: Introduction Hamid Laga Office: South.
1 Surface Applications Fitting Manifold Surfaces To 3D Point Clouds, Cindy Grimm, David Laidlaw and Joseph Crisco. Journal of Biomechanical Engineering,
Solid Modeling. Solid Modeling - Polyhedron A polyhedron is a connected mesh of simple planar polygons that encloses a finite amount of space. A polyhedron.
Geometric Modeling using Polygonal Meshes Lecture 3: Discrete Differential Geometry and its Application to Mesh Processing Office: South B-C Global.
A construction of rational manifold surfaces of arbitrary topology and smoothness from triangular meshes Presented by: LiuGang
Lee Byung-Gook Dongseo Univ.
CENG 789 – Digital Geometry Processing 04- Distances, Descriptors and Sampling on Meshes Asst. Prof. Yusuf Sahillioğlu Computer Eng. Dept,, Turkey.
Introduction to Curves
Solid Modeling Prof. Lizhuang Ma Shanghai Jiao Tong University.
Object Modeling: Curves and Surfaces CEng 477 Introduction to Computer Graphics.
Subdivision Schemes. Center for Graphics and Geometric Computing, Technion What is Subdivision?  Subdivision is a process in which a poly-line/mesh is.
1 Spherical manifolds for hierarchical surface modeling Cindy Grimm.
Graphs. Representations of graphs : undirected graph An undirected graph G have five vertices and seven edges An adjacency-list representation of G The.
Geometric Shapes and Area
Geometric Shapes and Area
CENG 477 Introduction to Computer Graphics
CMPS 3130/6130 Computational Geometry Spring 2017
Algorithms and Networks
Great Theoretical Ideas In Computer Science
Planar Graphs Hubert Chan (Chapter 9.7) [O2 Proof Techniques]
Outline 1 Properties of Planar Graphs 5/4/2018.
Discrete Mathematics Graph: Planar Graph Yuan Luo
CENG 789 – Digital Geometry Processing 04- Mesh Data Structures
Goal 1: Using Properties of Polyhedra Goal 2: Using Euler’s Theorem
Graphs: Definitions and Basic Properties
Constructing Objects in Computer Graphics
CENG 789 – Digital Geometry Processing 02- Polygons and Triangulations
Introduction to Functions of Several Variables
Assoc. Prof. Yusuf Sahillioğlu
Unit 11: 3-Dimensional Geometry
Morphing and Shape Processing
Applied Combinatorics, 4th Ed. Alan Tucker
Constructing Objects in Computer Graphics By Andries van Dam©
3D Object Representations
Unit 11: 3-Dimensional Geometry
Planarity and Euler’s Formula
10-1 Vocabulary Face Edge Vertex Prism Cylinder Pyramid Cone Cube Net
Applied Combinatorics, 4th Ed. Alan Tucker
Surface Area and Volume
Geometric Shapes and Area
Planarity.
Agenda Review Lecture Content: Shortest Path Algorithm
Spline representation. ❖ A spline is a flexible strip used to produce a smooth curve through a designated set of points. ❖ Mathematically describe such.
Prof. Lizhuang Ma Shanghai Jiao Tong University
Presentation transcript:

CENG 789 – Digital Geometry Processing 01- Introduction Assoc. Prof. Yusuf Sahillioğlu Computer Eng. Dept, , Turkey

Administrative Tue 14:40-17:30 @ A-101. www.ceng.metu.edu.tr/~ys/ceng789-dgp/ Grading 40%: 2 programming assignments. 40%: Term Project. 20%: Final Exam. Reference book: Polygon Mesh Processing: C++ programming required. Code framework including 3D UI will be provided. Similar courses. EPFL, M. Pauly. Stanford, V. Kim. Technion, M. Ben-Chen. Instructor: Yusuf Sahillioğlu (ys@ceng.metu.edu.tr) (office: B107)

Objective Learn concepts and algorithms for a complete geometric modeling system.

Objective We deal mostly with Reconstruction Analysis Manipulation/Editing Synthesis

Why do we care? Geometry: geo (earth) + metron (measurement) From ancient times: To modern times: Send a slave to measure the distance from the tree to the mountain by foot steps. Come next to the tree. Bend until you see the top of the mountain from the top of the tree. Measure the height of your eye from the ground. Measure your distance to the tree. Use triangle similarity.

Geometric Digital Modeling Geometric objects in the world are digitally modeled (representation) for easy manipulation easy repairing easy comparison easy synthesis cheaper simulation Digitially modeled (designed on a computer)

Digital Models Geometric objects in the world are digitally modeled (representation).

Digital Models Geometric objects in the world are digitally modeled (representation).

Digital Models Digital models are used in video games 3D cinema

Digital Models Digital models are used in medicine, esthetics paleontology., math, other sciences Robotics, autonomous driving

Digital Models Digital models are used in cultural heritage (reconstruction, matching) geological data mapping and interpolation engineering

Digital Models Digital models are used in virtual shopping fabrication (3d printing)

Digital Models Digital models are used in virtual reality exploration analysis (e.g., segmentation, correspondence) exploration

Digital Models Digital models are useful because A digital model allows easy manipulation. Digital simulation is much cheaper. Model optimization and repair is possible. Comparison across models is easy. Creation of new models from other ones is easy.

Geometry Capture Static.

Geometry Capture Dynamic (performance capture).

Geometry Creation Artists/interactive modeling. Automated tools.

Geometry Representation We are interested in thin-shell surfaces, represented by polygon meshes: set of polygons representing a 2D surface embedded in 3D. Other representations.

Polygon Mesh Why polygon meshes? Surface of a solid shape is sufficient for Rendering Adaptive refinement Similarity comparison New surface generation Segmentation Many other analyses Not realistic for deformations though (use tetmeshes here).

Polygon Mesh Polygon meshes are piecewise linear surface representations. Analogous to piecewise functions: Think surface as (the range of) a “shape” function. vs. You could also define a surface implicitly as the zero set of a scalar-valued function F : R^2  R, i.e. surface = {x \in R^2 | F(x) = 0} For instance, same circle defined with the parametric representation above can be defined with the implicit representation as follows: (x, y)  sqrt(x^2 + y^2) – r //2D points (x, y) that make the righthandside 0 are the circle points.

Polygon Mesh 1D: This line piece approximates the given shape (circle) only locally. 2D: This triangle piece approxs the given shape (sphere) only locally.

Polygon Mesh Approximation error decreases as # pieces increases.

Polygon Mesh Approximation error is quadratic. As # pieces doubled, error decreases one forth. Another way to decrease error is using non-linear pieces (instead of 1D-lines or 2D-triangles/quads) such as spline surfaces. But not preferred ‘cos with such higher-degree polynomials smoothness conditions between pieces are sometimes quite difficult to satisfy.

Polygon Mesh Polygon meshes are C 0 piecewise linear surface representations. Smoothness levels: C 0: Position continuity C 1: Tangent continuity C 2: Curvature continuity

Polygon Mesh Types 2-manifold: if, for each point, the surface is locally homeomorphic to a disk (or a half-disk at boundaries). A triangle mesh is a 2-manifold if it contains neither non-manifold edges nor non-manifold vertices nor self-intersections (red stuff above). Non-manifold meshes are problematic for most algorithms, since around non-manifold configurations there exists no well-defined local geodesic neighborhood. Types of edges: boundary (adjacent to 1 face), regular (adj. to 2 faces), singular (adj. to 3+ faces). Closed polygon meshes are also known as polyhedra: bounded region of space whose boundary is composed of flat polygonal faces.

Triangle Meshes Most common piece is triangles (quads come second). A set of triangles (embedded in 3D or 2D) that are connected by their common edges or corners. Each triangle defines, via its barycentric parameterization, a segment of a piecewise linear surface representation, so that you can, e.g., interpolate function values at triangle vertices a, b, and c.

Triangle Meshes An undirected graph, with triangle faces.

Triangle Meshes An undirected graph, with triangle faces. Vertex degree or valence = # incident edges deg(A) = 4 deg(B) = 3 k-regular mesh if all vertex degrees are equal to k.

Triangle Meshes An undirected graph, with triangle faces. connected if every pair of vertices are connected by a path (of edges).

Triangle Meshes A specific undirected graph: straight-line plane graph (embedded in 2/3D) where every face is a triangle, a.k.a. triangulation. Planar graph: graph whose vertices and edges can be embedded in 2D without intersecting edges. Planar graph Plane graph Straight-line plane graph

V – E + F = 2 Mesh Statistics Euler formula for planar graphs help us derive cool mesh statistics. Holds for triangle, quad, pentagon, .. faces, i.e., polygon faces. V – E + F = 2 Triangle mesh is a planar triangulation embedded in R3.

Mesh Statistics Proof of Euler’s formula: V – E + F = 2 Induct on E, # edges. Base Case: 2 – 1 + 1 = 2 //holds  Inductive Step: Assume formula is True for planar subgraph with E edges. Show that it must also be T for planar graph with E+1 edges.  Add new (red) edge  V – (E + 1) + (F + 1) = 2  ‘cos V – E + F = 2 by inductive hypothesis.

Mesh Statistics Based on Euler’s formula, we can derive: Proofs: F ~ 2V E ~ 3V Average vertex degree is 6. Proofs: For E ~ 3V: count 3 edges for each face  3F = E this way each edge counted twice  3F = 2E V – E + F = 2  V – E + 2E/3 = 2 negligible E ~ 3V For F ~ 2V: V – E + F = 2  V – 3F/2 + F = 2 negligible  F ~ 2V For avg degree = sum_v deg(v) / V = 2E / V //by handshaking lemma = 6V / V = 6.

V – E + F = 2(1-g) Mesh Statistics Generalized Euler Formula: where g is the genus of the surface, i.e., # handles of an object.

Pop-quiz Is this a polygon mesh? Any closed surface of genus 0 consisting only of hexagons and pentagons and where every vertex has valence 3 must have exactly 12 pentagons.

Potential Project Topics Segmentation of 3D Models using Random Walks 3D Generative-Adversarial Modeling