Bivariate B-spline Bivariate B-spline Outline •Multivariate B-spline [Neamtu 04] •Computation of high order Voronoi diagram •Interpolation with B- spline
Dec 20, 2015
Bivariate B-spline Bivariate B-spline
Outline•Multivariate B-spline [Neamtu 04]•Computation of high order Voronoi diagram•Interpolation with B-spline
Generalizing B-spline Generalizing B-spline
• Basis function- a piecewise poly. defined
over (d+k+1) knots – compactly supported– smooth
• Knot sets – poly. reproduction – “local”
degree k = 2
B-spline basis
Generalizing B-spline Generalizing B-spline • Basis function
Geometric definition Evaluation ( Micchelli recurrence )
• a piecewise poly. defined over (d+k+1) knots
• compactly supported• smooth
Simplex spline basis [de Boor 76]
Generalizing B-spline Generalizing B-spline • Basis function
• a piecewise poly. defined over (d+k+1) knots
• compactly supported• smooth
Simplex spline basis [de Boor 76]
2d examples
k = 1 2 3
Generalizing B-spline Generalizing B-spline • Knot sets
Given a universe of knots in Rd, define family of knot sets of size d+k+1.
– multivariate B-spline [Neamtu 04]
- DMS spline ( triangular B-spline ) [Dahmen, Micchelli & Seidel 92]
• poly. reproduction • “local”
k = 2
Bivariate B-spline Bivariate B-spline a knot set X=XB U XI is chosen
whenever there is a circle through XB that has only XI inside.
XIXB
Bivariate B-spline Bivariate B-spline High order Voronoi diagram Definition: A Voronoi diagram of degree i in 2d partitions the plane into cells such that points in each cell have the same closest i neighbors
i = 1 2 3
Bivariate B-spline Bivariate B-spline High order Voronoi diagram Definition: A Voronoi diagram of degree i in 2d partitions the plane into cells such that points in each cell have the same closest i neighbors
i = 1 2 3
Property: a degree k bivariate B-spline knot set corresponds to a vertex of (k+1)-Voronoi diagram.
k = 0 1 2
Voronoi ComputationVoronoi Computation• theory: O(n log(n)) time , O(n) space• practice: O(n) time for evenly distributed points
Engineering challenges: – speed ( exploit even distribution )– robustness ( degeneracy, round-off errors ) – memory (streaming ) *(demo)
Computation PipelineComputation Pipeline A set of knots S in the plane
A family of (k+3) subsets of S ( vertices in (k+1)-Voronoi diagram )
A set of degree-k simplex spline basis
A set of terrain samples P in 2d
terrain surface wavelet transform
Surface reconstructionSurface reconstructionGiven a set of terrain samples as input, construct a
bivariate B-spline terrain surface.
• choosing knot positions– What knots to use when given samples?
Surface reconstructionSurface reconstructionknot positions:
good
bad
Surface reconstructionSurface reconstructionGiven a set of terrain samples as input, construct a bivariate B-spline terrain
surface.
• choosing knot positions– What knots to use when given samples?
• coefficient computation – Interpolation or approximation?
Computation PipelineComputation Pipeline A set of knots S in the plane
A family of (k+3) subsets of S ( vertices in (k+1)-Voronoi diagram )
A set of degree-k simplex spline basis
A set of terrain samples P in 2d
terrain surface wavelet transform• point ordering for wavelet transform