Lapped Solid Textures: Filling a Model with Anisotropic Textures

38
Lapped Solid Textures: Filling a Model with Anisotropic Textures Kenshi Takayama 1 Makoto Okabe 1 Takashi Ijiri 1 Takeo Igarashi 1,2

description

Lapped Solid Textures: Filling a Model with Anisotropic Textures. Kenshi Takayama 1 Makoto Okabe 1 Takashi Ijiri 1 Takeo Igarashi 1,2 1 The University of Tokyo 2 JST ERATO. Goal. Create 3D models with internal textures Target: natural objects Fruits, vegetables, … - PowerPoint PPT Presentation

Transcript of Lapped Solid Textures: Filling a Model with Anisotropic Textures

Page 1: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Lapped Solid Textures:Filling a Model with Anisotropic Textures

Lapped Solid Textures:Filling a Model with Anisotropic Textures

Kenshi Takayama1 Makoto Okabe1

Takashi Ijiri1 Takeo Igarashi1,2

1The University of Tokyo2JST ERATO

Page 2: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

GoalGoal

• Create 3D models with internal textures

• Target: natural objects

– Fruits, vegetables, …

– Non-uniform internal structure

Demo

Page 3: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Our approachOur approach

Page 4: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Key idea: Extend “Lapped textures” to 3DKey idea: Extend “Lapped textures” to 3D

Lapped textures [Praun et al. ’00]

Texture patchSurface vector field

2D texture exemplar Triangular mesh

Patch-pasting

Result

Page 5: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Key idea: Extend “Lapped textures” to 3DKey idea: Extend “Lapped textures” to 3D

Texture patchVolumetric tensor field

3D texture exemplar Tetrahedral mesh

Patch-pasting

Result

Lapped solid textures

Page 6: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Related workRelated work

Page 7: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Procedural approachProcedural approach

Pros

• Compact

• Arbitrary resolution

Cons

• Difficult to control

• Uniform patterns only

[Perlin ’85]

[Cutler et al. ’04]

Page 8: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Tweaking 2D photosTweaking 2D photos

Pros

• Intuitive user interface

• Non-uniform structure

Cons

• Artifacts

– Inconsistency (Owada)

– Blur by morphing (Pietroni)

[Owada et al. ’04]

[Pietroni et al. ’07]

Page 9: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Solid texture synthesisSolid texture synthesis

Pros

• Quality 3D texture from 2D examplars

Cons

• Data-intensive

• Difficult to handle non-uniform structure

[Kopf et al. ’07]

[Heeger and Bergen ’95; Ghazanfarpour and Dischler ’96; Dischler et al. ’98; Lefebvre and Poulin ’00 ; Wei ’02; Jagnow et al. ’04; Qin and Yang ’07; Kopf et al. ’07; Dong et al. ’08]

Page 10: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

UINon-

uniformSize Quality

Procedural approach Tweaking 2D photos Solid texture synthesis

Page 11: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

UINon-

uniformSize Quality

Procedural approach Tweaking 2D photos Solid texture synthesis Our method

Page 12: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

ContributionsContributions

• Extend “Lapped textures” to 3D

1. Select position

2. Paste

3. Adjust shape

Please refer tothe paper!

Page 13: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Contributions (contd.)Contributions (contd.)

• Classification of solid textures

• User interface for tensor field design

• Creation of depth-varying models

Page 14: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

• Classification of solid textures

• User interface for tensor field design

• Creation of depth-varying models

Page 15: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Classification of solid texturesClassification of solid textures

• Based on 2 aspects

a

bc

a

b

c

Anisotropy level Change in appearance w.r.t. cutting orientation

Variation level Change in pattern w.r.t. spatial position

Page 16: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Anisotropy levelAnisotropy level

• Change in appearance w.r.t. cutting orientation

Level 0 Level 1 Level 2

–(Isotropic)

3D vector 3D tensor

Axis

Align with

Level

a

bc

Page 17: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Variation levelVariation level

• Change in pattern w.r.t. spatial position

1D 2D 3D

Level 0 Level 1 Level 2 Level 3

0D( Homogeneou

s )

Vary in

Level

a

b

c

Page 18: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Anisotropy levelV

aria

tio

n le

vel

0

1-b

1-a 2-a

2-b

2-c

2-d

0 1 2

0

1

2

3

Tilability

3D

2D

1D

0D

[Owada’04][Ours]

Demo

Page 19: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

• Classification of solid textures

• User interface for tensor field design

• Creation of depth-varying models

Page 20: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

User interface for tensor field designUser interface for tensor field design

1. Set depth field

– Similar to [Owada’04]

2. Draw stroke on layers

Demo

Page 21: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

• Classification of solid textures

• User interface for tensor field design

• Creation of depth-varying models

Page 22: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Creation of depth-varying modelsCreation of depth-varying models

• Depth-varying textures Depth

Type 1-b Type 2-b

Page 23: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Creation of depth-varying modelsCreation of depth-varying models

• 3 kinds of texture patch

MiddleOuter Inner

Page 24: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Creation of depth-varying modelsCreation of depth-varying models

• Choose one according to depth

Page 25: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

ResultsResults

Page 26: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

LimitationsLimitations

• Artifacts

– Tensor field singularities

Page 27: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

LimitationsLimitations

• Artifacts

– Highly-structured textures

Blurring Misalignment

Page 28: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

LimitationsLimitations

• How to create texture exemplar?

– Currently: ad-hoc methods

• Sweep of 2D image

• Noise function

• Putting 3D geometry

• Copy / paste

• Solid texture synthesis

In-house voxel editor

Page 29: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

ConclusionConclusion

• Patch-based approach to creating 3D models with internal textures

– Extend “Lapped textures” to 3D

• Contributions

– Classification of solid textures

– User interface for tensor field design

– Creation of depth-varying models

Page 30: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Thank you!Thank you!

Acknowledgements:

Shigeru Owada Kazuo Nakazawa(Sony CSL) (National Cardiovascular Center)

SIGGRAPH reviewers

Funded by IPA(Information-technology Promotion Agency, Japan)

Page 31: Lapped Solid Textures: Filling a Model with  Anisotropic Textures
Page 32: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Data representationData representation

• Store texture coordinates only

w0 w1 w2 w3

w0 w1 w2 w3

w0 w1 w2 w3

v0

v1

v2

v3

Page 33: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Data representationData representation

• Store texture coordinates only

• When cutting:

– Linearly interpolate texture coordinates

– No voxel computation!

Page 34: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

StatisticsStatistics

# of tetra Paste [sec] Size [MB]

Kiwi fruit 4126 39 9.1

Carrot 2313 31 7.1

Tree 5012 104 12.2

Watermelon 2717 25 9.0

Strata 2827 77 10.4

Cake 2734 416 14.5

Tube 1089 18 2.7

CPU: 2.33 GHz RAM: 1.0 GB

Page 35: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Future workFuture work

• Anisotropic reflection

– Different color at same position!

– Depends on cutting orientation

Page 36: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Future workFuture work

• Translucent objects

– Colors on cross-section reveals internal content

Traditional synthesis methods cannot handle!

Page 37: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Creation of texture patchCreation of texture patch

• Constant “splotch” mask

Mask shape

Cross-sections

Page 38: Lapped Solid Textures: Filling a Model with  Anisotropic Textures

Creation of texture patchCreation of texture patch

• Assume less-structured textures

• What if texture is highly structured? Future work