Overview ofPropagating Interfaces
Donald Tanguay
October 30, 2002
Outline
• Propagating Interfaces
• Example: motion under curvature
• Functional Formulation
• Parametric Formulation
• Level Set Formulation
• Relationship to Snakes
Interfaces
An interface (or front) is a boundary between two regions: “inside” and “outside.”
In 2-D, an interface is a simple closed curve:
Propagating InterfacesHow does an interface evolve over time?At a specific moment, the speed function F (L, G, I) describesthe motion of the interface in the normal direction.
Propagating Interfaces
• Local – depend on local geometric information (e.g., curvature and normal direction)• Global – depend on the shape and position of the front (e.g., integrals along the front, heat diffusion)• Independent – do not depend on the shape of the front (e.g., an underlying fluid velocity that passively transports the front)
Speed F(L,G,I) is a function of 3 types of properties:
Motion Under Curvature
Example: Motion by curvature. Each piece moves perpendicularto the curve with speed proportional to the local curvature.
largepositivemotion
smallnegativemotion
Motion Under Curvature
Curvature κ is the inverse of theradius r of the osculating circle.
Motion Under Curvature
http://math.berkeley.edu/~sethian/Applets/java_curve_flow.html
Functional Representation
Eulerian framework: define fixed coordinate system on the world.For every world point x, there is (at most) one value y = ft(x).Falling snow example:
)(0 xfy t )(1 xfy t
Functional Representation
However, many simple shapes are multivalued;they are not functions regardless of the orientation of thecoordinate system.
Parametric RepresentationSpatially parameterize the curve x by s so that at time t the curve is xt(s), where 0 s S and the curve is closed: xt(0) = xt(S).
Points on initial curve.
Gradient (wrt time) is thespeed in normal direction.
Normal is perpendicularto curve, as is curvature.
Parametric RepresentationFor motion under curvature, speed F depends only onlocal curvature κ – the equation of motion is thus:
where curvature is
and the normal is
2/322 )()(
ss
sssssst yx
yxxys
2/1222/122 )()(
)(ss
Tss
ss
Tss
t yx
xy
yx
yx
x
xsn
),())(()( snsFsxt ttt
Particle MethodsIn order to compute, discretize the parameterization into moving particles which reconstruct the front.Known under a variety of names: marker particle techniques, string methods, nodal methods.
= # mesh particles
s
t
sS
= time step
= parameterization step
),( ni
ni yx = location of point iΔs at time nΔt
Δs
Particle MethodsTo construct a numerical algorithm, the derivatives areapproximated as central differences based on the Taylor series:
Particle Methods
Numerical Instability
Because Δs has dropped from Eq. 4.4, as neighboringparticles move closer together the quotient approaches 0/0,which is numerically unstable!
Uncontrollable oscillations stem from a feedback loop:1. Small errors in particle positions produce2. Local variations in approximated derivatives leading to3. Variations in computed particle velocities causing4. Uneven advancement of particles, yielding5. Larger errors in particle positions.
Numerical Instability
Decreasing time steps overcomes the instability but at additionalcomputational cost.
Varying the time step affects the final solution to an example problem:
BAD BETTER BEST
Numerical Instability
Typical, unappealing remedies that alter the motion equations in non-obvious ways:
• “Smooth” the speed function to keep particles apart
• Redistribute particles periodically
• Introduce a filter to remove the oscillations in particle positions
Changing Topology
Example: two fires merge into a single fire.
Changing Topology
Buoys!
In particle methods:• Difficult (and expensive) to detect and change the particle chains• Much more difficult as dimensionality increases
Difficulties With Particle Methods
• Instability
• Local singularities
• Management of particles: remove, redistribute, connect
Level Set FormulationRecast problem with one additional dimension – the distance from the interface.
),(0 yxz t
Changing Topology
),(1 yxz t
Level Set FormulationThe interface always lies at the zeroth level set of the function ,i.e., the interface is defined by the implicit equation t (x, y) = 0.
Initial Value FormulationDefine F as speed in normal direction:
)()()( txFtxntxF
A particle on the front with path x(t) is on the zero level set:
0)),(( ttx
0)( tx txdt
d
0)()),(( ttxttx
(1)
by chain rule:
(2)
(1) into (2): ),0,(given ,0 txF t
which is the continuous level set equation.
Simple Computational Scheme
01
nijij
nij
nij F
t
ionapproximat derivative spatial nijij
),,( tnjhihnij
h = spacing of uniform mesh
t = time step
(i, j) = grid nodes
• Discrete grid in x-y domain• Finite difference approximations to derivatives
The discrete level set equation:
Behavior at SingularitiesNaive formulation has bad behavior at “corner” singularities.
BAD GOOD
Viscosity SolutionsThe straightforward speed function (e.g., F = 1) causes swallowtail.Add a little curvature term (viscosity), and the curve is
mathemagically well-behaved!
)1(lim0
F-lysmall
Level Set Benefits
• Straightforward in higher dimensions
• Topological changes are natural
• Accurate computational schemes exist
• Intrinsic geometric properties are easy to determine (e.g., normal, curvature)
• Adaptive computational strategies improve efficiency
• Functional explicit:– Inadequate model for most problems
• Parametric:– Adequate model, but
– Numerical instabilities
– Explicit topology makes changes difficult
• Level Set, functional implicit:– Adequate model, and
– Naturally handles changing topology, but
– Slow; needs efficiency improvements
Summary
Tt tsytsxsx ),(),()(
)(xfy t
0),( yxt
Summary
• Level sets is a general framework for accurately advancing an interface.
• Much of the challenge in particular interface problems is producing an adequate model of F.
Relation to Snakes
Snakes (active contours) have evolved greatly from the initial1988 paper of Kass, Witkin, and Terzopoulos.The term “snake” is now overloaded, and apparently thedifference from level sets is often exaggerated.
Two characteristics of snake formulations:• Neighbors connected into a chain• Additional “rod” or “spring” term in energy function attempts to keep neighbors apart to prevent degenerate chains
Further Topics
• Level Set implementation
• Narrow Band Technique – optimization for the initial value formulation
• Fast Marching Methods – optimization for boundary value formulation, F > 0
• Art of Designing F
• Many example applications
References
M. Kass, A. Witkin, and D. Terzopoulos, “Snakes: ActiveContour Models,” IJCV, Jan. 1988, pp. 321-331.
J. A. Sethian. Level Set Methods and Fast Marching Methods.Cambridge University Press, 1999.
J. A. Sethian, “Tracking Interfaces with Level Sets,”American Scientist, May-June 1997.