Tensor Product Volumes and Multivariate Methods
description
Transcript of Tensor Product Volumes and Multivariate Methods
![Page 1: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/1.jpg)
TENSOR PRODUCT VOLUMES AND MULTIVARIATE METHODSCAGD Presentation by Eric YudinJune 27, 2012
![Page 2: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/2.jpg)
MULTIVARIATE METHODS: OUTLINE Introduction and Motivation Theory Practical Aspects Application: Free-form Deformation (FFD)
![Page 3: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/3.jpg)
INTRODUCTION AND MOTIVATION Until now we have discussed curves ( ) and
surfaces ( ) in space. Now we consider higher dimensional – so-
called “multivariate” objects in
23
, 3n n
![Page 4: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/4.jpg)
INTRODUCTION AND MOTIVATIONExamples
Scalar or vector-valued physical fields (temperature, pressure, etc. on a volume or some other higher-dimensional object)
![Page 5: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/5.jpg)
INTRODUCTION AND MOTIVATIONExamples
Spatial or temporal variation of a surface (or higher dimensions)
![Page 6: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/6.jpg)
INTRODUCTION AND MOTIVATIONExamples
Freeform Deformation
![Page 7: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/7.jpg)
MULTIVARIATE METHODS: OUTLINE Introduction and Motivation Theory Practical Aspects Application: Free-form Deformation (FFD)
![Page 8: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/8.jpg)
THEORY – GENERAL FORMDefinition (21.1): The tensor product B-spline function in three variables is called a trivariate B-spline function and has the form
It has variable ui, degree ki, and knot vector ti in the ith dimension
1 2 31 2 3 1 1 2 2 3 3
1 2 3
1 2 3 , , 1 2 3, , , , , ,( , , ) ( ) ( ) ( )i i i i k i k i k
i i i
T u u u P B u B u B ut t t
![Page 9: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/9.jpg)
THEORY – GENERAL FORMDefinition (21.1) (cont.): Generalization to arbitrary dimension q: Determining the vector of polynomial degree
in each of the q dimensions, n, (?), forming q knot vectors ti, i=1, …, q
Let m=(u1, u2, …, uq) Let i = (i1, i2, …, iq), where each ij, j=1, …, q q-variate tensor product function:
Of degrees k1, k2, …, kq in each variable
1 2 31 1 2 2 3 3
1 2 3
1 2 3, , , , , , , ,( ) ... ( ) ( ) ( )... ( )q
q qq
qi k i k i k i ki i i i
T PB u B u B u B ut t t t
m i
q
![Page 10: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/10.jpg)
THEORY – GENERAL FORM is a multivariate function from to
given that If d > 1, then T is a vector (parametric
function)
( )T m q ddP i
![Page 11: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/11.jpg)
THEORY – GENERAL FORMDefinition for Bézier trivariates : A Tensor-Product Bézier volume of degree (l,m,n) is defined to be
where
and are the Bernstein polynomials of degree , index .
Bézier trivariates can similarly be generalized to an arbitrary-dimensional multivariate.
, , ,0 0 0
( ) ( ) ( ) ( )l m n
ijk i l j m k mi j k
X u v w
u P
( , , ), , , [0,1]u v w u v w u
![Page 12: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/12.jpg)
THEORY
From here on, unless otherwise specified, we will concern ourselves only with Bézier trivariates and multivariates.
![Page 13: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/13.jpg)
THEORY – OPERATIONS & PROPERTIES Convex Hull Property: All points defined by
the Tensor Product Volume lie inside the convex hull of the set of points .
Parametric Surfaces: Holding one dimension of a Tensor Product Bézier Volume constant creates a Bézier surface patch – specifically, an isoparametric surface patch.
Parametric Lines: Holding two dimensions of a Tensor Product Bézier Volume constant creates a Bézier curve – again, an isoparametric curve.
![Page 14: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/14.jpg)
THEORY – OPERATIONS AND PROPERTIES Boundary surfaces: The boundary surfaces
of a TPB volume are TPB surfaces. Their Bézier nets are the boundary nets of the Bézier grid.
Boundary curves: The boundary curves of a TPB volume are Bézier curve segments. Their Bézier polygons are given by the edge polygons of the Bézier grid.
Vertices: The vertices of a TPB volume coincide with the vertices of its Bézier grid.
![Page 15: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/15.jpg)
THEORY – OPERATIONS AND PROPERTIESDerivatives: The partial derivatives of order of a Tensor Product Bézier volume of degree ( at the point u = is given by
Where the forward difference operator is:
and
( )p q r
p q r Xu v w
u , , ,
0 0 0
! ! ! ( ) ( ) ( )( )! ( )! ( )!
l p m q n rpqr
ijk i l p j m q k n ri j k
l m n u v wl p m q n r
P
000
00 0 0 0,0, 1 0,0, 1, , 1[ ( )]
ijk ijk
pqr p q r rijk i j k ijk
P P
P P P
1
1 20
:
: ... ( 1)1 2
i i i
kk li i k i k i k i i k l
l
k k kl
P P P
P P P P P P
![Page 16: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/16.jpg)
THEORY – OPERATIONS AND PROPERTIESDegree Raising: To raise a Tensor Product Bezier volume of degree to degree , then the new points
This works similarly for the other dimensions as well.
(0,1,... ),
all ,
J
iJk ijkj J
J m JJ mj m j
m i km
mm
mm
m
P P
![Page 17: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/17.jpg)
THEORY – OPERATIONS AND PROPERTIESDegree Reduction: To lower a Tensor Product Bezier volume of degree to one of degree , we need:
Then the new points are given recursively by:
Each iteration reduces the degree of the dimension of interest by 1. This works similarly for the other dimensions as well.
0 0
( 1 ,...,0, 0,1,...,
all ,
qijk
q m mj m q
i k
m P
, 1,all ,1 ( ),
0,1,..., 1ijk i j kijk
i km j
j mm j
P P P
![Page 18: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/18.jpg)
THEORY – TERMINOLOGYIsosurfaces: In constrast to isoparametric surfaces, an isosurface, or constant set is generated when the Tensor Product Bezier Volume function is set to a constant:
Data-wise, this might represent all of the locations in space having equal temperature, pressure, etc.
An isosurface is an implicit surface.
![Page 19: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/19.jpg)
THEORY – CONSTRUCTORSExtruded Volume & Ruled Volume
![Page 20: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/20.jpg)
THEORY – CONSTRUCTORSExtruded Volume: A surface crossed with a line.
Let and be a parametric spline surface and a unit vector, respectively. Then
represents the volume extruded by the surface as it is moved in direction It is linear in .
![Page 21: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/21.jpg)
THEORY – CONSTRUCTORSRuled Volume: A linear interpolation between two surfaces.
Let and be two parametric spline surfaces in the same space (i.e., with the same order and knot sequence). Then the trivariate
constructs a ruled volume between and .
![Page 22: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/22.jpg)
MULTIVARIATE METHODS: OUTLINE Introduction and Motivation Theory Practical Considerations Application: Free-form Deformation
(FFD)
![Page 23: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/23.jpg)
APPLICATION: FREE-FORM DEFORMATIONIntroduction & Motivation: Embed curves, surfaces and volumes in the
parameter domain of a free-form volume Then modify that volume to warp the inner
objects on a ‘global’ scale [DEMO]
![Page 24: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/24.jpg)
APPLICATION: FREE-FORM DEFORMATION
![Page 25: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/25.jpg)
APPLICATION: FREE-FORM DEFORMATIONProcess (Bézier construction):1. Obtain/construct control point structure (the
FFD)2. Transform coordinates to FFD domain3. Embed object into the FFD equation
From the paper:Sederberg, Parry: “Free-form Deormation of Solid Geometric Models.” ACM 20 (1986) 151-160.
![Page 26: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/26.jpg)
APPLICATION: FREE-FORM DEFORMATIONObtain/construct control point structure (the FFD):
A common example is a lattice of points P such that:
Where is the origin of the FFD space S, T, U are the axes of the FFD space l, m, n are the degrees of each Bézier dimension i, j, k are the indices of points in each dimension Edges mapped into Bézier curves
0ijki j kP X S T Ul m n
0X
![Page 27: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/27.jpg)
APPLICATION: FREE-FORM DEFORMATIONTransform coordinates to FFD domain:Any world point has coordinates in this system such that:
So X in FFD space is given by the coordinates:0 0 0( ) ( ) ( ), ,T U X X S U X X S T X Xs t u
T U S S U T S T U
![Page 28: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/28.jpg)
APPLICATION: FREE-FORM DEFORMATIONEmbed object into the FFD equation:
The deformed position of the coordinates are given by:
0 0 0
(1 ) [ (1 ) [ (1 ) ]]l m n
t i t m j j n k kffd ijk
i j k
l m nX s s t t u u P
i j k
![Page 29: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/29.jpg)
APPLICATION: FREE-FORM DEFORMATIONEmbed object into the FFD equation:
If the coordinates of our object are given by:
and
then we simply embed via:
( ( (s f t g u h
( , , )ffdX X s t u
( ( , ( , ( )ffdX X f g h
![Page 30: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/30.jpg)
APPLICATION: FREE-FORM DEFORMATIONVolume Change: If the FFD is given by
and the volume of any differential element is , then its volume after the deformation is
where J is the Jacobian, defined by:
( , , ) ( ( , , ), ( , , ), ( , , ))x y z F x y z G x y z H x y zF
( ( , , ))J x y z dx dy dz F
( )
F F Fx y zG G GJx y zH H Hx y z
F
![Page 31: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/31.jpg)
APPLICATION: FREE-FORM DEFORMATIONVolume Change Results:
If we can obtain a bound on over the deformation region, then we have a bound on the volume change.
There exists a family of FFDs for which , i.e., the FFD preserves volume.
![Page 32: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/32.jpg)
APPLICATION: FREE-FORM DEFORMATIONExamples Surfaces (solid modeling) Text (one dimension lower): Text Sculpt
[DEMO]
![Page 33: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/33.jpg)
MULTIVARIATE METHODS: OUTLINE Introduction and Motivation Theory Practical Considerations Application: Free-form Deformation (FFD)
![Page 34: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/34.jpg)
PRACTICAL ASPECTS – EVALUATION Tensor Product Volumes are composed of
Tensor Product Surfaces, which in turn are composed of Bezier curves.
Everything is separable, so each component can be handled independently
![Page 35: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/35.jpg)
PRACTICAL ASPECTS – VISUALIZATIONMarching Cubes Algorithm Split space up into cubes For each cube, figure out which points are
inside the iso-surface 28=256 combinations, which map to 16
unique cases via rotations and symmetries Each case has a configuration of triangles
(for the linear case) to draw within the current cube
![Page 36: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/36.jpg)
PRACTICAL ASPECTS – VISUALIZATIONMarching Cubes Algorithm: 2D case
With ambiguity in cases 5 and 10
![Page 37: Tensor Product Volumes and Multivariate Methods](https://reader033.fdocuments.us/reader033/viewer/2022050821/56816687550346895dda34f1/html5/thumbnails/37.jpg)
PRACTICAL ASPECTS – VISUALIZATIONMarching Cubes Algorithm: 3D case. Generalizable by 15 families via rotations and symmetries.