The Level Set Method. Lecture Notes, MIT J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations

Similar documents
Unstructured Mesh Generation for Implicit Moving Geometries and Level Set Applications

Math 690N - Final Report

Level set methods Formulation of Interface Propagation Boundary Value PDE Initial Value PDE Motion in an externally generated velocity field

Level Set Methods and Fast Marching Methods

A Toolbox of Level Set Methods

weighted minimal surface model for surface reconstruction from scattered points, curves, and/or pieces of surfaces.

CS205b/CME306. Lecture 9

A Study of Numerical Methods for the Level Set Approach

Overview of Traditional Surface Tracking Methods

PARAMETRIC SHAPE AND TOPOLOGY OPTIMIZATION WITH RADIAL BASIS FUNCTIONS

Lecture 2 Unstructured Mesh Generation

BACK AND FORTH ERROR COMPENSATION AND CORRECTION METHODS FOR REMOVING ERRORS INDUCED BY UNEVEN GRADIENTS OF THE LEVEL SET FUNCTION

Theoretical Background for OpenLSTO v0.1: Open Source Level Set Topology Optimization. M2DO Lab 1,2. 1 Cardiff University

HIGH DENSITY PLASMA DEPOSITION MODELING USING LEVEL SET METHODS

Computational Methods for Advancing Interfaces

Dr. Ulas Bagci

Dijkstra s algorithm, Fast marching & Level sets. Einar Heiberg,

Outline. Level Set Methods. For Inverse Obstacle Problems 4. Introduction. Introduction. Martin Burger

The Level Set Method applied to Structural Topology Optimization

THE EIKONAL EQUATION: NUMERICAL EFFICIENCY VS. ALGORITHMIC COMPLEXITY ON QUADRILATERAL GRIDS. 1. Introduction. The Eikonal equation, defined by (1)

Numerical Methods for (Time-Dependent) HJ PDEs

Level Set Method in a Finite Element Setting

Segmentation with active contours: a comparative study of B-Spline and Level Set techniques

Isophote-Based Interpolation

June Wesley, Cambridge Univ. Press,

Level-set and ALE Based Topology Optimization Using Nonlinear Programming

Medical Image Segmentation using Level Sets

Semi-Implicit Level Set Methods for Curvature and Surface Diffusion Motion

Laurent D. Cohen 2 CEREMADE, Université Paris Dauphine PARIS CEDEX 16 - FRANCE

Level Sets Methods in Imaging Science

FEM techniques for interfacial flows

Implicit Surface Reconstruction from 3D Scattered Points Based on Variational Level Set Method

The Eikonal Equation

Automated Segmentation Using a Fast Implementation of the Chan-Vese Models

Introduction to Computer Graphics. Modeling (3) April 27, 2017 Kenshi Takayama

Evolution, Implementation, and Application of Level Set and Fast Marching Methods for Advancing Fronts

Extract Object Boundaries in Noisy Images using Level Set. Literature Survey

New Finite Difference Methods in Quadtree Grids

Geometric Integration Over Irregular Domains with Application to Level Set Methods

Fast marching methods

Fast Marching and Geodesic Methods. Some Applications

A Survey of Image Segmentation Based On Multi Region Level Set Method

Flow under Curvature: Singularity Formation, Minimal Surfaces, and Geodesics

An explicit and conservative remapping strategy for semi-lagrangian advection

Defense Technical Information Center Compilation Part Notice

Moving Interface Problems: Methods & Applications Tutorial Lecture II

Surfaces and Integral Curves

Mid-Year Report. Discontinuous Galerkin Euler Equation Solver. Friday, December 14, Andrey Andreyev. Advisor: Dr.

A CONSERVATIVE FRONT TRACKING ALGORITHM

Spline Curves. Spline Curves. Prof. Dr. Hans Hagen Algorithmic Geometry WS 2013/2014 1

Fairing Scalar Fields by Variational Modeling of Contours

Debojyoti Ghosh. Adviser: Dr. James Baeder Alfred Gessow Rotorcraft Center Department of Aerospace Engineering

Fast Marching Methods (1) are numerical algorithms for

Subjective Surfaces: a Geometric Model for Boundary Completion

GEOMETRICAL CONSTRAINTS IN THE LEVEL SET METHOD FOR SHAPE AND TOPOLOGY OPTIMIZATION

Geometrical Modeling of the Heart

Droplet collisions using a Level Set method: comparisons between simulation and experiments

Partial Differential Equations

A new Eulerian computational method for the propagation of short acoustic and electromagnetic pulses

