12 - spatial and skeletal deformationspanozzo/cg18/slides/12 - spatial and... · 2018. 9. 23. ·...

56
CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo 12 - Spatial And Skeletal Deformations

Upload: others

Post on 01-Apr-2021

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

12 - Spatial And Skeletal Deformations

Page 2: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Space Deformations

Page 3: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Space Deformation

• Displacement function defined on the ambient space

• Evaluate the function on the points of the shape embedded in the space

Twist warp Global and local deformation of solids [A. Barr, SIGGRAPH 84]

Page 4: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Freeform Deformations

• Control object • User defines displacements di for each element of the control object • Displacements are interpolated to the entire space using basis

functions

• Basis functions should be smooth for aesthetic results

Page 5: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Freeform Deformation [Sederberg and Parry 86]

• Control object = lattice • Basis functions Bi (x) are

trivariate tensor-product splines:

http://tom.cs.byu.edu/~tom/papers/ffd.pdf

Page 6: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Freeform Deformation [Sederberg and Parry 86]

• Aliasing artifacts

• Interpolate deformation constraints? • Only in least squares sense

http://tom.cs.byu.edu/~tom/papers/ffd.pdf

Page 7: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Limitations of Lattices as Control Objects

• Difficult to manipulate • The control object is not related to the

shape of the edited object • Parts of the shape in close Euclidean

distance always deform similarly, even if geodesically far

http://tom.cs.byu.edu/~tom/papers/ffd.pdf

Page 9: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Handle Metaphor [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

• Wish list for the displacement function d(x) : • Interpolate prescribed constraints • Smooth, intuitive deformation

Page 10: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Radial Basis Functions [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

• Represent deformation by RBFs

• Triharmonic basis function ϕ (r) = r 3

• C2 boundary constraints • Highly smooth / fair interpolation

Page 11: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Radial Basis Functions [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

• Represent deformation by RBFs

• RBF fitting • Interpolate displacement constraints • Solve linear system for wj and p

Page 12: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Radial Basis Functions [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

• Represent deformation by RBFs

• RBF evaluation • Function d transforms points • Jacobian-T ∇d-T transforms normals • Precompute basis functions• Evaluate on the GPU!

Page 13: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Local & Global Deformations [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

Page 14: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Local & Global Deformations [Real-Time Shape Editing using Radial Basis Functions, Botsch and Kobbelt, EUROGRAPHICS 2005]

1M vertices

Page 15: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Space DeformationsSummary so far

• Handle arbitrary input • Meshes (also non-manifold) • Point sets • Polygonal soups • …

• Complexity mainly depends on the control object, not the surface

▪ 3M triangles ▪ 10k components ▪ Not oriented ▪ Not manifold

Page 16: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Space DeformationsSummary so far

• Handle arbitrary input • Meshes (also non-manifold) • Point sets • Polygonal soups • …

Page 17: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Space DeformationsSummary so far

• The deformation is only loosely aware of the shape that is being edited

• Small Euclidean distance → similar deformation • Local surface detail may be distorted

Page 24: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Generalized Barycentric Coordinates

• Lagrange property:

• Reproduction:

• Partition of unity:

Page 25: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Mean-value coordinates [Floater 2003*, Ju et al. 2005] • Generalization of barycentric coordinates • Closed-form solution for wi (x)

* Michael Floater, “Mean value coordinates”, CAGD 20(1), 2003

Page 26: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

2D Mean Value Coordinates

Page 27: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

3D Mean Value Coordinates

Mean Value Coordinates for Closed Triangular Meshes Tao Ju, Scott Schaefer, Joe Warren

Page 28: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Mean-value coordinates [Floater 2003, Ju et al. 2005] • Not necessarily positive on non-

convex domains

Page 29: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Harmonic coordinates (Joshi et al. 2007) • Harmonic functions hi(x) for each cage vertex pi • Solve subject to: hi linear on the boundary s.t. hi (pj) = δij

Δ h = 0

MVC HChttp://www.cs.jhu.edu/~misha/Fall07/Papers/Joshi07.pdf

Page 30: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Harmonic coordinates (Joshi et al. 2007) • Harmonic functions hi(x) for each cage vertex pi • Solve subject to: hi linear on the boundary s.t. hi (pj) = δij

• Volumetric Laplace equation

• Discretization, no closed-form

Δ h = 0

Page 31: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Harmonic coordinates (Joshi et al. 2007)

MVC HC

Page 32: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Green coordinates (Lipman et al. 2008)

• Observation: previous vertex-based basis functions always lead to affine-invariance!

http://www.wisdom.weizmann.ac.il/~ylipman/GC/gc.htm

Page 33: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Green coordinates (Lipman et al. 2008)

• Correction: Make the coordinates depend on the cage faces as well

Page 34: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Coordinate Functions

• Green coordinates (Lipman et al. 2008)

• Closed-form solution

• Conformal in 2D, quasi-conformal in 3D

MVCGC GC

Page 35: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Cage-based methods: Summary

Pros:

• Nice control over volume • Squish/stretch

Cons:

• Hard to control details of embedded surface

Page 36: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning (LBS)

Acknowledgement: Alec Jacobson

Page 37: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

LBS generalizes to different handle types

skeletons regions points cages

Page 38: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning rigging preferred for its real-time performance

place handles in shape

Page 39: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning rigging preferred for its real-time performance

place handles in shape paint weights

Page 40: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning rigging preferred for its real-time performance

place handles in shape paint weights deform handles

Page 41: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning rigging preferred for its real-time performance

place handles in shape paint weights deform handles

Page 42: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Linear Blend Skinning rigging preferred for its real-time performance

place handles in shape paint weights deform handles

Page 43: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Challenges with LBS

• Weight functions wj • Can be manually painted or

automatically generated • Degrees of freedom Tj

• Exposed to the user (possibly with a kinematic chain)

• Richness of achievable deformations • Want to avoid common pitfalls – candy

wrapper, collapses

Page 44: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Properties of the Weights

Handle vertices

Interpolation of handlesPartition of unity

is linear along cage faces

Page 45: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Weights Should Be Positive

Unconstrained biharmonic [Botsch and Kobbelt 2004]

Bounded Biharmonic Weights[Jacobson et al. 2011]

Page 46: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Weights Should Be Smooth

Bounded Biharmonic Weights

Extension of Harmonic Coordinates [Joshi et al. 2005]

[Jacobson et al. 2011]

Page 47: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Weights Should Be Smooth

Bounded Biharmonic Weights Extension of Harmonic Coordinates [Joshi et al. 2005]

Page 48: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Bounded biharmonic weights enforce properties as constraints to minimization

is linear along cage faces

Page 49: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Bounded biharmonic weights enforce properties as constraints to minimization

is linear along cage faces

Constant inequality constraints

Partition of unity

Page 50: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Bounded biharmonic weights enforce properties as constraints to minimization

is linear along cage faces

Constant inequality constraints

Solve independently and normalize

Page 51: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Some examples of LBS in action

Page 52: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Some examples of LBS in action

Page 53: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Some examples of LBS in action

Page 54: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

3D Characters

Page 55: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

Mixing different handle types

Page 56: 12 - Spatial and Skeletal Deformationspanozzo/cg18/Slides/12 - Spatial and... · 2018. 9. 23. · CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo Freeform Deformations •

CSCI-GA.2270-001 - Computer Graphics - Daniele Panozzo

ReferencesFundamentals of Computer Graphics, Fourth Edition 4th Edition by Steve Marschner, Peter ShirleyChapter 16

Skinning: Real-time Shape DeformationACM SIGGRAPH 2014 Coursehttp://skinning.org