S bdi i i S h f Subdivision Schemes for

advertisement
Subdivision
S
bdi i i Schemes
S h
for
f
Geometric Modelling
Kai Hormann
Ka
o a
University of Lugano
Outline
ƒ Sep 5 – Subdivision as a linear process
ƒ basic concepts, notation, subdivision matrix
ƒ Sep 6 – The Laurent polynomial formalism
ƒ algebraic approach, polynomial reproduction
ƒ Sep 7 – Smoothness analysis
ƒ Hölder regularity of limit by spectral radius method
ƒ Sep 8 – Subdivision surfaces
ƒoverview of most important
p
schemes & p
properties
p
1
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Schemes considered so far
ƒ polygon subdivision
ƒ even stencil [ 1 ]
odd stencil [ 1, 1 ] / 2
ƒ interpolatory C0 limit curve (piecewise linear)
ƒ cubic
bi B
B-spline
li subdivision
bdi i i
ƒ even stencil [ 1, 6, 1 ] / 8 odd stencil [ 1, 1 ] / 2
ƒ approximating C2 limit curve (piecewise cubic)
ƒ 4-point scheme
ƒ even stencil [ 1 ]
odd stencil [ –1, 9, 9, –1 ] / 16
ƒ interpolatory C1 limit curve (non-polynomial)
2
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Primal and dual schemes
ƒ primal schemes
ƒ even and odd stencil are both symmetric
ƒ even stencil: modify old points
ƒ odd
dd stencil:
t
il iinsertt new points
i t (b
(between
t
old
ld points)
i t )
ƒ point → point, edge → point
ƒ dual schemes
ƒ insert two new points (between old points)
ƒ discard old points
ƒ point → edge, edge → edge
3
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Chaikin’s corner cutting
ƒ Example
ƒ even stencil [ 3,
3 1]/4
odd stencil [ 1,
1 3]/4
ƒ invariant neighbourhood size: 2
ƒ local subdivision matrix
ƒ eigenvalues: 1, ½
ƒ limit stencil [ 1, 1 ] / 2
ƒ note:
t even/odd
/ dd stencil
t
il are symmetric
t i tto each
h other
th
4
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
The subdivision mask
ƒ refinement rules
ƒ even stencil [ …,, α2, α1, α0, α−11, α−22, … ]
ƒ odd stencil
[ …, β2, β1, β0, β−1, β−2, … ]
ƒ rules
ƒ combine stencils into subdivision mask
a = [ …, α2, β1, α1, β0, α0, β−1, α−1, β−2, α−2, … ]
a = [ …, a4, a3, a2, a1, a0, a−1, a−2, a−3, a−4, … ]
ƒ one single refinement rule
5
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Masks of the schemes so far
ƒ polygon subdivision
a = [1,2,1]/2
[1 2 1]/2
ƒ Chaikin’s corner cutting
a = [1,3,3,1]/4
ƒ cubic BB-spline
spline scheme
a = [1,4,6,4,1]/8
ƒ 4-point scheme
, , , , , , ]/
a = [[–1,0,9,16,9,0,–1]/16
6
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Laurent polynomials
ƒ Definition
given a sequence
g
q
c = { ci : i ∈ Z }, we call
th z-transform
the
t
f
off c
ƒ if c is finitely supported, then c(z) is a Laurent
polynomial
l
i l
ƒ for a subdivision scheme with mask a, we call the
L
Laurent
polynomial
l
i l a(z)
( ) the
h symbol
b l off the
h scheme
h
7
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Symbols of the schemes so far
ƒ polygon subdivision
a = [ 1, 2, 1 ] / 2
ƒ Chaikin’s corner cutting
a = [ 1, 3,
3 3,
3 1]/4
ƒ cubic B-spline
p
scheme
a = [ 1, 4, 6, 4, 1 ] / 8
ƒ 4-point
4 point scheme
a = [ – 1, 0, 9, 16, 9, 0, – 1 ] / 16
8
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Symbols and convergence
ƒ necessary condition for convergence
ƒ coefficients of even/odd stencil sum to 1
ƒ equivalent to
ƒ implies
9
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Subdivision in terms of symbols
ƒ consider the z-transform p (z) of the data
j
at level j, then the refinement rule
can be written as
ƒ very neat and compact way of writing the rule
ƒ note: we are not interested in the polynomials
as such
such, but rather in their coefficients
10
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Subdivision of differences
ƒ let ∆ denote the (finite) difference operator
on sequences
q
∆c = {ci – ci−1 : i∈Z}
ƒ if a(z) = (1+z) b(z) is the symbol of a
convergent subdivision scheme, then b(z) is
the symbol of the scheme for the differences
11
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Subdivision of differences
ƒ Example
ƒ cubic B
B-spline
spline scheme
ƒ corresponding scheme for the differences
- mask
- local subdivision matrix
- eigenvalues: ½
½, ¼
- maps differences (edge vectors) to 0
- can we conclude that the scheme converges ?
12
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Symbols and masks
ƒ multiplying a symbol by (1+z)
ƒ write down the mask
[ 1, 2, 3, –1
1]
ƒ write it again, shifted to the left
[ 1, 2, 3, –1 ]
ƒ add
dd b
both
th rows
[ 1,
1 3,
3 5,
5 2,
2 –1
1]
ƒ dividing a symbol by (1+z)
ƒ check, if sum of odd/even coefficients is the same
ƒ write down the mask
ƒ copy first coefficient,
then take differences
13
[ 1,
1 4,
4 6,
6 4,
4 1 ]/8
–
=
[ 1,
1 3,
3 3,
3 1 ]/8
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Polynomial sequences
ƒ Definition
a sequence
q
c = { ci : i ∈ Z } is called p
polynomial
y
of
degree d, if there exists some polynomial π of
degree
g
d such that ci = π(i)
( ) for all i ∈ Z
ƒ Examples
ƒ (…, 3, 3, 3, 3, …) is of degree 0
ƒ (…, –2, 1, 4, 7, …) is of degree 1
ƒ if c is polynomial of degree d, then
∆d+1c = 0
14
⇔
(1 z )d+1c(z)
(1–
( )=0
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Symbols and masks
ƒ multiplying a symbol by (1– z)
ƒ write down the mask
[ 1, –2,
2, 3, –1
1]
ƒ write it negated, shifted to left
[ –1, 2, –3, 1 ]
ƒ add
dd b
both
th rows
[ –1,
1 3,
3 –5,
5 4,
4 –1
1]
ƒ dividing a symbol by (1– z)
ƒ check, if coefficients add to zero
ƒ write down the mask
ƒ copy first coefficient negated,
then take differences
15
[1
1, –4
4, 6,
6 –4
4, 1 ] / 8
–
=
[ –1
1, 3,
3 –3
3, 1 ] / 8
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Polynomial generation
ƒ suppose the initial data p0 is polynomial of
degree
g
d and the symbol
y
of the scheme is
a(z) = (1+z)d+1b(z)
(?)
then the refined data pj at any
an level
le el j is
polynomial of degree d, and so is the limit
curve
ƒ in fact, condition (?) is necessary and
sufficient for the scheme being able to
generate polynomials of degree d
16
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Polynomial generation
ƒ Example
ƒ cubic B-spline
p
scheme
a = [ 1, 4, 6, 4, 1 ] / 8
ƒ symbol
ƒ generates polynomials up to degree 3
ƒ initial data
p0 = (…, 9, 4, 1, 0, 1, 4, 9, …)
ƒ refined data p1 = ((…, 10,
10 5,
5 2,
2 1,
1 2,
2 5,
5 10,
10 …)) / 4
p2 = (…, 14, 9, 6, 5, 6, 9, 14, …) / 16
ƒ lilimit
it curve is
i a quadratic
d ti polynomial,
l
i l but
b t nott the
th
one from which the initial data was sampled
ƒ no polynomial reproduction
17
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
The functional setting
ƒ initial data
ƒ mask
ƒ refinement rule
ƒp
parameter values
ƒ piecewise linear functions
with
ƒ limit function
s
18
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Parameterizations
ƒ primal parameterization
ƒ for primal schemes
with odd symmetry
ƒ dual parameterization
ƒ for dual schemes
with even symmetry
19
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Linear reproduction
ƒ Example
ƒ Chaikin
Chaikin’ss corner cutting
ƒ initial data
a = [ 1, 3, 3, 1 ] / 4
, for
ƒ piecewise
i
i lilinear ffunctions
ti
with
ith
ƒ does the scheme reproduce π, i.e.
?
ƒ primal parameterization
⇒
ƒ dual parameterization
⇒
20
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Linear reproduction
ƒ for any scheme that generates linear functions
ƒ with symbol a(z) = (1+ z )2 b(z)
ƒ let τ = a′(1) / 2
ƒ attach
tt h d
data
t
t parameter
to
t
ƒ then the scheme also reproduces linear functions
ƒ Examples
ƒ cubic B
B-spline
spline scheme
ƒ Chaikin’s corner cutting
21
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Polynomial reproduction
ƒ reproduction of degree d requires generation
of degree
g
d
ƒ generation of degree d is equivalent to
ƒ a(z) = (1+ z )d+1b(z) ⇔ zero of order d + 1 at z = –1
ƒ Theorem
the subdivision scheme with symbol a(z) reproduces
polynomials of degree d w.r.t. the parameterization
with
ith τ = a′(1)
′(1) / 2,
2 if and
d only
l if
22
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Polynomial reproduction
ƒ Examples
ƒ polygon subdivision a = [ 1, 2, 1 ] / 2
- linear reproduction w.r.t. primal parameterization
ƒ Chaikin
Chaikin’ss corner cutting
a = [ 1,
1 3,
3 3,
3 1]/4
- linear reproduction w.r.t. dual parameterization
ƒ generall primal
i l 3-point
3
i
a = [ w, ½,
½ 1–
1 2 w, ½,
½ w]]
- linear reproduction w.r.t. primal parameterization
ƒ an unsymmetric scheme
a = [ –1, 0, 6, 8, 3 ] / 8
-q
quadratic reproduction
p
w.r.t. p
primal p
parameterization
- note: this is an interpolating scheme!
23
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Approximation order
ƒ a scheme that reproduces polynomials of
g
d has approximation
pp
order d+1
degree
ƒ given a sufficiently smooth function F
ƒ take the initial data
ƒ then
ƒ the constant C does not depend on h
24
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Summary
ƒ combining even/odd stencils into the mask
ƒ one common subdivision rule
ƒ use z-transform to turn mask into the symbol
ƒ formally, the symbol is a Laurent polynomial
ƒ transform data in the same way
ƒ yields an algebraic way to describe subdivison
a(–1)
1) = 0, a(1) = 2
ƒ necessary convergence condition: a(
ƒ hands-on rules for multiplying and dividing
masks by (1+z) and by (1–z)
(1 z)
25
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Summary
ƒ polynomial generation of degree d
a(z)
( ) = ((1+ z )d+1b(z)
( )
⇔ a(k)( –1) = 0 for k = 0, … , d
ƒ polynomial reproduction of degree d
ƒ requires polynomial generation of degree d
ƒ depends
d
d on th
the correctt parameterization
t i ti
with
τ = a′(1) / 2
ƒ correct values of the d derivatives of a at z = 1
for k = 0
0, … , d
26
Subdivision Schemes for Geometric Modelling – DRWA 2011 – Alba di Canazei
Download