geometry images xiang gu harvard university steven j. gortler harvard university hugues hoppe...

Post on 31-Dec-2015

220 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Geometry Images

Xiang Gu

Harvard University

Steven J. Gortler

Harvard university

Hugues Hoppe

Microsoft Research

•Some slides taken from Hugues Hoppe

Background

• Modeling geometry with (triangular) meshes

• regular / iregular meshes

• current tecniques form semi-regular meshes

• typically: cut into disks

parametrize each disk

each disk is regular

all disks are iregular network

Advantages of Regularity

• Improved compression (implicit connectivity)

• Reduce tangent non-uniformity

• Better start for hirarchial resolution

Introduction

• Remesh into a completely regular structure

• geometry as 2D array of points

• more arrays for “surface signals”:– normals– colours– texture

• encode as RGB picture

The General Algorithm

• Cut the mesh

• parametrize into an n*n square

• [x,y,z] <==> [R,G,B]

• encode using image compression algorithms

• other attributes - additional images

• implicit parametrization

Challenges

• Find a “good cut” (form a disk-like surface)

• Avoid “cracks in the cut” along the boundary

• Evenly distributing parametrization

• lossy compression - cut fusing

Creating The Geometry Image

The Cut

• Cut = set of edges

• M = Original mesh M’ = New mesh

mates

Split

• Split (non boundary) edges

• form “open cut” ’’ is a directed loop = edge of M’

Split - cont.

• Valence k ==> k replications

• valence 2 ==> “cut node”

Cut Path

• Path between 2 ordered cut nodes of ’

• mate to cut path

Parametrization

• (piecewise) linear map : [n * n] => [vM’]

• resample mesh at grid

• triangle interpolation

Parametrization

Boundary parametrization

• Map ’ ==> boundary of square

• cut nodes => on grid

• cut mates => same length

Boundary parametrization - cont.

• How is it done?– Allocate proportional length– redistribute

Boundary parametrization - cont.

• Avoid degeneracies:– no full triangle on 1 side (split middle)– break edges over corners (add vertex)

Interior parametrization

• Geometric stretch parametrization– minimize spacing on surface (parameters

distribute evenly)– P.V. Sander, J. Snyder, S.J. Gortler and H.

Hoppe. Texture mapping progressive meshes.

• Also serves as metric for mesh

Cutting

Initial Cut

• Fact:– genus 0 ==> 1 edge cut– genus g ==> 2g generator loops cut (that form

basis to surface’s fundamental group)

Find the cut - retractor algorithm

• Remove a seed triangle

• Repeatedly remove an edge adjacent to exactly 1 triangle and the triangle

• Repeatedly remove ‘dandling’ edges (vertices with degree 1 + the edge)

• do not change boundary (if exists)

Original mesh

Remove seed triangle

Remove edges and triangles

Iterate

Done: no triangles left (no faces)

Remove dandling edges

Iterate

We are left with this:

Initial Cut

• Result of the algorithm:– generator loops (genus > 0)– one vertex (genus 0)

• if 1 vertex : add 2 more (adjacent)

Iterated Cut Augmentation

• Parametrize on unit circle (Floater)– M. Floater. Parametrization and smooth

approximation of surface triangulations.

• Find vertex with highest geometric stretch

• Find shortest path to boundary

• Add path to cut

• Stop when geometric stretch increases

• for genus 0: disregard original cut

Putting it all together

Rendering

Compression

Again this Crack!

Topological Sideband

• Table of nodes in • for each node, record:

– valence (k)– k coordinate pairs (s,t)

• Deduce ’ matching from the table

• “Fuse cut” using matchings

top related