A MESH EVOLUTION ALGORITHM BASED ON THE LEVEL SET METHOD FOR GEOMETRY AND TOPOLOGY OPTIMIZATION

Geometric and Appearance Modeling of Vascular Structures in CT and MR

On the order of accuracy and numerical performance of two classes of finite volume WENO schemes

IMA Preprint Series # 2021

Implicit Active Model using Radial Basis Function Interpolated Level Sets

Imagery for 3D geometry design: application to fluid flows.

A topology-preserving level set method for shape optimization

An Active Contour Model without Edges

Surfaces: notes on Geometry & Topology

Structural optimization using sensitivity analysis and a level-set method, in Scilab and Matlab

Numerical schemes for Hamilton-Jacobi equations, control problems and games

Background for Surface Integration

Ordered upwind methods for static Hamilton Jacobi equations

Three-dimensional segmentation of bones from CT and MRI using fast level sets

A Semi-Lagrangian Discontinuous Galerkin (SLDG) Conservative Transport Scheme on the Cubed-Sphere

Final Report. Discontinuous Galerkin Compressible Euler Equation Solver. May 14, Andrey Andreyev. Adviser: Dr. James Baeder

Fast Surface Reconstruction Using the Level Set Method

A Grid Based Particle Method for Evolution of Open Curves and Surfaces

Ian Mitchell. Department of Computer Science The University of British Columbia

Mass-Spring Systems. Last Time?

Investigating The Stability of The Balance-force Continuum Surface Force Model of Surface Tension In Interfacial Flow

Converting Level Set Gradients to Shape Gradients

Non-Rigid Image Registration III

Redistancing by Flow of Time Dependent Eikonal Equation

Isophote-Based Interpolation

Snakes, Active Contours, and Segmentation Introduction and Classical Active Contours Active Contours Without Edges

Crystal Voronoi Diagram and Its Applications to Collision-Free Paths

Curves, Tangent Planes, and Differentials ( ) Feb. 26, 2012 (Sun) Lecture 9. Partial Derivatives: Signs on Level Curves, Tangent

f xx (x, y) = 6 + 6x f xy (x, y) = 0 f yy (x, y) = y In general, the quantity that we re interested in is

Implicit Active Shape Models for 3D Segmentation in MR Imaging

An Efficient Solution to the Eikonal Equation on Parametric Manifolds

REVIEW I MATH 254 Calculus IV. Exam I (Friday, April 29) will cover sections

Active Geodesics: Region-based Active Contour Segmentation with a Global Edge-based Constraint

Eindhoven University of Technology MASTER. Cell segmentation using level set method. Zhou, Y. Award date: Link to publication

Development of a Maxwell Equation Solver for Application to Two Fluid Plasma Models. C. Aberle, A. Hakim, and U. Shumlak

Motion by intrinsic Laplacian of curvature

On the Construction, Comparison, and Local Characteristic Decomposition for High-Order Central WENO Schemes

MESHLESS SOLUTION OF INCOMPRESSIBLE FLOW OVER BACKWARD-FACING STEP

Edge Detection and Active Contours

Lecture 12 Level Sets & Parametric Transforms. sec & ch. 11 of Machine Vision by Wesley E. Snyder & Hairong Qi

GEOPHYSICS. Time to depth conversion and seismic velocity estimation using time migration velocities

Transcription:

The Level Set Method Lecture Notes, MIT 16.920J / 2.097J / 6.339J Numerical Methods for Partial Differential Equations Per-Olof Persson persson@mit.edu March 7, 2005 1 Evolving Curves and Surfaces Evolving boundaries or interfaces are part of many problems in science and engineering. In 1988, James A. Sethian and Stanley Osher proposed to represent these boundaries implicitly and model their propagation using appropriate partial differential equations. The boundary is given by level sets of a function φ(x), and they named their technique the Level Set Method. These notes give a short introduction to the method, and for more details we refer to the books by Sethian [4] and Osher [1], as well as their original paper [2]. Consider a boundary curve in two dimensions or a surface in three dimensions, see Figure 1. We are given a velocity field v, which in general depends on space, time, properties of the boundary (such as the normal direction and the curvature), as well as an indirect dependence from physical simulations using the boundary shape. To goal is to accurately model the evolution of the boundary under the velocities v. In many cases we are only interested in the motion normal to the interface. We can then use a (scalar) speed function F, and let the velocities be given by v = Fn, where n is the normal direction. 1.1 Explicit Techniques A simple approach to model the boundary motion is to represent it explicitly, for example (in two dimensions) by nodes along the curve that are connected by line segments. We then move these nodes according to the velocities v by solving the system of ODEs: dx (i) dt = v(x (i),t), x (i) (0) = x (i) 0, (1) 1

