Seminar on B-Spline over triangular domain Reporter: Gang Xu Institute of Computer Images and...
-
Upload
madlyn-johns -
Category
Documents
-
view
215 -
download
0
Transcript of Seminar on B-Spline over triangular domain Reporter: Gang Xu Institute of Computer Images and...
Seminar on B-Spline over
triangular domain
Reporter: Gang Xu
Institute of Computer Images and Graphics,
Math Dept. ZJU
October 26
Outline
1.Introduction
2.Mathmatic Preliminaries
3.B-Patches and Simplex Splines
4.DMS-Splines and its application
5.G-Patches
6.Future Work
Introduction
Ramshaw’s “juiciest” challenge(1987) “Find a natural way to construct a triangular patch surface that builds in the appropriate continuity conditions, similar to what is done with the B-Spline.”
Introduction
Bézier Curves
B-Spline Curves
Triangular Bézier patches
What?
Desirable Control Scheme Attributes
Piecewise polynomial of a fixed degree Individual piecewise polynomials are
associated to regions of the domain Control Points and Interactivity Local Control Automatic Continuity Maintenance Simplifies to Univariate Splines Numerical Stability
A Bleak Property
kC -continuity, where 2 1
3
nk
Triangular Bézier Patch Continuity Constraints
For a surface consisting of degree n≥1triangular Bézier patches the highest degree of continuity possible, while still providing local flexibility, is
Examples
Cubic
Quartic2C
1C
The examples are from (Zhang et.al, 2005)
Current Situation
A lot of work focus on this problem
Each has its own specialized use, but Inevitably each has its own fundamental limits
None is the true generalization of the B-spline!
Mathematical Preliminaries
Barycentric Coordinates on line
a
1 2u a b
bu
1
b u
b a
2
u a
b a
Barycentric coordinates on plane
Mathematical Preliminaries
a b
c
u
1 2 3u a b c
1
( )
( )
area ubc
area abc
2
( )
( )
area uac
area abc
3
( )
( )
area uab
area abc
Fundmental Idea
Represent the univariate complex function by the multivariate simple function
Related to Polar Forms
Blossom
Blossom Principle
Symmetric
Multi-affine
Diagonal
( , , ) ( , , ), 1i i i i if u f u when
( , , , , ) ( , , , , )i j j if u u f u u
( , , , , ) ( )f u u u u F u
Some Terminologies
( , , , , ) ( )f u u u u F u
Multi-affine blossom of F Blossom
argument
Blossom value
Some Examples
2( ) 3 2 1F u u u 1 2 1 2 1 2( , ) 3 1f u u u u u u
3 23 2 1 0( )F u a u a u a u a
1 2 2 3 1 3 1 2 31 2 3 3 1 2 3 2 1 0( , , )
3 3
u u u u u u u u uf u u u a u u u a a a
Blossom form of CAGD Most of curves and surfaces in CAGD have a blossom form
Bézier Curves
B-Spline Curves
Tensor product surfaces
Triangular Bézier patchesC- Bézier curves and H- Bézier curves,
Also their tensor product surfaces
Blossom of Bézier curves
0
( ) ( )n
ni i
i
F u PB u
( , , , , , )i
n i i
P f a a b b
[ , ]u a b
de Casteljau algorithm in Blossom
1
1 1
( , , , , , , , , ) ( , , , , , , , , )i j k i j k
f u u a a b b f u u a a b b
2
1
( , , , , , , , , )i j k
f u u a a b b
Example
Blossom of B-spline curves
Blossom of Triangular Bézier patches
Pyramid Algorithms of B-B Surface
Shortcomings of B-B SurfacesModeling sufficiently complex surfaces requires the surfaces to have an extremely high
degree
Divide the domain into small triangularregions, define a B-B surfaces for eachregion, as B-spline curves.
How can we get it?
B-Patches
Motivation
0
( ) ( )n
ni i
i
F u PB u
( , , , , , )i
n i i
P f a a b b
[ , ]u a b
Bézier curves
B-spline curves
B-Patches
Triangular Bézier patches
B-Patch’s control net
de Boor style algorithm of B-Patches
Shortcomings of B-Patches
In order to be continuity, the knots along the shared domain edge must beCollinear. (Seidel,1991)
0C
Not extend well to a network of patches!
Example
It is useless for surface modeling!
Simplex Splines
The major problem with B-Patchesis that the underlying basis functionsdon’t automatically provide the required degrees of continuity
The simplex splines overcome it!
Simplex Splines
2RPiecewise polynomial functions defined using a set of points in .The set of these points is called knot set (knot clouds).
The simplex splines defined using knotshas degree
m3n m
The simplex splines has overall continuityprovided that the knot set does not contain a
collinear subset of three knots.
1nC
The simplex spline does not have control points.
Half-open Convex Hull
x belongs to [v) if and only if there existsa small triangle that lies entirely withinthe [v]
x belongs to exactly one triangle
Examples
n 3n
1 2 3, ,
Definition of simplex splines
A degree simplex spline with knots is defined recursively as follows
0 1 2
0 [ )
1( ) 0
u V
M u V narea t t t
1 2 3( \{ }) ( \{ }) ( \{ }) 0a b cM u V t M u V t M u V t n
{ , , ,}a b cW t t tare barycentric coordinates with respect to
Examples 1
Examples 2
Examples 3
Examples 4
Shortcomings of Simplex Splines
The choice of the knots to place in W during each recursive evaluation can effect the results of the computation if not chosen carefully.Plagued with numerical stability issues Computationally expensiveHave no control points
It is useless for surface modeling!
DMS-Splines
Motivation
B-Patchesnice labelling ofcontrol points
Simplex splines Smooth basisfunctions
DMS-Splines
Take the advantage of them!
The inventor
Dahmen, Micchelli, Seidel, 1992
TVCG, IJSM,CAGD, TVC,GMOD,CGF
Definition of DMS-splines
Triangulate the domain
A knot cloud is arranged with each corner of the domain. For a degree n triangular domain, n knots are pulled out.
quadratic
Definition of DMS-splines
2n
n
,abc
, , 0 0 0{ , , , , , , , , }i j k i j kV a a b b c c
For a domain region
control points , , , , , 0,i j kP i j k i j k n
Similar with simplex splines, define a set
To be normalized, define
, ,i j k i j kd area a b c
Definition of DMS-splines
, , , , , ,( ) ( )i j k i j k i j ki j k n
F u P d M u V
Examples 1
Examples 2
Examples 3
Properties of DMS-splines
Convex hull property
Local control
Smoothness
Parametric affine invariance
Continuity Control by Placing Knots
Make several knots collinear to decrease continuity
quadratic
0C
Three knots collinear
1C
discontinuity
Four knots collinear
Examples
Application(1) Filling Holes
Application(1) Filling Holes
Application(2) Fit Scattered Data
The problem
Fitting of a functional surface to a collection of scattered functional data
F( x,y )
i i i i i{(x , y ,z (x , y ))}
Our goal
Find a smooth surface F that is a reasonableapproximation to the data
Application(2) Fit Scattered Data
Why we choose DMS splines?
Automatic smoothness properties
Ability to define a surface over an arbitrarytriangulation (which can be adapted to thelocal density of sampled data)
Finding a Triangulation
Properties of a good triangulation
All sample points must be contained in sometriangle of the triangulation
Points within each triangle are distributed asuniformly as possibleTriangles are not too elongated
Neighbouring triangles are roughly comparablein size
Finding a Triangulation
Delaunay triangulation
explosion of triangles!
Quadtree division of the domainRequire that the quadtree be balanced
The depth of two adjacent leaf nodes differ byat most one
Finding a Triangulation
Assigning Knot Clouds
Avoid collinearity of knots associated with a particular triangle
k+2 of the knots are placed collinearity, the continuity of the surface along that parametricline will be reduced by k
Least Square Fitting
2min ( ) ( ( , ) )l l llLS F F x y z
A linear system
Least Square Fitting
Advantages
Simple to understand
Easy to implement
Disadvantages
Sensitive to the location of data points withrespect to the given set of basis functions
Lie close to data points, not be very smooth
Combining Least Squares and Smoothing
( ) (1 ) ( ) ( ),0 1LSJ F LS F J F
2 2 2( ) 2xx xy yyJ F F F F dxdy
2( ) ( ( , ) )l l ll
LS F F x y z
Localizing the smoothing effect
Examples 1
Examples 2
Examples 3
Examples 4
Examples 4
Examples 5
Examples 5
Application(3) Surface Reconstruction
The Problem
Given a set of points ,find a parametric surface that approximates
1{ }mi iP p 3
ip R2 3:F R R P
Existing approach
Polygonal meshes
Splines
Zero-set surface
Application(3) Surface Reconstruction
Why use DMS-splines?
Arbitrary topological type
Be able to model discontinuities like sharp edges or corners as well( tensor product B-spline will produce a discontinuity curve across the whole patch)
Application(3) Surface Reconstruction
Constructing an initial domain triangulation
Feature detection
Domain partition
Constrained Delaunay triangulations
Application(3) Surface Reconstruction
Fitting with triangular B-splines
min ( ) ( ) ( )dist fairE F E F E F
1
( ) ( )m
dist i ii
E F p F u
2 2
1
( ) ( ( )) ( ( ))m
fair i u i i v ii
E F n F u n F u
Solve control points
Solve knots
Application(3) Surface Reconstruction
Adaptive refinement
RepeatSubdivide the domain triangles with large fitting error
Solve the control points sub-problem foraffected triangles
Solve the knots for new vertices
Until distE
Experimental Results(1)
Experimental Results(1)
Experimental Results(2)
Application(4) Image Registration
The problem
Given source image , and target image ,defined on the domain , the problem ofregistration is to find an optimal geometricaltransformation such that the pixels in both images are matched properly
sI tI
2:T R
2R
2:T R
Application(4) Image Registration
Development
Rigid
global
Non-rigid
local
Rigid and non-rigid
0C continuity
Tensor-product B-splines DMS-Splines
Sharp features can not lie in arbitrary directions
Why choose DMS splines?
flexible domain
local control
space-varying smoothness modeling
Application(4) Image Registration
Application(4) Image Registration
Steps
Transformation Model
Point-based Constraints
Optimization
Application(4) Image Registration
Application(4) Image Registration
Application(4) Image Registration
Application(5) Triangular NURBS
, , , , , ,
, , , ,
( )
( )( )
ijk i j k i j k i j ki j k n
ijk i j k i j ki j k n
P d M u V
F ud M u V
Similar with NURBS!
Dynamic Generalization!
Application(5) Triangular NURBS
Modeling Applications
Rounding (filet)
Scattered Data Fitting
Dynamic Interactive Sculpting
Experimental Results(1)
Experimental Results(2)
Experimental Results(3)
Experimental Results(4)
Experimental Results(5)
Application(6) Solid Modeling
2D 3D
triangular tetrahedra
triangulation terahedralization
Increment Flip Algorithm
Application(6) Solid Modeling
Application(6) Solid Modeling
Geometric editing using control points
Application(6) Solid Modeling
Attribute editing using control coefficient or control points
Application(6) Solid Modeling
Feature Sensitive Data Fitting
Similar with DMS spline but need to preprocess the dataset!
Experimental Results(1)
Experimental Results(2)
APP(7) Rational Spherical DMS-splines
Spherical DMS-splines (Pfeifle, Seidel,1995)
No convex hull property!
APP(7) Rational Spherical DMS-splines
Rational Spherical DMS-splines
Convex hull property
APP(7) Rational Spherical DMS-splines
Genus zero surface reconstruction
Similar with Application (3)!
APP(7) Rational Spherical DMS-splines
Editing the details
APP(7) Rational Spherical DMS-splines
Editing the control net
APP(7) Rational Spherical DMS-splines
Computing the differential properties
Modeling features
APP(7) Rational Spherical DMS-splines
Brain image analysis using spherical DMS-splines
APP(7) Rational Spherical DMS-splines
Segmentation by mean curvature
APP(7) Rational Spherical DMS-splines
Sulci and Gyri tracing
Application(8) Manifold DMS-splines
X.Gu,Y.He, and H.Qin, Manifold splines, in Proceedings of ACM SPM’05, pp27-38,2005
Planar Domain Manifold Domain
Application(8) Manifold DMS-splines
Corollary1(Existence of Singular Points) The manifold splines must have singular points if the domain manifold is closed and not a torus.
Corollary2(Minimal Number of Singular Points)Given a closed domain 2-manifold, if its Euler number is not zero, a manifold spline can be constructed such that the spline has only onesingular point.
Application(8) Manifold DMS-splines
Application(8) Manifold DMS-splines
Application(8) Manifold DMS-splines
Comparison of Various DMS-spline
Manifold “other” splines
Fairing Manifold DMS-splines
Motivation
High curvature concentration along the edgesof adjacent spline patches
Knot line
Fairing Manifold DMS-splines
Method (Ying.H, Xianfeng.G, Hong.Oin, 2005)
Inspired by the knot-line elimination workof (Gormaz,1994).
Fairing Manifold DMS-splines
Least square problem
Lagrange multipliersmethod
Fairing Manifold DMS-splines
Fairing Manifold DMS-splines
Fairing Manifold DMS-splines
Valuable properties
Applied extensively, from graphics to image
Is it the true generalization of the B-spline?!
Conclusion of DMS-spline
Conclusion of DMS-spline
Not correlate to the Bézier patches
Computational cost is so big
Not present an elegant user interface
Moving the knots has unexpected results
Prevent too many knots from being collinear
Multiresolution triangular B-splines
G-Patches
Main idea (Christopher K,2003)
Generalize the geometry of a uniform B-spline curve over triangular domain
Generalization of the blending fucntionsused in the uniform B-splines
G-Patches
G-Patches
0C Continuity
G-Patches
G-Patches
Reduce to the classic univariate B-splinesLocal controlEvaluation is very fastManipulation is extremely intuitive
0C continuityOnly
The only fatal disadvantage
Remove it from being a viable modeling tool!
Future Work
Create the true generalization of B-spline overtriangular domain
Circular C- Bézier or H- Bézier , Spherical is also
Manifold C-B-spline or H-B-spline
Other application of DMS-splinesC- Bézier over triangular domain
New method of surface reconstruction
Questions
Thank you!
Main References