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

Mesh Quilting For Geometric Texture Synthesis

  • Upload
    calvin

  • View
    43

  • Download
    0

Embed Size (px)

DESCRIPTION

Mesh Quilting For Geometric Texture Synthesis. Kun Zhou et al. In SIGGRAPH 2006 발표 이성호 2009 년 4 월 15 일. 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 - PowerPoint PPT Presentation

Citation preview

Page 1: Mesh Quilting For Geometric Texture  Synthesis

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

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

3

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

modeled• Modeling such complex geometric details– A tedious process

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

Page 4: Mesh Quilting For Geometric Texture  Synthesis

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

5

Page 6: Mesh Quilting For Geometric Texture  Synthesis

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

7

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

– Shell map• [Porumbescu et al.

2005]

Page 8: Mesh Quilting For Geometric Texture  Synthesis

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

9

Example-based Texture Synthe-sis

• Synthesis based on per-pixel non-para-metric 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

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

11

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

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

• 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

12

Graphcut textures

Page 13: Mesh Quilting For Geometric Texture  Synthesis

13

Page 14: Mesh Quilting For Geometric Texture  Synthesis

14

Page 15: Mesh Quilting For Geometric Texture  Synthesis

15

Shell map

Page 16: Mesh Quilting For Geometric Texture  Synthesis

16

Page 17: Mesh Quilting For Geometric Texture  Synthesis

17

Page 18: Mesh Quilting For Geometric Texture  Synthesis

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

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

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

21

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

• Triangle meshes– Both the input geometry and output geome-

try• 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

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

23

Mesh Quilting Synthesis• Setup & Nomenclature

Page 24: Mesh Quilting For Geometric Texture  Synthesis

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

25

Page 26: Mesh Quilting For Geometric Texture  Synthesis

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 num-

ber 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

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

28

Page 29: Mesh Quilting For Geometric Texture  Synthesis

29

Page 30: Mesh Quilting For Geometric Texture  Synthesis

30

• Restrict the translation t to be in – grid unit

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

alignment• Octree data structure for the input

texture– Significant speed-up

Page 31: Mesh Quilting For Geometric Texture  Synthesis

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

32

Page 33: Mesh Quilting For Geometric Texture  Synthesis

33

Element Deformation

Page 34: Mesh Quilting For Geometric Texture  Synthesis

34

Page 35: Mesh Quilting For Geometric Texture  Synthesis

35

Page 36: Mesh Quilting For Geometric Texture  Synthesis

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

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

38

Page 39: Mesh Quilting For Geometric Texture  Synthesis

39

Page 40: Mesh Quilting For Geometric Texture  Synthesis

40

Page 41: Mesh Quilting For Geometric Texture  Synthesis

41

Mesh Quilting Over Curved Sur-faces

• 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

42

From Planar to Curved• 2D grid -> base mesh– Quilting process will stop

• Only when there are no more unprocessed tri-angles

• 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

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

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

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

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

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 posi-tions 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

48

Page 49: Mesh Quilting For Geometric Texture  Synthesis

49

Page 50: Mesh Quilting For Geometric Texture  Synthesis

50

Shell Mapping• Porumbescu et al. [2005]– Creates large distortion in curved regions

• 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

51

Page 52: Mesh Quilting For Geometric Texture  Synthesis

52

Page 53: Mesh Quilting For Geometric Texture  Synthesis

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

54

Page 55: Mesh Quilting For Geometric Texture  Synthesis

55

Page 56: Mesh Quilting For Geometric Texture  Synthesis

56

Page 57: Mesh Quilting For Geometric Texture  Synthesis

57

Page 58: Mesh Quilting For Geometric Texture  Synthesis

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

59

Conclusions• Mesh-based 3D texture synthesis al-

gorithm