F Figure 1: An interface evolving according to the speed function F. where x (i) contains the coordinates of node i, v is the velocity function, and x (i) 0 is the initial node location. This system can be solved accurately using explicit time integration schemes, e.g. forward Euler or Runge-Kutta methods. When the velocity is given by Fn, we have to evaluate n at each node. We can approximate the tangent vector by central difference approximations involving the neighboring nodes, e.g. dx (i) ds x(i+1) x (i 1) 2 s (assuming equal distance s between the nodes), and expressing the normal in terms of the tangent and normalizing. Similar approximations can be used to compute other geometric variables such as the curvature. While this explicit scheme might be sufficient for small deformations of the initial interface, it has several drawbacks for general motions: During the evolution, the nodes become unevenly distributed and the numerical representation of the curve gets inaccurate (see Figure 2, left). By inserting and removing nodes we can improve the representation, but this introduces errors. Around sharp corners, the scheme will not produce the desired entropy solution, but will generate an incorrect shadowtail solution (Figure 2, center). Topological changes, such as merging curves, require special treatment (Figure 2, right). For curvature dependent speed functions F(κ), the scheme is sensitive to small perturbation which leads to instabilities unless the time steps are very small. (2) 2

Node distribution Sharp corners Topology changes Figure 2: Problems with explicit techniques. 1.2 Implicit Geometries In the level set method, the interface is represented implicitly by the zero level set of a function, φ(x) = 0. Note that φ is defined for all x, not just the ones on the boundary. To represent φ in a finite form on a computer, we discretize using a background mesh. A common choice is a simple Cartesian grid, but quadtrees or octrees can be used for higher efficiency. An example of a discretized implicit function is shown in Figure 3. The actual interface can be extracted from bilinear interpolation in each grid cell, but the main philosophy of the level set method is that the interface should only be accessed implicitly by operating on φ. Exception to this are for plotting purposes, and possibly for the reinitialization (see below). A special case of implicit representation is the signed distance function. It has the property that φ = 1, with different signs at the two sides of the interface. Also, φ(x) gives the (shortest) distance from x to the boundary φ = 0. The level set method does not require φ to be a distance function, but the numerical approximations are inaccurate if φ has large variations in the gradient. We therefore try to keep φ close to a signed distance function, by frequent reinitializations (see below). Geometric variables can be computed from φ without extraction of the interface. The normal vector is given by n = φ φ (3) (since φ is constant at a level set, φ points in the normal direction). The curvature of a curve in two dimensions is κ = φ φ = φ xxφ 2 y 2φ y φ x φ xy + φ yy φ 2 x (φ 2 x + φ 2 y) 3/2. (4) 3

φ>0 φ<0 Figure 3: A signed distance function φ discretized on a Cartesian grid. In three dimensions, we compute the mean curvature { (φyy + φ zz )φ 2 x + (φ xx + φ zz )φ 2 y + (φ x x + φ y y)φ 2 z } κ M = κ G = φ φ = and the Gaussian curvature 2φ x φ y φ xy 2φ x φ z φ xz 2φ y φ z φ yz (5) (φ 2 x + φ 2 y + φ 2 z) 3/2 φ 2 x(φ yy φ zz φ 2 yz) + φ 2 y(φ xx φ zz φ 2 xz) + φ 2 z(φ xx φ yy φ 2 xy) +2[φ x φ y (φ xz φ yz φ xy φ zz ) + φ y φ z (φ xy φ xz φ yz φ xx ) +φ x φ z (φ xy φ yz φ xz φ yy )] (φ 2 x + φ 2 y + φ 2 z) 2. (6) From these the principal curvatures can be obtained as κ M ± κ 2 M κ G. Using φ, we can also write different expressions for the two regions φ < 0, and φ > 0. For example, the density ρ(x) = ρ 1 + (ρ 2 ρ 1 )θ(φ(x)) (7) takes the value ρ 1 for φ < 0 and ρ 2 for φ > 0. On a discrete grid, the Heaviside function θ(x) has to be approximated numerically for example by smoothing. 1.3 The Level Set Equation Using the implicit representation φ, we can propagate the zero level set by the velocity field v by solving the convection equation (we actually propagate all the level sets, not just φ = 0): φ t + v φ = 0. (8) For motion in the normal direction, we use (3) and write v = Fn = F φ/ φ. Insert in (8) and use φ φ = φ 2 to obtain the Level Set Equation φ t + F φ = 0. (9) 4

