59
Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발발 발발발 2009 발 4 발 15 발

Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

Embed Size (px)

Citation preview

Page 1: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

Mesh Quilting For Geomet-ric Texture Synthesis

Kun Zhou et al.In SIGGRAPH 2006

발표 이성호2009 년 4 월 15 일

Page 2: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

2

Abstract

• Mesh quilting– Geometric texture synthesis algorithm– 3D texture sample given in the form of a triangle

• inside a thin shell around an arbitrary surface

• Allow interactive and versatile editing and animation

• Based on stitching together 3D geometry elements

• On curved surfaces– Reduce distortion of geometry elements

• inside the 3D space of the thin shell

– Low-distortion parameterization

Page 3: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

3

Introduction

• Today’s commodity video cards– Exquisite details can be purely geometrically

modeled

• Modeling such complex geometric de-tails– A tedious process

• Creating mesh-based 3D geometric tex-tures– Remains challenging

Page 4: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

4

Mesh quilting

• To synthesize geometric details by stitching together small patches – of an input geometric texture sample

• Tools to further edit and animate – these geometric details

Page 5: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

5

Page 6: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

6

Related work

• Modeling of Geomet-ric Detail on Surfaces– Fur• [Kajiya and Kay 1989]

– Rendering fur with three dimensional textures.

– In Proceedings of SIG-GRAPH 89

– Volume textures• [Neyret 1998]

Page 7: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

7

• More versatile repre-sentations– Geometric textures• [Elber 2005]

– Shell map• [Porumbescu et al.

2005]

Page 8: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

8

• Limitations– Periodic textures

• Mesh-based creation – Of geometric textures on arbitrary

meshes– [Fleischer et al. 1995]–Mostly restricted to the dissemination • Of simple texture elements over the surface

Page 9: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

9

Example-based Texture Syn-thesis

• Synthesis based on per-pixel non-parametric sampling– [Turk 2001;Wei and Levoy 2001; Ying et

al. 2001; Tong et al. 2002; Zelinka and Garland 2003]

• Based on the L2-norm– a relatively poor measure

• of perceptual similarity,

– such algorithms are not applicable • to a large spectrum of textures.

Page 10: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

10

• Textures by directly copying small parts – of an input texture sample– alpha-blending [Praun et al. 2000]– quilting

• [Efros and Freeman 2001; Liang et al. 2001; Soler et al. 2002; Magda and riegman 2003; Kwatra et al. 2003; Wu and Yu 2004; Zhou et al. 2005]

• Searching for the “min-cut” seams– further enhance the smoothness across the

seams• [Efros and Freeman 2001; Kwatra et al. 2003; Zhou et

al. 2005]

Page 11: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

11

• Feature matching– [Wu and Yu 2004]– Human visual system is so sensitive

• to edges, corners and other high-level features in tex-tures

• Parallel controllable texture synthesis on GPU– [Lefebvre and Hoppe 2005]

• Texture synthesis using Expectation Maximiza-tion optimization– [Kwatra et al. 2005]

Page 12: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

12

Graphcut textures

Page 13: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

13

Page 14: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

14

Page 15: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

15

Shell map

Page 16: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

16

Page 17: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

17

Page 18: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

18

Challenges

• Little work to provide tool – for 3D geometric texture synthesis.• [Bhat et al. 2004; Lagae et al. 2005]

[Lagae et al. 2005]

Page 19: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

19

• [Bhat et al. 2004] – voxel-based approach

• [Lagae et al. 2005] – used distance fields

[Bhat et al. 2004]

Page 20: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

20

Challenges

• Irregular mesh– The input texture sample

• is not a regular array of pixel values

• Geometry elements– Each being truly a small 3D object identified

• As a connected component in 3D

• Quilting is performed on curved surfaces– Severe distortion in the 3D space

Page 21: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

21

Contributions

• Mesh-based geometric texture synthesis– Synthesized over the base mesh.

• Triangle meshes– Both the input geometry and output geometry

• Integrity– Maintains the integrity of geometry elements

• In the synthesized texture• Texture editing and texture animation

– can be easily performed

Page 22: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

22

• Aligns elements – through local deformation– And merges elements to connect texture

patches

• Mesh quilting on curved surfaces– Low-distortion parameterization • of the shell space

Page 23: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

23

Mesh Quilting Synthesis

• Setup & Nomenclature

Page 24: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

24

Algorithm Overview

• Seed Finding– Find a seed region R from which to grow the output mesh texture

further out

• Geometry Matching– Find the best patch placement around region R using geometry

matching to minimize mismatch between the new and the old patch

• Element Correspondences– Find correspondences between elements in the new patch and

those in the old patch

• Element Deformation– Align the corresponding elements through local deformation

• Element Merging– Expand the output texture by merging the new patch into the

output texture space

Page 25: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

25

Page 26: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

26

