texture mapping by model pelting and blending deva ramanan hao zhang

17
Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Upload: meredith-williamson

Post on 30-Dec-2015

230 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture Mapping by Model Pelting and Blending

Deva Ramanan

Hao Zhang

Page 2: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture mapping• Improve surface appearance

– Versatile: image map, displacement map, reflection map …

– Relative small amount of computation

(from Pixar shutterbug image series)

Page 3: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture mapping (contd.)• Requires “good” parameterization

– Minimize distortion– Appears to be seamless

Page 4: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Subdivision surfaces

• One single mesh for any topology– Multiple NURBS patches

– Maintain smoothness (static and animated)

• (u,v)-parameterization – Tensor product B-Spline patches

– Shapes of arbitrary topology

• Cf. “Character animation” (SS98)(SS98)

Page 5: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture mapping on subdivision surfaces

• 3D Solid Textures

• Multiple local textures– Blend overlapping regions at the seam

• Goals (again):– Minimize distortion– Seam blending

http://graphics.eecs.wsu.edu/apst/

Page 6: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture coordinates

• Linear interpolation [Stam98]– texture coords as local (u,v) parameterization– yields C1 interior and C0 cross-boundary

• Catmull-Clark on scalar field– position (x,y,z) position+texture (x,y,z,s,t)– subdivide in 5D– yields C2 interior and C1 on extra-ordinary

points– needs texture coordinates on M0

(SS98)

Page 7: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Texture mapping analogy: The pelt

• Initial control mesh ~ rubber sheet– Stretch mesh to form a pelt– Paint texture on the pelt

Page 8: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Pelting: The Cut

• Cut: User specified connected tree of edges

Page 9: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Pelting: Implementation

• Approximate rubber sheet by a spring-mass system

• Distortion measure:– Elastic energy– Scale invariance

Ee e

ee

L

lLE

2)(

ee

ee

e

ee

e

ee

e

ee

e

ee

e

ee

e

eeee

EL

lL

L

lL

L

lL

L

lL

L

lL

L

lL

L

lLE

222

22

2

222

1

211

21

)()()(

)()()()(

21 eee

Page 10: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Simulate a spring-mass system

• System evolves so as to minimize energy

Page 11: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Blending Texture: Approach• Split M0 into 2 overlapping regions:

-Uo: Pelt Region

-U1: Patch Region

• Use blend functions b0() & b1() along overlapping regions

Page 12: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Example Patch

C0 + C1 + C2 + C3= patch region

Page 13: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Review: Domain of Control

• 2D Cubic B Splines:

• Catmull/Clark surfaces:

P

PA B C D

Page 14: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Blend Function• Pelt, Patch, and Overlapping Regions

surrounding the Cut

• b1= cubic B-spline

• b0 = 1 - b1

C0 C1 C2 C3 C4

Page 15: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Results: Cool Pictures!

Page 16: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Evaluation• Pelting:

– Novel 3D Spring Mass implementation eliminates “buckling” [Maillot et al 93]

• Seam blending:– Painted textures

• Weaknesses:– Tiled/tesselated pattern– low polygon count meshes

Page 17: Texture Mapping by Model Pelting and Blending Deva Ramanan Hao Zhang

Conclusion

• Ultimate goal:– Minimum distortion– texture coordinate control

http://www.tfe.umu.se/courses/systemteknik/Multimed2/