14 rbf interpolation - seoul national universitymrl.snu.ac.kr/.../14_rbf_interpolation.pdf · 2016....
TRANSCRIPT
![Page 1: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/1.jpg)
Motion Blending(Multidimensional Interpolation)
Jehee Lee
![Page 2: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/2.jpg)
Data-Driven Approach• It is difficult to understand basic principles of the
real world– Instead, we would like to sample the real world !
• What kind of data is available ?– Pictures (camera), video (camcorder)– Motion, facial expression (motion capture)– Geometry (3D scanner)– Voice, sound (recorder)– Tactile, physical properties, …
• Data-driven approaches try to reconstruct the real world in a computer from a rich set of samples
![Page 3: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/3.jpg)
The real world is multi-dimensional
• Simple (object space) classification– One dimension: Sketch, curve– Two dimension: Pictures, surface, tactile– Three dimension: 3D geometry, video– Four dimension: Particle motion (position + time)– High dimension: Articulated figure motion
• Many interpretations (parameterizations) are possible independent of object space dimensions
![Page 4: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/4.jpg)
Dimensionality of Motion• Motion can have many parameters (dimensionality)
– Physical dimensions: Velocity, turning angle, reach position– Ambiguous dimensions: Style, emotion, mood
[Rose et al. 98]
![Page 5: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/5.jpg)
The Space of Motion
• The space of every possible human walk– M-dimensional object space– N-dimensional parameter space
MN ®Â:MObject space
Parameter space
![Page 6: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/6.jpg)
Multi-Dimensional Interpolation• 3-parameters (velocity, turning angle, happiness)• n-samples (motion clips)
• Interpolation gives a motion for any given parameters– We want to compute a continuous function
nM)0.0,0.1,4.0M(
M)0.8,2.0,1.0M(M)0.1,6.0,3.0M(
2
1
=
==
!
? ),,M( isWhat cba
![Page 7: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/7.jpg)
How many samples are needed ?
• One dimension: 1000 (points)
![Page 8: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/8.jpg)
How many samples are needed ?• Two dimension: 1,000x1,000 = 1,000,000 (pixels)
![Page 9: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/9.jpg)
How many samples are needed ?
• High-dimension– We cannot acquire enough samples– The interpolating function should be reconstructed
from scattered (possibly sparse) samples
We have to solve a multi-dimensional interpolation problem with scattered samples
![Page 10: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/10.jpg)
Multi-Dimensional Functions
• One parameter (Curve)
• Two parameters (Surface)
• Three parameters (Volume)
t
u
v
u
v
w
C(t)
S(u,v)
V(u,v,w)
![Page 11: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/11.jpg)
Tensor-Product Surfaces
• Cubic polynomial curve
• Tensor-product surface– A curve is “multiplied” by a curve
å=
=3
0)()C(
iii tBt b
åå= =
=3
0
3
0)()(),S(
i jjiij vBuBvu b
![Page 12: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/12.jpg)
Tensor-Product Functions• Tensor-product is a standard technique for
increasing the dimension of parametric functions– Bezier surfaces, B-spline surfaces, NURBS surfaces, …
• It works fine for low-dimensional parametric spaces– Great for surfaces– Maybe good enough for volumes
• It can be problematic for higher-dimensions– Too many control points– High degree of basis functions
![Page 13: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/13.jpg)
Radial Basis Functions• Radial refers to the pattern that you get when
straight lines are drawn from the center of a circle to a number of points round the edge
• Radial basis function – A real valued function
– having a center in a parameter space
– The function value is determined by a distance from the center
®Â:f
Ni ÂÎx
( )ixx -f
![Page 14: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/14.jpg)
Scattered Data Interpolation using RBF
• Find a function that interpolates given points such that
• RBF interpolation
– We use M basis functions (same as # of given data points)– We don’t have a grid structure (compare to tensor-product
surfaces)– Radial basis function is easily defined in any dimensional spaces
®ÂN:)S(x}1|),{( nihii ££x ih ii allfor )S(x=
å=
-=M
jjj
1)()S( xxx fl
![Page 15: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/15.jpg)
Popular Choices for RBF• Thin-Plate
• Multiquadric
• Gaussian
• Biharmonic
• Triharmonic
• See demo: RBFwithoutLinearApproximation.exe
( ) rrr log2=f
( ) 22 crr +=f
( ) rr =f
( ) 3rr =f
( ) )exp( 2crr -=f
for some constant c
for some constant c
![Page 16: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/16.jpg)
Augmented Polynomial Function• A linear function or a low-order polynomial is
augmented for better extrapolation
• Under-specified linear system is obtained• Orthogonality conditions give a unique solution
å=
-+=M
jjjP
1)()()S( xxxx fl
zcycxcczyxPycxccyxP
3210
210
),,( 3D,In ),( 2D,In
+++=++=
![Page 17: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/17.jpg)
Motion Blending• S. I. Park, et al., On-line Locomotion Generation Based on Motion Blending,
Symposium on Computer Animation, 2002• Movie
![Page 18: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/18.jpg)
Application to Motion Blending
• The length of time– The first motion is 3 seconds long, the second motion
is 5 seconds long, and so on.– Those motions are normalized in time and blended– What is the length of the blend ?
• The length of the blend can be negative– RBF interpolation doesn’t have convex hull property– Is it make sense to create a “backward walk” by
blending “forward walks” ?
![Page 19: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/19.jpg)
Application to Motion Blending
• Handling unit quaternions (or rotation matrices)– What if we apply RBF interpolation component-wisely ?
• Represent the surface as an affine combination– Construct cardinal basis functions using RBF
![Page 20: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/20.jpg)
Application to Motion Blending
• Inverse problem– Precise control usually requires numerical iterations– May not have a unique solution– Eg)
Parameter3 m/s 5.5 m/s 7.5 m/s 12 m/s
Find a set of weights (coordinates in the parameter space) to create a walking motion of 8 m/sActual
walking speed
![Page 21: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/21.jpg)
Other applications
• Surface reconstruction
[Carr et al. 2002]
![Page 22: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/22.jpg)
Other applications
• Shape morphing
[Turk and O’Brien 99]
![Page 23: 14 RBF interpolation - Seoul National Universitymrl.snu.ac.kr/.../14_RBF_interpolation.pdf · 2016. 11. 29. · • Multidimensional interpolation – Sparse samples in high-dimensional](https://reader035.vdocuments.us/reader035/viewer/2022081617/605434f823386a6ef77999f5/html5/thumbnails/23.jpg)
Summary• Multidimensional interpolation
– Sparse samples in high-dimensional spaces– Time-series data
• Scatter data interpolation using radial basis functions– The basis function is determined by applications– All basis function explained are not locally supported– For some applications, locally supported basis functions should
be chosen