Seed Finding

• Grid-based approach– The bounding boxes of both Mout and Min are subdi-

vided in finer regular grids

• These grids are only two-dimensional• Initially, the cells of Mout are tagged unprocessed

• Each time we wish to grow out the current mesh Mout, – we look for an unprocessed cell with the largest

number of adjacent cells that are already processed• this will be the seed cell that we will try to process next.

Page 27: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

27

Geometry Matching

• Find how to complete the mesh tex-ture in the seed cell– and possibly add to its surroundings too.

Using the nearby existing mesh texture available near the seed cell

– Find a portion of the original swatch Min best matching this surrounding to ex-tend Mout .

Page 28: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

28

Page 29: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

29

Page 30: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

30

• Restrict the translation t to be in – grid unit

• Element deformation described in Section 2.6 – will compensate for an imperfect ele-

ment alignment

• Octree data structure for the input texture– Significant speed-up

Page 31: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

31

Element Correspon-dences

• the overlapping region is usually larger than the small sub-patch Pout – since the input mesh texture covers Pout

completely.

Page 32: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

32

Page 33: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

33

Element Deformation

Page 34: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

34

Page 35: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

35

Page 36: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

36

Element Merging

• Every element (either from Cout or Cin) without correspondence – directly added to Mout .

• For every established correspondence (Cout ,Cin)– If Cout is entirely within the overlapping re-

gion, Cout is ignored • and Cin is instead added to the final results

– if Cin is entirely within the overlapping region,• Cin is ignored and Cout is added to Mout .

Page 37: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

37

In all other cases

• stitch parts of Cin and Cout– to get a singly-connected, combined element– seek a cut path in each element– the graph cut algorithm

• [Boykov et al. 2001]

Page 38: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

38

Page 39: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

39

Page 40: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

40

Page 41: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

41

Mesh Quilting Over Curved Surfaces

• Setup– Let Mbase be the base mesh that we wish

to enhance with added geometric de-tails.

–Min the geometric texture mesh • used as a swatch

– seamlessly tile the base mesh

– S• the scale of the geometric details

Page 42: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

42

From Planar to Curved

• 2D grid -> base mesh– Quilting process will stop

• Only when there are no more unprocessed triangles

• Define a local surface patch – By starting from the chosen triangle – Growing the region

• Using breadth-first traversal – Until we reach a certain depth– Or when the total area of the patch exceeds a user-

defined threshold

Page 43: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

43

• Position of vertices located with re-spect to the base mesh

• Location of a vertex v – over a triangle Tbase – is defined by the barycentric coordinates – of its orthogonal projection • on Tbase

– along with the orthogonal distance (i.e., height) » from the triangle to v

Page 44: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

44

discrete conformal map-ping

• surface patch is flattened over the 2D plane – using a discrete conformal mapping• DCM [Desbrun et al. 2002]

Page 45: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

45

• Local operations – Described for planar mesh quilting– Can be performed • Over this parameterization plane

• Position of the newly synthesized vertices–Will be reprojected • Onto the local mesh-based coordinate sys-

tem

Page 46: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

46

in very curved regions

• If the area distortion induced – by the local parameterization is too

large– Reduce the area of the surface patch• This will decrease

– the size of the output-sub-patch Pout

Page 47: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

47

Final Mesh Embedding

• Convert the vertex positions– Stored in local coordinates for now– Into a stand-alone, common embedding

• Self-intersections can be created• Build a texture atlas for Mbase

– Convert the above local representation of vertex positions to locations • in a geometry texture space

• Then, construct a shell space around Mbase– Mapping the vertices

• from the geometry texture space to the shell space– will fix the location of the vertices in 3D space

Page 48: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

48

Page 49: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

49

Page 50: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

50

Shell Mapping

• Porumbescu et al. [2005]– Creates large distortion in curved re-

gions

• We alleviate this!– By optimizing a stretch metric on this

tetrahedral mesh– A natural extension of • low-distortion parameterization

– of triangle meshes

• [Sander et al. 2001]

Page 51: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

51

Page 52: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

52

Page 53: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

53

Minimization Algorithm

• Only update the u and v texture co-ordinates of the vertices on the offset surface

• Optimization of the stretch metric – along a randomly chosen search direc-

tion – in the (u, v) plane – as in [Sander et al. 2001].

Page 54: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

54

Page 55: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

55

Page 56: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

56

Page 57: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

57

Page 58: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

58

Discussions

• Regions with very high curvature can be badly handled– parametric distortion of small surface

patches may be high

• Cannot always achieve perfect matching – if the swatch is untileable

• even with major element deformation

– Postprocessing step is performed • to remove those visually-displeasing elements• Figure 5(b)

Page 59: Mesh Quilting For Geometric Texture Synthesis Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일

59

Conclusions

• Mesh-based 3D texture synthesis al-gorithm