subdivision and smoothing of surfacesclasses.engr.oregonstate.edu/eecs/fall2017/cs554/... · heat...
TRANSCRIPT
Subdivision and Smoothing of Surfaces
Subdivision
• Connectivity• Coordinates
Subdivision
Subdivision
Subdivision
Subdivision
Subdivision
Subdivision
Does Subdivision Change Surface Topology?
• V’=?• F’=?• E’=?• V’-E’+F’=?
Does Subdivision Change Surface Topology?
• V’=V+E• F’=4*F• E’=2*E+3*F• V’-E’+F’=?
Subdivision
• Why do we need it?– More samples inside a triangle– Smoother surfaces by using different weights:
A
B
C DP
Subdivision
• Subdivision with Loop’s masks:– New vertex
A
B
C DP
)(81)(
83 DCBAP
Subdivision
• Subdivision with Loop’s masks:– Old vertex
))2cos41
83(
85(1 2
nn
A1
A3A4
A5A
A2
A6
n
j jAAnA1
)1('
Subdivision
• Note:– The position of a new vertex is the weighted sum of the
positions of the old vertices in its neighborhood. The total weights sum to one.
– The same can be said about an old vertex.
))2cos41
83(
85(1 2
nn
n
j jAAnA1
)1('
)(81)(
83 DCBAP
More on subdivision later.
Irregular Subdivision
Irregular Subdivision
Image Blurring
original 1 time: 4 pixels
1 time: 64 pixels
1 time: 250 pixels
Surface Fairing
Image credit: Desbrun et al.
Heat Diffusion
Vector Field Visualization
Image credit: Diewald et al.
Curvature Estimation
Image credit: Alliez et al.
• They need to solve Laplace’s equations.
What Do These Application Have In Common?
Smoothing
• Of surfaces
• On surfaces
Surface Smoothing
• Solving Laplace:– Given a function:– The gradient is:
– And the Laplace is:
),,( zyxf
zf
yf
xfzyxf ),,(
2
2
2
2
2
2
),,(zf
yf
xffzyxf
Heat Diffusion
• Heat conduction equation:
– where T is temperate and t is time.– and controls the speed of diffusion– Boundary conditions:
• Heat sources:• Walls
– When is balance achieved?
),,( zyxTtT
Heat Diffusion in 1D
• 1D heat conduction equation:
– Reaches balance when – This happens
• either:• or
2
2
)(xTxT
tT
02
2
xT
CT
baxT
• Discrete Laplace:
– Reaches balance when
– Maximum and minimum can only occur on the boundaries
– Update rule:
Heat Diffusion in 1D
)22
()( 112
2nnnn TTTT
dxTdxT
tT
211
nnn
TTT nn-1 n+1
2)()( 111 nnnnmm TTTTTT
• Discrete Laplace:
• Why does it shrink?
Curve Evolution
)()(
21)(
xNjij TTiT
tT
Image credit: Delphine Nain
• Reverse shrinkage:– maintain area
Curve Evolution
Image credit: Delphine Nain
• Directions of changes:– Normal (is what we need)– Tangential (does not change shape but change
the position of points)
Curve Evolution
• Similar to curve evolution except now we have a surface:– Normal (is what we need)– Tangential (does not change shape but change
the position of points)
Surface Evolution
• Consider the weighting functions:
– such that
– rewrite
Surface Evolution
)(
111 ))()(()()(iNj
im
jm
ijim
im vTvTwtvTvT
)(
1iNj
ijw
)(iNjij
ijij e
ew
– Uniform:
• No geometry info
– Cord:
• Uses geometry info• Not directly related to normal and curvature
Weighting Functions
1ije
ijij l
e 1
– Mean curvature:• Curvature flow• In ideal situations the vertex only moves in the
normal direction• Could be negative
– Mean value:
• Always non-negative
Weighting Functions
2)cot(cot 21
ije
jv
iv
21 1 2
2))2/tan()2/(tan( 21
ije
– Explicit• Unstable• Requires small step-size
– Implicit:• Stable• Large step-size• Requires solving a system of equations
– Gauss-Seidel• Stable• Large step-size• Iterative
Update Scheme
)(
111 ))()(()()(iNj
im
jm
ijim
im vTvTwtvTvT
)(
1 ))()(()()(iNj
im
jm
ijim
im vTvTwtvTvT
)(
11 ))()(()()(iNj
im
jcurrent
ijim
im vTvTwtvTvT
Smoothing on Surfaces
Any questions?