Lecture 23: Spectral Meshes COMPSCI/MATH 290-04 Chris Tralie, Duke University 4/7/2016 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Announcements ⊲ First project milestone Monday 4/11/2016 ⊲ Final Project Rubric Up ⊲ Group Assignment 3 Out Tomorrow or Saturday... COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Table of Contents ◮ Laplacian Mesh Editing Finish ⊲ Laplacian Eigenfunctions / Eigenvectors ⊲ Spectral Mesh Compression / Shape DNA COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Laplacian Mesh Editing: Anchors � δ i = ( v i − v j ) j ∈ N ( i ) fi x Delta coordinates define rel- ative information about ver- tices with respect to their neighbors v1x v1y δ 1z v1z δ 1x δ 1y v2y v2x v2z δ 2x δ 2y δ 2z L = v3x v3y v3z δ 2x δ 2z δ 2y . . . . . . va . . . . . . . . . . vNx vNy vNz δ 2z δ 2x δ 2y a ( 000 .... w .... 000 ) w xa a COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
A Note About Rotation Invariance Lx = δ ⊲ δ is a vector . || δ || ∝ κ , but it has a direction Figure: Sorkine05 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
As Rigid As Possible Surface Editing Sorkine2007 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
As Rigid As Possible Surface Editing Sorkine2007 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Table of Contents ⊲ Laplacian Mesh Editing Finish ◮ Laplacian Eigenfunctions / Eigenvectors ⊲ Spectral Mesh Compression / Shape DNA COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
The 1D Second Derivative Operator Let f ( x ) = sin ( ω x ) What is f ′ ( x )? COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
The 1D Second Derivative Operator Let f ( x ) = sin ( ω x ) What is f ′ ( x )? f ′ ( x ) = ω cos ( ω x ) COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
The 1D Second Derivative Operator Let f ( x ) = sin ( ω x ) What is f ′ ( x )? f ′ ( x ) = ω cos ( ω x ) What is f ′′ ( x ) ? COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
The 1D Second Derivative Operator Let f ( x ) = sin ( ω x ) What is f ′ ( x )? f ′ ( x ) = ω cos ( ω x ) What is f ′′ ( x ) ? f ′′ ( x ) = − ω 2 sin ( ω x ) COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
The 1D Second Derivative Operator Let f ( x ) = sin ( ω x ) What is f ′ ( x )? f ′ ( x ) = ω cos ( ω x ) What is f ′′ ( x ) ? f ′′ ( x ) = − ω 2 sin ( ω x ) f ′′ ( x ) = − ω 2 f ( x ) We say sines and cosines are eigenfunctions of the second derivative operator and − ω 2 is the associated eigenvalue (just like vectors!) COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
1D Derivative Eigenfunctions Let f ( x ) = sin ( ω x ) , f ′′ ( x ) = − ω 2 sin ( ω x ) sin(t) 4 y d 2 y/dx 2 3 2 1 0 -1 -2 -3 -4 0 20 40 60 80 100 120 140 160 180 200 sin(2t) 4 3 2 1 0 -1 -2 y d 2 y/dx 2 -3 -4 0 20 40 60 80 100 120 140 160 180 200 Eigenvalues tell us frequency information COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Discrete Circle Laplacian https://github.com/COMPSCI290-S2016/NumpyDemos/blob/master/1DLaplacian.py COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Discrete Circle Laplacian https://github.com/COMPSCI290-S2016/NumpyDemos/blob/master/1DLaplacian.py COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Discrete Circle Laplacian https://github.com/COMPSCI290-S2016/NumpyDemos/blob/master/1DLaplacian.py COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Laplacian of All 1s L = D − A 1 1 1 L =? . . . 1 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Rect Eigenvectors 1 7 2 8 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Sphere Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Sphere Eigenvectors 1 7 8 2 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 0 1 2 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 5 3 4 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 7 6 8 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 9 10 11 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 12 13 14 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 15 16 17 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 18 19 20 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer Modes 200 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 0 1 2 3 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 4 6 6 7 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 8 9 10 11 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 12 13 14 15 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 16 17 18 19 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah Modes 400 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Normalize Each Row By Degree? Why not ˆ L = D − 1 A ? Sorkine 05 COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Normalize Each Row By Degree? Why not ˆ L = D − 1 A ? Sorkine 05 L � = ˆ ˆ L T symmetry is broken..can’t get real orthogonal eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Table of Contents ⊲ Laplacian Mesh Editing Finish ⊲ Laplacian Eigenfunctions / Eigenvectors ◮ Spectral Mesh Compression / Shape DNA COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Recall: Sinusoidal Decomposition Project a function onto sinusoids, approximate with lower order sinusoids This is “lowpass filtering” COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Laplacian Eigenbasis Decomposition L = D − A = USU T Let’s project the coordinates of the mesh onto the truncated Laplacian eigen basis − u 1 − | | | | | | | | | | − u 2 − = x ′ y ′ z ′ u 1 u 2 . . . u K x y z . . . . . . . . . | | | | | | | | | | − u K − X ′ = U K U T K X COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer: 5000 Vertices 10 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer: 5000 Vertices 20 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer: 5000 Vertices 50 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer: 5000 Vertices 100 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Homer: 5000 Vertices 500 Eigenvectors 10x compression ratio for vertices! COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah: 2000 Vertices 20 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah: 2000 Vertices 100 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah: 2000 Vertices 200 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Cheetah: 2000 Vertices 400 Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Can Also Use to Denoise Projected Onto First 500 Noisy Homer Eigenvectors COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Compress Surface Patchwise Karni 2000 ⊲ Avoids numerical stability issues, better picking up on local geometry ⊲ Like DCT for JPEG COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Shape DNA Histogram of eigenvalues, sorted in ascending order 2 Cheetah 1.8 Homer Arms Up / Arms Down 1.6 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0 100 200 300 400 500 ⊲ Invariant to isometries ⊲ Our first nonrigid shape descriptor! COMPSCI/MATH 290-04 Lecture 23: Spectral Meshes
Recommend
More recommend