1.4 Discretization The convection equation (8) can be solved numerically using first order upwinding. For the level set equation (9), with use the following first order finite difference approximation: ) φ n+1 = φ n + t 1 (max(f,0) + + min(f,0), (10) where + = [ max(d x φ n,0) 2 + min(d +x φ n,0) 2 + max(d y φ n,0) 2 + min(d +y φ n,0) 2 + max(d z φ n,0) 2 + min(d +z φ n,0) 2] 1/2, (11) = [ min(d x φ n,0) 2 + max(d +x φ n,0) 2 + min(d y φ n,0) 2 + max(d +y φ n,0) 2 + min(d z φ n,0) 2 + max(d +z φ n,0) 2] 1/2. (12) Here, D x is the backward difference operator in the x-direction, D +x the forward difference operator, etc. For the curvature dependent part of F, we use central difference approximations instead of (10). For further details and higher order schemes, see [4]. 1.5 Reinitialization After evolving φ under a general speed function F, it generally does not remain a signed distance function. We can reinitialize φ by finding (a new) φ with the same zero level set but with φ = 1. Sussman et al [5] proposed integrating the reinitialization equation φ t + sign(φ)( φ 1) = 0 (13) for a short period of time. This equation can be discretized in a similar way as the level set equation, and the discontinuous sign function is smoothed over a few grid cells. Another option is to explicitly update the nodes close the boundary, by for example extracting the curve segments and computing the distances to the grid nodes. For the remaining nodes, we can use the efficient fast marching method (see below). 1.6 The Boundary Value Formulation The level set equation (9) is an initial value problem, where we track the zero level set φ = 0 in time and ignore φ away from the interface. If the speed function F > 0, we can alternatively formulate the evolution by an arrival function T, 5

T(x,y) x y Figure 4: The boundary value formulation for interface evolution. T(x, y) gives the time for the interface to reach (x,y) from the initial location. with T(x) giving the time for the interface to reach x from its initial location Γ (Figure 4). From the fact that time * rate = distance we can derive the boundary value problem known as the Eikonal equation: T F = 1, T = 0 on Γ. (14) An important special case is F = 1, when (14) can be used to compute distance functions for the boundary Γ. 1.7 The Fast Marching Methods We can discretize the Eikonal equation (14) using the same scheme as for the level set equation, to obtain the nonlinear algebraic system of equations max(d x + min(d +x +max(d y + min(d +y +max(d z + min(d +z Another possibility is the scheme max(d x +max(d y +max(d z T, D+x T, D+y T, D+z 1/2 1/2 = 1 F. (15) = 1 F (16) which is slightly simpler because we choose either the forward or the backward difference along each dimensions (never both). For efficient solution of (16), we observe that front propagates outward from Γ and that nodes with higher value of T will never affect nodes with smaller 6

values. This is the idea behind the Fast Marching Method (Sethian [3], see also Tsitsiklis [6]). The given boundary values are considered known values, and the nodes neighboring these can be updated by (16) and inserted into a priority queue. The node with smallest unknown value can then by removed and marked as known, since it will not be affected by the other unknown values. Its neighbors are then updated by (16) and inserted into the queue. This is repeated until all node values are known, and with a priority queue based on heaps the total computation requires O(n log n) operations for n nodes. References [1] Stanley Osher and Ronald Fedkiw. Level set methods and dynamic implicit surfaces, volume 153 of Applied Mathematical Sciences. Springer-Verlag, New York, 2003. [2] Stanley Osher and James A. Sethian. Fronts propagating with curvaturedependent speed: algorithms based on Hamilton-Jacobi formulations. J. Comput. Phys., 79(1):12 49, 1988. [3] James A. Sethian. A fast marching level set method for monotonically advancing fronts. Proc. Nat. Acad. Sci. U.S.A., 93(4):1591 1595, 1996. [4] James A. Sethian. Level set methods and fast marching methods, volume 3 of Cambridge Monographs on Applied and Computational Mathematics. Cambridge University Press, Cambridge, second edition, 1999. [5] Mark Sussman, Peter Smereka, and Stanley Osher. A level set approach for computing solutions to incompressible two-phase flow. J. Comput. Phys., 114(1):146 159, 1994. [6] John N. Tsitsiklis. Efficient algorithms for globally optimal trajectories. IEEE Trans. Automat. Control, 40(9):1528 1538, 1995. 7