0% found this document useful (0 votes)
105 views19 pages

Geodesic Active Contours: Abstract

The document presents a new approach called geodesic active contours for detecting object boundaries in images. This approach models boundary detection as computing geodesic, or minimal distance, curves within a Riemannian space defined by image content. This geodesic formulation provides a connection between energy-based active contours ("snakes") and previous geometric active contour models based on curve evolution theory. It also improves on previous curve evolution models by incorporating a new velocity term that allows more accurate tracking of boundaries with high gradient variations, including small gaps. The geodesic active contours approach allows simultaneous detection of interior and exterior boundaries of multiple objects without requiring special contour tracking procedures.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
105 views19 pages

Geodesic Active Contours: Abstract

The document presents a new approach called geodesic active contours for detecting object boundaries in images. This approach models boundary detection as computing geodesic, or minimal distance, curves within a Riemannian space defined by image content. This geodesic formulation provides a connection between energy-based active contours ("snakes") and previous geometric active contour models based on curve evolution theory. It also improves on previous curve evolution models by incorporating a new velocity term that allows more accurate tracking of boundaries with high gradient variations, including small gaps. The geodesic active contours approach allows simultaneous detection of interior and exterior boundaries of multiple objects without requiring special contour tracking procedures.
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 19

International Journal of Computer Vision 22(1), 6179 (1997) c 1997 Kluwer Academic Publishers. Manufactured in The Netherlands.

Geodesic Active Contours


VICENT CASELLES Department of Mathematics and Informatics, University of Illes Balears, 07071 Palma de Mallorca, Spain
[email protected]

RON KIMMEL Department of Electrical Engineering, Technion, I.I.T., Haifa 32000, Israel
[email protected]

GUILLERMO SAPIRO Hewlett-Packard Labs, 1501 Page Mill Road, Palo Alto, CA 94304
[email protected]

Received October 17, 1994; Revised February 13, 1995; Accepted July 5, 1995

Abstract. A novel scheme for the detection of object boundaries is presented. The technique is based on active contours evolving in time according to intrinsic geometric measures of the image. The evolving contours naturally split and merge, allowing the simultaneous detection of several objects and both interior and exterior boundaries. The proposed approach is based on the relation between active contours and the computation of geodesics or minimal distance curves. The minimal distance curve lays in a Riemannian space whose metric is dened by the image content. This geodesic approach for object segmentation allows to connect classical snakes based on energy minimization and geometric active contours based on the theory of curve evolution. Previous models of geometric active contours are improved, allowing stable boundary detection when their gradients suffer from large variations, including gaps. Formal results concerning existence, uniqueness, stability, and correctness of the evolution are presented as well. The scheme was implemented using an efcient algorithm for curve evolution. Experimental results of applying the scheme to real images including objects with holes and medical data imagery demonstrate its power. The results may be extended to 3D object segmentation as well. Keywords: dynamic contours, variational problems, differential geometry, Riemannian geometry, geodesics, curve evolution, topology free boundary detection

1.

Introduction

Since original work by Kass et al. (1988), extensive research was done on snakes or active contour models for boundary detection. The classical approach is based on deforming an initial contour C0 towards the boundary of the object to be detected. The deformation is obtained by trying to minimize a functional designed so that its (local) minimum is obtained at the boundary of the object. These active contours are examples of

the general technique of matching deformable models to image data by means of energy minimization (Blake and Zisserman, 1987; Terzopoulos et al., 1988). The energy functional is basically composed of two components, one controls the smoothness of the curve and another attracts the curve towards the boundary. This energy model is not capable of handling changes in the topology of the evolving contour when direct implementations are performed. Therefore, the topology of the nal curve will be as the one of C0 (the initial

62

Caselles, Kimmel and Sapiro

curve), unless special procedures, many times heuristic, are implemented for detecting possible splitting and merging (Leitner and Cinquin, 1991; McInerney and Terzopoulos, 1995; Szeliski et al., 1993). This is a problem when an un-known number of objects must be simultaneously detected. This approach is also nonintrinsic, since the energy depends on the parametrization of the curve and is not directly related to the objects geometry. As we show in this paper, a kind of reinterpretation of this model solves these problems. See for example (Malladi et al., 1995) for comments on other advantages and disadvantages of energy approaches of deforming contours, as well as an extended literature on snakes. Recently, novel geometric models of active contours were simultaneously proposed by Caselles et al. (1993) and by Malladi et al. (1994, 1995, ). These models are based on the theory of curve evolution and geometric ows, which has received a large amount of attention from the image analysis community in recent years (Faugeras, 1993; Kimia et al., ; Kimmel and Bruckstein, 1995; Kimmel et al., 1995, ; Kimmel and Sapiro, 1995; Niessen et al., 1993; Romeny, 1994; Sapiro et al., 1993, Sapiro and Tannenbaum, 1993a, b, 1994a, b, 1995). In these active contours models, the curve is propagating (deforming) by means of a velocity that contains two terms as well, one related to the regularity of the curve and the other shrinks or expands it towards the boundary. The model is given by a geometric ow (PDE), based on mean curvature motion. This model is motivated by a curve evolution approach and not an energy minimization one. It allows automatic changes in the topology when implemented using the level-sets based numerical algorithm (Osher and Sethian, 1988). Thereby, several objects can be detected simultaneously without previous knowledge of their exact number in the scene and without using special tracking procedures. In this paper a particular case of the classical energy snakes model is proved to be equivalent to nding a geodesic curve in a Riemannian space with a metric derived from the image content. This means that in a certain framework, boundary detection can be considered equivalent to nding a curve of minimal weighted length. This interpretation gives a new approach for boundary detection via active contours, based on geodesic or local minimal distance computations. Then, assuming that this geodesic active contour is represented as the zero level-set of a 3D function, the geodesic curve computation is reduced to a geometric ow that is similar to the one obtained in the curve

evolution approaches mentioned above. However, this geodesic ow includes a new component in the curve velocity, based on image information, that improves those models.1 The new velocity component allows us to accurately track boundaries with high variation in their gradient, including small gaps, a task that was difcult to accomplish with the previous curve evolution models. We also show that the solution to the geodesic ow exists in the viscosity framework, and is unique and stable. Consistency of the model is presented as well, showing that the geodesic curve converges to the right solution in the case of ideal objects. A number of examples of real images, showing the above properties, are presented. The approach here presented has the following main properties: 1) Describes the connection between energy and curve evolution approaches of active contours. 2) Presents active contours for object detection as a geodesic computation approach. 3) Improves existing curve evolution models as a result of the geodesic formulation. 4) Allows simultaneous detection of interior and exterior boundaries in several objects without special contour tracking procedures. 5) Holds formal existence, uniqueness, stability, and consistency results. 6) Does not require special stopping conditions. In Section 2 we present the main result of the paper, the geodesic active contours. This section is divided in four parts: First, classical energy based snakes are revisited and commented. A particular case which will be helpful later is derived and justied. Then, the relation between this energy snakes and geodesic curves is shown and the basics of the proposed active contours approach for boundary detection is presented. In the third part, the level-sets technique for curve evolution is described, and the geodesic curve ow is incorporated to this framework. The last part, 2.4, presents further interpretation of the geodesic active contours approach from the boundary detection perspective and shows its relation to previous deformable models based on curve evolution. After the model description, theoretical results concerning the proposed geodesic ow are given in Section 3. Experimental results with the proposed approach are given in Section 4 followed by concluding remarks in Section 5.

2.

Geodesic Active Contours

In this section we discuss the connection between energy based active contours (snakes) and the computation of geodesics or minimal distance curves in a

Geodesic Active Contours

63

Riemannian space derived from the image. From this geodesic model for object detection, we derive a novel geometric partial differential equation for active contours that improves previous curve evolution models. 2.1. Energy Based Active Contours

Let us briey describe the classical energy based snakes. Let C(q): [0, 1] R2 be a parametrized planar curve and let I : [0, a] [0, b] R+ be a given image in which we want to detect the objects boundaries. The classical snakes approach (Kass et al., 1988) associates the curve C with an energy given by E(C) =
0 1

|C (q)|2 dq +
0 1 0

|C (q)|2 dq (1)

| I (C(q))| dq,

where , , and are real positive constants. The rst two terms control the smoothness of the contours to be detected (internal energy),2 while the third term is responsible for attracting the contour towards the object in the image (external energy). Solving the problem of snakes amounts to nding, for a given set of constants , , and , the curve C that minimizes E. Note that when considering more than one object in the image, for instance for an initial prediction of C surrounding all of them, it is not possible to detect all the objects. Special topology-handling procedures must be added. Actually, the solution without those special procedures will be in most cases a curve which approaches a convex hull type gure of the objects in the image. In other words, the classical (energy) approach of snakes can not directly deal with changes in topology. The topology of the initial curve will be the same as the one of the, possibly wrong, nal curve. The model derived below, as well as the curve evolution models in (Caselles et al., 1993; Malladi et al., 1994, 1995, ), overcomes this problem. Another possible problem of the energy based models is the need to select the parameters that control the trade-off between smoothness and proximity to the object. Let us consider a particular class of snakes model where the rigidity coefcient is set to zero, that is, = 0. Two main reasons motivate this selection, which at least mathematically restricts the general model (1): First, this selection will allow us to derive the relation between this energy based active contours and geometric curve evolution ones, which is one of

the goals of this paper. This will be done in Section 2.2 through the presentation of the proposed geodesic active contours. Second, as we will see in Sections 2.2 and 2.4, the regularization effect on the geodesic active contours comes from curvature based curve ows, obtained only from the other terms in (1) (see Eq. (16) and its interpretation after it). This will allow to achieve smooth curves in the proposed approach without having the high order smoothness given by = 0 in energy-based approaches.3 Moreover, the second order smoothness component in (1), assuming an arc-length parametrization, appears in order to minimize the total squared curvature (curve known as elastica). It is easy to prove that the curvature ow used in the new approach and presented below decreases the total curvature (Angenent, 1991). The use of the curvature driven curve motions as smoothing term was proved to be very efcient in previous literature (Alvarez et al., 1993; Caselles et al., 1993; Kimia, ; Niessen et al., 1993; Malladi et al., 1994, 1995, ; Sapiro and Tannenbaum, 1993), and is also supported by our experiments in Section 4. Therefore, curve smoothing will be obtained also with = 0, having only the rst regularization term. Assuming this (1) reduces to E(C) =
0 1

|C (q)|2 dq
0

| I (C(q))| dq. (2)

Observe that, by minimizing the functional (2), we are trying to locate the curve at the points of maxima | I | (acting as edge detector), while keeping certain smoothness in the curve (object boundary). This is actually the goal in the general formulation (1) as well. The tradeoff between edge proximity and edge smoothness is played by the free parameters in the above equations. Equation (2) can be extended by generalizing the edge detector part in the following way: Let g: [0, +[ R+ be a strictly decreasing function such that g(r ) 0 as r . Hence, | I | can be replaced by g(| I |)2 , obtaining a general energy functional given by E(C) = =
0 0 1 1

|C (q)|2 dq +
0

g(| I (C(q))|)2 dq (3)

(E int (C(q)) + E ext (C(q))) dq.

The goal now is to minimize E in (2) for C in a certain allowed space of curves.4 Note that in the above energy functional, only the ratio / counts. The geodesic active contours will be derived from (2).

64

Caselles, Kimmel and Sapiro

The functional in (2) is not intrinsic since it depends on the parametrization q that until now is arbitrary. This is an undesirable property, since parametrizations are not related to the geometry of the curve (or object boundary), but only to the velocity they are traveled. Therefore, it is not natural for an object detection problem to depend on the parametrization of the representation. Actually, if we dene a new parametrization of the curve via q = (r ), : [c, d] [0, 1], > 0, we obtain
1 0 1 0

where p := mC . In order to show the relation between the energy minimization problem (2) and geodesic computations, we will need the following Theorem (Dubrovin et al., 1984). Theorem 1 (Maupertuis Principle). Curves C(q) in Euclidean space which are extremal corresponding to p2 the Hamiltonian H = 2m + U(C), and have a xed energy level E 0 (law of conservation of energy), are geodesics, with non-natural parameter, with respect to the new metric (i, j = 1, 2) gi j = 2m(E 0 U(C))i j . This classical Theorem explains, among other things, when an energy minimization problem is equivalent to nding a geodesic curve in a Riemannian space. That means, when the solution to the energy problem is given by a curve of minimal weighted distance between given points. Distance is measured in the given Riemannian space with the rst fundamental form gi j (the rst fundamental form denes the metric or distance measurement in the space). See the mentioned references (specially Section 3.3 in (Dubrovin et al., 1984)) for details on the theorem and the corresponding background in Riemannian geometry. According to the above result, minimizing E(C) as in (2) with H = E 0 (conservation of energy) is equivalent to minimizing
1 0

|C (q)|2 dq =
c

|(C ) (r )|2 ( (r ))1 dr,

g(| I (C(q))|) dq =
c

g(| I (C (r ))|) (r ) dr,

and the energies can change in any arbitrary form. One of our goals will be to present a possible solution to this problem by choosing a parametrization that is intrinsic to the curve (geometric). 2.2. The Geodesic Curve Flow

We now proceed and show that the solution of the particular energy snakes model (2) is given by a geodesic curve in a Riemannian space induced from the image I . (A geodesic curve is a (local) minimal distance path between given points.) To show this, we use the classical Maupertuis Principle (Dubrovin et al., 1984) from dynamical systems. Giving all the background on this principle is beyond the scope of this paper, so we will restrict the presentation to essential points and geometric interpretation. Let us dene U(C) := g(| I (C)|)2 , and write = m/2. Therefore, E(C) =
0 1

gi j Ci C j dq,

(4)

or (i, j = 1, 2)
1 0

g11 C1 2 + 2g12 C1 C2 + g22 C2 2 dq,

(5)

L(C(q)) dq,

where L is the Lagrangian given by L(C) := m |C |2 U(C). 2

The Hamiltonian (Dubrovin et al., 1984) is then given by H= p2 + U(C), 2m

where (C1 , C2 ) = C (components of C), gi j = 2m(E 0 U(C))i j . We have just transformed the minimization (2) into the energy (5). As we see from the denition of gi j , Eq. (5) has a free parameter, E 0 . We deal now with this energy. Based on Fermats Principle, we will motivate the selection of the value of E 0 . We then present an intuitive approach that brings us to the same selection. In Appendix A, we extend our formulation without a-priori xing E 0 . Fixing the ratio /, the search for the path minimizing (2) may be considered as a search for a path in the (x, y, q) space, indicating the non-intrinsic nature

Geodesic Active Contours

65

of this minimization problem. The Maupertuis Principle of least action used to derive (5) presents a purely geometric principle describing the orbits of the minimizing paths (Born and Wolf, 1986). In other words, it is possible using the above theorem to nd the projection of the minimizing path of (2) in the (x, y, q) space onto the (x, y) plane by solving an intrinsic problem. Observe that the parametrization along the path is yet to be determined after its orbit is tracked. The intrinsic problem of nding the projection of the minimizing path depends on a single free parameter E 0 incorporating the parametrization as well as and (E 0 = E int E ext = |C (q)|2 g(C(q))2 ). The question to be asked is whether the problem in hand should be regarded as the behavior of springs and mass points leading to the non-intrinsic model (2). We shall take one step further, moving from springs to light rays, and use the following result from optics to motivate the proposed model (Born and Wolf, 1986; Dubrovin et al., 1984): Theorem 2 (Fermats Principle). In an isotropic medium the paths taken by light rays in passing from a point A to a point B are extrema corresponding to the traversal-time (as action). Such paths are geodesics with respect to the new metric (i, j = 1, 2) 1 i j . gi j = 2 c (X ) c(X ) in the above equation corresponds to the speed of light at X . Fermats Principle denes the Riemannian metric for light waves. We dene c(X ) = 1/g(X ) where high speed of light corresponds to the presence of an edge, while low speed of light corresponds to a non-edge area. The result is equivalent then to minimizing the intrinsic problem
1 0

model (2) for object detection as a geodesic computation is valid for any value of E 0 . The value of E 0 is selected to be zero from now on, which means that E int = E ext in (2). This selection simplies the notation (see Appendix A), and claries the relation of Theorem 1 and energy-snakes with (geometric) curve evolution active contours that results form theorems 1 and 2. At an ideal edge, E ext in (2) is expected to be zero, since | I | = and g(r ) 0 as r . Then, the ideal goal is to send the edges to the zeros of g. Ideally we should try as well to send the internal energy to zero. Since images are not formed by ideal edges, we choose to make equal contributions of both energy components. This choice, which coincides with the one obtained from Fermats Principle and as said before allows to show the connection with curve evolution active contours, is also consistent with the fact that when looking for an edge, we may travel along the curve with arbitrarily slow velocity (given by the parametrization q, see equations obtained with the above change of parametrization). More comments on different selections of E 0 , as well as formulas corresponding to E 0 = 0, are given in Appendix A. Therefore, with E 0 = 0, and gi j = 2mg(| I (C)|)2 i j , Eq. (4) becomes
1

Min
0

2mg(| I (C(q)|)|C (q)| dq.

(7)

Since the parameters above are constants, without loss of generality we can set now 2m = 1 to obtain
1

Min
0

g(| I (C(q)|)|C (q)| dq.

(8)

g(| I (C(q))|)|C (q)| dq,

(6)

which is the same formulation as in (5), having selected E 0 = 0. We shall return for a while to the energy model (2) to further explain the selection of E 0 = 0 from the point of view of object detection. As was explained before, in order to have a completely closed form for boundary detection via (5), we have to select E 0 . It was shown that selecting E 0 is equivalent to xing the free parameters in (2) (i.e., the parametrization and /). Note that by Theorem 1, the interpretation of the snakes

We have transformed the problem of minimizing (2) into a problem of geodesic computation in a Riemannian space, according to a new metric. Let us, based on the above theory, give the above expression a further geodesic curve interpretation from a slightly different perspective. The Euclidean length of the curve C is given by L := |C (q)| dq = ds, (9)

where ds is the Euclidean arc-length (or Euclidean metric). It is easy to prove that the ow Ct = N (10)

66

Caselles, Kimmel and Sapiro the active contour C should move in order to decrease the length L R . The detected object is then given by the steady state solution of (13), that is Ct = 0.6 To summarize, Eq. (13) presents a curve evolution ow that minimizes the weighted length L R , which was derived from the classical snakes case (2) via Maupertuis Principle of least action. This is the basic geodesic curve ow we propose for object detection (the full model is presented below). In the following section we embed this ow in a level-set formulation in order to complete the model and show its connection with previous curve evolution active contours. This embedding will also help to present theoretical results regarding the existence of the solution of (13), as we do in Section 3. We note that minimization of a normalized version of (12) was proposed in (Fua and Leclerc, 1990) from a different perspective, leading to a different geometric method. 2.3. The Level-Sets Geodesic Flow: Derivation

where is the Euclidean curvature (Guggenheimer, 1963),5 gives the fastest way to reduce L, that is, moves the curve in the direction of the gradient of the functional L. This ow is known as the Euclidean curve shortening ow (Grayson, 1987). Looking now at (8), a new length denition in a different Riemannian space is given,
1

L R :=
0

g(| I (C(q)|)|C (q)| dq.

(11)

Since |C (q)| dq = ds, we obtain


L(C)

L R :=
0

g(| I (C(q)|) ds.

(12)

Comparing this with the classical length denition as given in (9), we observe that the new length is obtained by weighting the Euclidean element of length ds by g(| I (C(q)|), which contains information regarding the boundary of the object. Therefore, when trying to detect an object, we are not just interested in nding the path of minimal classical length ( ds) but the one that minimizes a new length denition which takes into account image characteristics. Note that (8) is general, besides being a positive decreasing function, no assumptions on g were made. Therefore, the theory of boundary detection based on geodesic computations given above can be applied to any general edge detector functions g. Recall that (8) was obtained from the particular case of energy based snakes (2) using Maupertuis Principle, which helps to identify variational approaches that are equivalent to computing paths of minimal length in a new metric space. In order to minimize (8) (or L R ) we search for the gradient descent direction of (8), which is a way of minimizing L R via the steepest-descent method. Therefore, we need to compute the Euler-Lagrange (Strang, 1986) of (8). Details on this computation are given in Appendix B. Thus, according to the steepest-descent method, to deform the initial curve C(0) = C0 towards a (local) minima of L R , we should follow the curve evolution equation (compare with (10)) C(t) = g(I ) N ( g N )N , t (13)

In order to nd the geodesic curve, we computed the corresponding steepest-descent ow of (8), Eq. (13). Equation (13) is represented using the level-sets approach (Osher and Sethian, 1988; Sethian, 1989), which we proceed to describe. Assume that the curve C is a level-set of a function u: [0, a][0, b] R. That is, C coincides with the set of points u = constant (e.g., u = 0). u is therefore an implicit representation of the curve C. This representation is parameter free, then intrinsic. It is also topology free since different topologies of the zero level-set do not imply different topologies of u, making it appropriate for curve evolution applications as was originally introduced by Osher and Sethian (1988), Sethian (1989). It is easy to show, see Appendix C, that if the planar curve C evolves according to Ct = N , for a given function , then the embedding function u should deform according to u t = | u|, where is computed on the level-sets. By embedding the evolution of C in that of u, topological changes of C(t) are handled automatically and accuracy and stability are achieved using the proper numerical algorithm

where is the Euclidean curvature as before, N is the unit inward normal, and the right hand side of the equation is given by the Euler-Lagrange of (8) as derived in Appendix B. This equation shows how each point in

Geodesic Active Contours

67

(Osher and Sethian, 1988). This level-set representation was formally analyzed in (Chen et al., 1991; Evans and Spruck, 1991; Soner, 1993), proving for example that in the viscosity framework, the solution is independent of the embedding function u (see Section 3 as well as Theorems 5.6 and 7.1 in (Chen et al., 1991)). In our case u is initiated to be the signed distance function. Therefore, based on (8) and embedding (13) in u, we obtain that solving the geodesic problem is equivalent to searching for the steady state solution ( u = 0) of t the following evolution equation (u(0, C) = u 0 (C)): u u = | u|div g(I ) t | u| u + g(I ) u = g(I )| u|div | u| = g(I )| u| + g(I ) u, (14) where the right hand of the ow is the Euler-Lagrange of (8) with C represented by a level-set of u, and the curvature is computed on the level-sets of u.7 That means, (13) is obtained by embedding (13) into u for = g(I ) g N . On the equation above we made use of the fact that = div u . | u|

Appendix C, the ow u t = (c + )| u|, means that each one of the level-sets C of u is evolving according to Ct = (c + )N , where N is the inward normal to the curve. This equation was rst proposed in (Osher and Sethian, 1988; Sethian, 1989), were extensive numerical research on it was performed. It was recently introduced in computer vision in (Kimia et al., ), were deep research was performed for shape analysis. The previously presented Euclidean shortening ow Ct = N , (16)

Equation (13) is the main part of the proposed active contour model. 2.4. The Level-Sets Geodesic Flow: Boundary Detection

Let us proceed and explore the geometric interpretation of the geodesic active contours Eq. (13) from the point of view of object segmentation, as well as its relation to other geometric curve evolution approaches to active contours. In (Caselles et al., 1993; Malladi et al., 1994, 1995, ), the authors proposed the following model for boundary detection: u u = g(I )| u|div t | u| = g(I )(c + )| u|, + cg(I )| u| (15)

where c is a positive real constant. Following (Caselles et al., 1993; Malladi et al., 1994, 1995, ), Eq. (15) can be interpreted as follows: First, from the results in

denoted also as Euclidean heat ow, is well known for its very satisfactory geometric smoothing properties (Angenent, 1991; Gage and Hamilton, 1986; Grayson, 1987). (It was extended in (Sapiro and Tannenbaum, 1993a, b, 1994) for the afne group and in (Olver et al., 1994, ; Sapiro and Tannenbaum, 1993) for others.) The ow decreases the total curvature as well as the number of zero-crossings and the value of maxima/minima curvature. Recall that this ow also moves the curve in the gradient direction of its length functional. Therefore, it has the properties of shortening as well as smoothing. This shows that having only the rst regularization component in (1), = 0 and = 0, is enough to obtain smooth active contours as argued in Section 2.1 when the selection = 0 was done. The constant velocity cN , which is related with classical mathematical morphology (Sapiro et al., 1993) and shape offsetting in CAD (Kimmel and Bruckstein, 1993), is similar to the balloon force introduced in (Cohen, 1991). Actually this velocity pushes the curve inwards (or outward) and it is crucial in the above model in order to allow convex initial curves to capture non-convex shapes. That is, to detect nonconvex objects.8 Of course, the c parameter must be specied a priori in order to make the object detection algorithm automatic. This is not a trivial issue as pointed out in (Caselles et al., 1993) where possible ways of estimating this parameter are considered. Summarizing, the force (c + ) acts as the internal force in the classical energy based snakes model, smoothness being provided by the curvature part of the ow. The Euclidean heat ow Ct = N is exactly the regularization curvature ow that replaces

68

Caselles, Kimmel and Sapiro

the high order smoothness term in (1) as discussed in Section 2.1. The external image dependent force is given by the stopping function g(I ). The main goal of g(I ) is actually to stop the evolving curve when it arrives to the objects boundaries. In (Caselles et al., 1993; Malladi et al., 1994, 1995, ), the authors choose g= 1 1 + | I| p , (17)

where I is a smoothed version of I and p = 1 or 2. I was computed using Gaussian ltering, but more effective geometric smoothers, as those in (Alvarez et al., 1992; Sapiro and Tannenbaum, 1994b), can be used as well. This topic is currently being investigated (Malladi and Sethian). Note that other decreasing functions of the gradient may be selected as well. For an ideal edge, I = , g = 0, and the curve stops (u t = 0). The boundary is then given by the set u = 0. In contrast with classical energy models of snakes, the curve evolution model given by (15) is topology independent. That is, there is no need to know a priori the topology of the solution. This allows it to detect any number of objects in the image, without knowing their exact number. This is achieved with the help of the mentioned level-set numerical algorithm for curve evolution, developed in (Osher and Sethian, 1988; Sethian, 1989) and already used by others for different image analysis problems (Chopp, 1991; Kimia et al., ; Kimmel et al., 1995, ; Kimmel and Sapiro, 1995; Sapiro et al., 1993; Sapiro and Tannenbaum, 1993a, 1995). In this case, the topology changes are automatically handled without the necessity to add specic monitoring on the deforming curve or any heuristic criterion. Let us return to our model. Comparing Eqs. (13) to (15), we see that the term g u, naturally incorporated via the geodesic framework, is missing in the old model. This term attracts the curve to the boundaries of the objects ( g points toward the middle of the boundaries). Note that in the old model, the curve stops when g = 0. This only happens at an ideal edge. In cases where there are different gradient values along the edge, as often happens in real images, g gets different values at different locations along the boundaries. It is necessary to restrict the g values, as well as possible gaps in the boundary, so that the propagating curve is guaranteed to stop. This makes the geometric model (15) inappropriate for the detection of boundaries with (un-known) high variations of the

gradients. In the proposed model, the curve is attracted towards the boundary by the new gradient term. Observe in Fig. 1 the 1D case of an image I of an object of high intensity value and low intensity background. In Figs. 1(a) and (b), I and its smoothed version I are presented. Figure 1(c) shows g and its gradient vectors. Observe the way the gradient vectors are all directed towards the middle of the boundary. Those vectors direct the propagating curve into the valley of the g function. In the 2D case, g N is effective in case the gradient vectors coincide with normal direction of the propagating curve. Otherwise, it will lead the propagating curve into the boundary and eventually force it to stay there. To summarize, this new force increases the attraction of the deforming contour towards the boundary, being of special help when this boundary has high variations on its gradient values. Thereby, it is also possible to detect boundaries with high differences in their gradient values, as well as small gaps. The second advantage of this new term is that we partially remove the necessity of the constant velocity given by c. This constant velocity, that mainly allows the detection of non-convex objects, introduces an extra parameter to the model, that in most cases is an undesirable property. In our case, the new term will allow the detection of non-convex objects as well. This constant motion term may help to avoid certain local minima (as the

Figure 1. Geometric interpretation of the attraction force in 1D. The original edge signal I , its smoothed version I, and the derived stopping function g are given. The evolving contour is attracted to the valley created by g u (see text).

Geodesic Active Contours

69

balloon force), and is also of importance when starting from curves inside the object as we will see in Section 4. In case we wish to add this constant velocity, in order for example to increase the speed of convergence, we can consider the term cg(I )| u| like an area constraint to the geodesic problem (8) (c being the Lagrange multiplier),9 obtaining u u = | u|div g(I ) t | u| + cg(I )| u|. (18)

here described, and the described approach of object segmentation via geodesic computation, are independent of the specic selection of g. 3. Existence, Uniqueness, Stability, and Consistency of the Geodesic Model

This equation is of course equivalent to u = g(c + )| u| + u t g, (19)

and means that the level-sets move according to Ct = g(I )(c + )N ( g N )N . (20)

Equation (18), which is the level-sets representation of the modied solution of the geodesic problem (8) derived from the energy (2), constitutes the general geodesic active contour model we propose. The solution to the object detection problem is then given by the zero level-set of the steady state (u t = 0) of this ow. As described in the experimental results, it is possible to choose c = 0 (no constant velocity), and the model still converges (in a slower motion). The advantage is that we have obtained a model with less parameters.10 An important issue of the proposed model is the selection of the stopping function g in our model. According to the results in (Caselles et al., 1993) and in Theorem 5 in Section 3, in the case of ideal edges the described approach of object detection via geodesic computation is independent of the choice of g, as long as g is a positive strictly decreasing function and g(r ) 0 as r . Since real images do not contain ideal edges, g must be specied. In the following experimental results we use g as in Malladi et al. and Caselles et al., given by (17). This is a very simple edge detector, similar to the ones used in previous active contours models, both curve evolution and energy based ones, and suffers from the well known problems of gradient based edge detectors. In spite of this, and as we can appreciate from the following examples, accurate results are obtained using this simple function. The use of better edge detectors, as for example energy ones (Freeman and Adelson, 1991; Perona and Malik, 1991), will immediately improve the results. We are currently investigating the use of different metrics to dene edges, and incorporating these metrics in the geodesic model. As pointed out before, the results

Before proceeding with the experimental results, we want to present results regarding existence and uniqueness of the solution to (18). Based on the theory of viscosity solutions (Crandall et al., 1992), the Euclidean heat ow as well as the geometric model (15), are well dened for non-smooth images as well (Caselles et al., 1993; Chen et al., 1991; Evans and Spruck, 1991). We now present similar results for our model (18). Note that besides the work in (Caselles et al., 1993), there is not much formal analysis for active contours approaches in the literature. The results presented in this section, together with the results on numerical analysis of viscosity solutions, ensures the existence and uniqueness of the solution of the geodesic active contours model. Let us rst recall the notion of viscosity solutions; see (Crandall et al., 1992) for details. We re-write Eq. (18) in the form (u(0, X ) = u 0 (X )) u g(X )ai j ( u)i j u g u cg(X )| u| = 0 t [t, X ) [0, ) R2 , (21) where ai j (q) = i j |ip|2 j if p = 0. We used in (21) and we shall use below the usual notations i = i x 2 and i j = x x j , together with the classical Einstein i summation convention. The terms g(X ) and g are assumed to be continuous. Equation (21) should be solved in D = [0, 1]2 with Neumann boundary conditions. In order to simplify the notation and as usual in the literature, we extend the images by reection to R2 and we look for solutions verifying u(X + 2h) = u(X ), for all X R2 and h Z2 . The initial condition u 0 as well as the data g(X ) are taken extended to R2 with the same periodicity. Let u C([0, T ]R2 ) for some T ]0, [. We say that u is a viscosity sub-solution of (21) if for any function C(R R2 ) and any local maxima (t0 , X0 ) ]0, T ] R2 of u we have if (t0 , X0 ) = 0, then (t0 , X0 ) g(X0 )ai j ( (t0 , X0 ))i j (t0 , X0 ) t g(X0 ) (t0 , X0 ) cg(X0 )| (t0 , X0 )| 0,
p ,p

70

Caselles, Kimmel and Sapiro (t0 , X0 ) = 0, then

and if

(t0 , X0 ) g(X0 ) lim sup ai j (q)i j (t0 , X0 ) 0, q0 t and u(0, X ) u 0 (X ). In the same way, a viscosity super-solution is dened by changing in the expressions above local maxima by local minima, by , and lim sup by lim inf. A viscosity solution is a functions which is both a viscosity sub-solution and a viscosity supersolution. Viscosity solutions is one of the most popular frameworks for the analysis of non-smooth solutions of PDEs, having physical relevance as well. The viscosity solution coincides with the classical one if this exists. With the notion of viscosity solutions, we can now present the following result regarding our geodesic model: Theorem 3. Let W1, denote the space of bounded Lipschitz functions in R2 . Assume that g 0 is such that supX R2 |Dg 1/2 (X )| < and supX R2 |D 2 g(X )| < . Let u 0 BUC(R2 ) W1, (R2 ).11 Then 1. Equation (21) admits a unique viscosity solution u C([0, ) R2 ) L (0, T ; W 1, (R2 )) for all T < . Moreover, u satises inf u 0 u(t, X ) sup u 0 . 2. Let v C([0, ) R2 ) be the viscosity solution of (21) corresponding to the initial data v0 C(R2 ) W1, (R2 ). Then u(t, ) v(t, )

steps of the corresponding proofs for the model (15); see (Caselles et al., 1993), Theorem 3.1, and we shall omit the details (see also (Alvarez et al., 1992)). In the next Theorem, we recall results on the independence of the generalized evolution with respect to the embedding function u 0 . Let 0 be the initial active contour, oriented such that it contains the object. In this case the initial condition u 0 is selected to be the signed distance function, such that it is negative in the interior of 0 and positive in the exterior. Then, we have Theorem 4 (Theorem 7.1 (Chen et al., 1991)). Let u 0 W 1, (R2 ) BUC(R2 ). Let u(t, x) be the solution of the proposed geodesic evolution equation as in previous theorem. Let (t) := {X : u(t, X ) = 0} and D(t) := {X : u(t, X ) < 0}. Then, ( (t), D(t)) are uniquely determined by ( (0), D(0)). This Theorem is adopted from (Chen et al., 1991), where a slightly different formulation is given. The techniques there can be applied to the present model. Let us present some further remarks on the proposed geodesic ows (13) and (18), as well as the previous geometric model (15). First note that these equations are invariant under increasing re-arrangements of contrast (morphology invariant (Alvarez et al., 1993)). This means that (u) is a viscosity solution of the ow if u is and : R R is an increasing function. On the other hand, while (13) is also contrast invariant, i.e., invariant to the transformation u u (remember that u is the embedding function used by the level-set approach), Eqs. (15) and (18) are not due to the presence of the constant velocity component cg(I )| u|. This has a double effect. First, for Eq. (13), it can be shown that the generalized evolution of the level-sets (t) only depends on 0 ((Evans and Spruck, 1991), Theorem 2.8), while for (18), the result in Theorem 4 is given. Second, for Eq. (13) one can show that if a smooth classical solution of the curve ow (13) exists and is unique, then it coincides with the generalized solution obtained via the level-sets representation (13) during the lifetime of the classical solution ((Evans and Spruck, 1991), Theorem 6.1). The same result can then be proved for the general curve ow (20) and its level-set representation (18), although a more delicate proof, on the lines of Corollary 11.2 in (Soner, 1993), is required. We have just presented results concerning the existence, uniqueness, and stability of the solution of the geodesic active contours. Moreover, we have observed that the evolution of the curve is independent of the embedding function, at least as long as we precise its

u 0 v0

for all t 0. This shows that the unique solution is stable. The assumptions of Theorem 3 are just technical. They imply the smoothness of the coefcients of (21) is required to prove the result using the method in (Alvarez et al., 1992; Caselles et al., 1993). In particular, Lipschitz continuity in X is required. This implies a well dened trajectory of the ow Xt = g(X ), going to every point X0 R2 , which is reasonable in our context. The proof of this theorem follows the same

Geodesic Active Contours

71

interior and exterior regions. These results are presented in the viscosity framework. To conclude this section, let us mention that, in the case of a smooth ideal edge , one can prove that the generalized motion (t) converges to as t , making the proposed approach consistent: Theorem 5. Let = {X R2 : g(X ) = 0} be a simple Jordan curve of class C 2 and Dg(X ) = 0 in . Furthermore, assume u 0 W 1, (R2 )BUC(R2 ) is of class C 2 and such that the set {X R2 : u 0 (X ) 0} contains and its interior. Let u(t, X ) be the solution of (18) and (t) = {X R2 : u(t, X ) = 0}. Then, if c, the constant component of the velocity, is sufciently large, (t) as t in the Hausdorff distance. This theorem is proved in (Caselles et al., 1995) for the extension of the geodesic model for 3D object segmentation. In this theorem, we assumed c to be sufciently large. A similar result can be proved for the basic geodesic model, that is for c = 0, assuming the maximal distance between and the initial curve (0) is given and bounded (to avoid local minima). 4. Experimental Results

Let us present some examples of the proposed geodesic active contours model (18). The numerical implementation is based on the algorithm for curve evolution via level-sets developed by Osher and Sethian (1988), Sethian (1989) and recently used by many authors

for different problems in computer vision and image processing. The algorithm allows the evolving curve to change topology without monitoring the deformation. This means that several objects can be detected simultaneously, although it is not required to know that there are more than one in the image. Note that when implementing our model with this algorithm, the extension of the image-based speed performed in (Malladi et al., 1994, 1995, ) is not necessary. Furthermore, using new results in (Adalsteinsson and Sethian, 1993; Malladi et al., ), the algorithm can be made to converge very fast. In the numerical implementation of Eq. (18) we have chosen central difference approximation in space and forwards difference approximation in time. This simple selection is possible due to the stable nature of the equation, however, when the coefcient c is taken to be of high value, more sophisticated approximations are required (Osher and Sethian, 1988). See the mentioned references for details on the numerics. In the following gures, the original image is presented on the left and the one with the deforming contours on the right. The deforming contour (u = 0) is represented by a green contour, and the nal one (the geodesic) by a red one. In the case of inward motion, the original curve surrounds all the objects. In the case of outward motion, it is any given curve in the interior of the object. Figure 2 presents two wrenches with inward ow. Note that this is a difcult image, not only for the existence of 2 objects, separated by only a few pixels, but also for the existence of many artifacts, like the shadows, which can derive the edge detection to a

Figure 2. Inward motion to detect two objects, separated by only a few pixels. The original image is given on the left and the one with the deforming contours on the right. The deforming contour (u = 0) is represented by a green contour, and the nal one (the geodesic) by a red one. The initial contour is given by the frame of the image, surrounding both objects. See Section 4 for more details on this and next images.

72

Caselles, Kimmel and Sapiro

Figure 3. An example of outward ow. The original curves are given as two small circles inside the objects. Note that both curves deform simultaneously and independently. Both interior and exterior boundaries are detected. The initial curves manage to split and detect all the contours in both objects. This splitting is automatic.

wrong solution. We applied the geodesic model (18) to the image, and indeed, both objects are detected. The original connected curve splits in order to detect both objects. The geodesic contours also manages not to be stopped by the shadows (false contours), due to the stronger attraction force provided by the term g u towards the real boundaries. Observe that the process of preferring the real edge over the shadow one, starts at their connection points, and the contour is pulled to the real edge, like closing a zipper. We run the model also with c = 0, obtaining practically the same results with slower convergence. Figure 3 presents an outward ow. The original curves are the two small circles, one inside each of the objects. Note that both curves deform simultaneously and independently. In the case of energy approaches, disjoint curves must be tracked to ensure that they contribute to different energy functionals. This tracking is not necessary in our model, it is not necessary to know how many disjoint deforming contours there are in the image. Note also here that the interior and exterior boundaries are both detected. The initial curves manage to split and detect all the contours in both objects. This splitting is automatic. We can also appreciate in the lower left corner, that the geodesic active contours split in a very narrow band (only a few pixels width), managing to enter in very small regions. Figure 4 presents another example of a medical image. The tumor in the image is an acousticus neurinoma, and includes the triangular shaped portion at the top left part. For this image, an inward deforming contour was used. The results are presented in Fig. 5, where

Figure 4. An example of tumor detection in MRI via geodesic active contours. The tumor in the image is an acousticus neurinoma, and includes the triangular shaped portion at the top left part.

the tumor portion is shown after zoom out for better presentation. Note that due to the intrinsic sub-pixel accuracy of the algorithm, very accurate measurements, as tumor area, can be computed. For comparison, the same image was also applied to the model without the new gradient term ( g u), that is, the geometric models developed by Caselles et al. (1993) and Malladi et al. (1994). We observed that due to the large variation of the gradient along the object boundaries and the high noise in the image, the curve did not stop

Geodesic Active Contours

73

Figure 5. Detection of the tumor in Fig. 4. For this image, an inward deforming contour was used. The tumor portion is shown after zoom out for better presentation. The same parameters as in Figs. 2 and 3 were used, showing the robustness of the algorithm.

Figure 6. Object detection in an ultrasound image. The fetus is accurately detected by the geodesic active contours. In this case, the image was smoothed with a Gaussian kernel before the detection was performed.

at the correct position and the tumor was not detected. The result was a curve that shrinks to a point, instead of detecting the tumor. This can be probably solved by additional, more complicated stopping conditions, that incorporate a-priori knowledge of the image quality for example. In our case on the other hand, the stopping is obtained automatically without the necessity of introducing new parameters. Exactly the same algorithm can be used for completely different type of images, as the wrenches and the medical one. We conclude the geodesic experiments with an ultrasound image, to show the exibility of the approach. This is given in Fig. 6, where the fetus is detected. In this case, the image was smoothed with a Gaussian-type kernel (23 iterations of a 3 3 window lter are usually applied) before the detection was performed. This

avoids possible local minima, and together with the attraction force provided by the new term, allowed to detect an object with gaps in its boundary. In general, gaps in the boundary (at gradient) can be detected if they are of the order of magnitude of 1/(2c) (after smoothing). Note also that the initial curve is closer to the object to be detected (compare with Fig. 2), to avoid further possible detection of false contours (local minima). Although this problem is signicantly reduced by the new term incorporated in our geodesic model, is not completely solved. In many applications, as interactive segmentation of medical data, this is not a problem, since the user can provide a rough initial contour as the one in Fig. 6 (or remove false contours). This problem might be automatically solved using better stopping function g, as explained in the previous

74

Caselles, Kimmel and Sapiro

That is, the arc-length ds in (12) is replaced by a Euclidean area element. Correctness of the model is studied in the mentioned paper as well. In the gure, the object to be detected is composed of two torus, one inside the other (knotted surface). The initial surface is an ellipsoid surrounding the two torus (top left). Following gures show the surface evolution. Note how the model manages to split and detect this very different topology (bottom right). The complete 3D model is beyond the scope of this paper, and we refer the interested reader to the mentioned reference. 5. Concluding Remarks

Figure 7. Example of the geodesic model extension to 3D (minimal surfaces, from (Caselles et al., 1995)). In the gure, the object to be detected is composed of two torus, one inside the other (knotted surface). The initial surface is an ellipsoid surrounding the two torus (top left). Following gures show the surface evolution. Note how the model manages to split and detect this very different topology (bottom right).

sections, or by higher values of c, the constant velocity, imitating the balloon force of Cohen et al. Another classical technique for avoiding some local minima is to solve the geodesic ow in a multiscale fashion. Starting from a contour surrounding all the image, and a low resolution of it, the algorithm is applied. Then, the result of it (steady state) is used as initial contour for the next higher resolution, and the process continues up to the original resolution. Multiresolution can help as well to reduce the computational complexity (Geiger et al., 1995). The nal example, Fig. 7, is taken from (Caselles et al., 1995), and presents the 3D extension of the geodesic ow. The basic idea for 3D, theoretically and experimentally studied in (Caselles et al., 1995), is to replace the computation of geodesics or minimal distance paths by the computation of minimal surfaces.

A geodesic formulation for active contours was presented. It was shown that a particular case of the classical energy-snakes or active contours approach for boundary detection leads to nding a geodesic curve in a Riemannian space derived from the image content. This proposes a new scheme for object boundary detection based on geodesic or minimal path computations. This approach also gives possible connections between classical energy based deformable contours and geometric curve evolution ones. The geodesic formulation introduced a new term to the curve evolution models that further attracts the deforming curve to the boundary, improving the detection of boundaries with large differences in their gradient. This term also partially frees the model from the need to estimate crucial parameters. Thereby, the geodesic formulation also improves previous approaches. The result is an active contour approach which is intrinsic (geometric) and topology independent. We also presented results regarding existence, uniqueness, stability, and consistency of the solution obtained by the proposed active contours. Experiments for different kinds of images were presented. These experiments demonstrate the ability to detect several objects, as well as the ability to detect interior and exterior boundaries at the same time. The sub-pixel accuracy intrinsic to the algorithm allows to perform accurate measurements after the object is detected (Sapiro et al., 1995). It is interesting to note that other image processing and computer vision problems, like shape from shading (Kimmel and Bruckstein, 1995; Kimmel et al., ; Oliensis and Dupuis, 1991; Rouy and Tourin, 1992), can be reformulated as the computation of geodesics or minimal distances. The metric is specied by the image and the application. Here we have shown that the snakes or deforming contours are also members of the

Geodesic Active Contours

75

geodesics family. We are currently investigating this geodesic-type approach for other problems in image analysis, as well as the use of better image metrics to incorporate into the geodesic model. These metrics, together with multi-scale implementations as in (Geiger et al., 1995) and fast numerical algorithms as those in (Adalsteinsson and Sethian, 1993), will improve possible initialization difculties as those in Fig. 6 as well as performance speed. The formulation of 3D active surfaces is an important topic for many applications as well; see for example (Cohen et al., 1992). Extension of the 2D curve evolution model developed in (Caselles et al., 1993; Malladi et al., 1994, 1995, ) is not straightforward, since an extension of the Euclidean heat ow was not yet developed (Alvarez et al., 1993; Caselles and Sbert, 1994; Olver et al., 1996). The geodesic formulation given by (8) can be extended to 3D replacing the 2D gradient by a 3D one and Euclidean arc-length (ds) by area. Then, using the level-sets representation, the corresponding geometric ow can be computed. Results in this direction are reported in (Caselles et al., 1995). Appendix A Let us present the analogue to Eq. (7) when E 0 is a general value. Note that E 0 gives the difference between E int and E ext in (2). If E 0 = 0, then instead of (7), the following minimization is obtained:
1

minimization problem has an extra term related to the length of the curve. The importance of this length in the minimization is given by the exact value of E 0 , manifesting the relation between E 0 and the trade-off parameters and in the energy expression (2). Note that as explained before, the Euler-Lagrange of L is , and this will appear as an extra term in the corresponding ow if E 0 = 0. Then, the new geodesic ow will be (compare with (13)) C(t) = Q(I ) N ( Q N )N + E 0 N t (A2)

The extra term appears un-related to Q, which is the edge detector part of the algorithm. Therefore, selecting E 0 too big, will give too much importance to the minimization of L, and may cause the ow to miss the edges. This is clear also from (2), which (A2) is trying to minimize. Having E 0 = 0 is the only option which makes all the components of the geometric ow that minimizes (2) to be g-dependent, giving a further justication for this selection. Appendix B We now compute the Euler-Lagrange of (8), to obtain the geodesic ow (13). For the simplication of the notation, we sometimes write C(t) for the curve C(t, q), omitting the space parameter q, as well as g(C) instead of g(| I (C)|). Consider the functional L R (C) =
0 1

Min
0

2m E 0 + g(I )2 |C | dq.

(A1)

g(C(t, q))|Cq (t, q)| dq,

In order for all the computations after Eq. (7) to hold, the expression above is equivalent to (7) if g 2m E 0 + g(I )2 . As pointed out before, E 0 represents the trade-off between and in (2) (as well as the parametrization), as is clear from the expressions above. Let us further develop this point here for completeness. Re-writing E 0 + g 2 (I ) as a quadratic form ( E 0 + Q)2 , it is easy to show that Q = E 0 + E 0 + g(I )2 and (A1) becomes
1

where C: [0, 1] R2 is a closed (C 1 ) curve. Let us compute the rst variation of L R at some closed curve C0 , assumed to be of class C 2 . Consider a variation C of C0 , that is C: ( , ) [0, 1] R2 (t, q) C(t, q), is a C 2 function of (t, q) such that C(0, q) C0 and C(t, 0) = C(t, 1), t ( , ) ( > 0). Assuming a given orientation of C, we compute the derivative of L R (C) with respect of t, obtaining d L R (C(t)) = dt d g(C(t, q))|Cq (t, q)| dq dt 0 1 d g(C(t, q)) |Cq (t, q)| dq. + dt 0
1

Min
0

Q ds +

E0 L ,

where L is the Euclidean length of the curve. Since Q is an edge detector as g, we see that basically the

76

Caselles, Kimmel and Sapiro

Therefore, d L R (C(t)) = dt
1 0

Since Ts = N , we have ( g(C(t, q)) Ct (t, q))|Cq (t, q)| dq


1 0

d L R (C(t))|t=0 = dt

L(C0 ) 0

[ g(C0 ) ( g(C0 ) T )T g(C0 ) N ] Ct (0) ds,

g(C(t, q))(T (t, q) Ctq (t, q)) dq, and d L R (C(t))|t=0 = dt

where T (t, q) denotes the unit tangent to the curve C(t, q). Integrating by parts in the second term we have that the above expression is equal to =
0 1

L(C0 ) 0

[( g(C0 ) N )N g(C0 ) N ] Ct (0) ds.

( g(C(t, q)) Ct (t, q))|Cq (t, q)| dq


1 0

=
0 1

(g(C(t, q))T (t, q))q Ct (t, q)) dq

[( g(C(t, q)) Ct (t, q))|Cq (t, q)|

( g(C(t, q)) Cq (t, q))(T (t, q) Ct (t, q)) g(C(t, q))Tq (t, q) Ct (t, q)] dq =
0 1

This expression gives the Gateaux derivative (rst variation) of L R at C = C0 . Then, according to the steepestdescent method, to connect an initial curve C0 with a local minimum of L R (C) we should solve the evolution equation Ct = g(C) N ( g(C) N )N . This gives (13), that is, the motion of the level-sets of (13), minimizing (8). To compute the motion of the embedding function u, the results in next Appendix are used. Following the same steps as before, it can also be shown that (13) is the ow corresponding to the steepest-descent of E(u) =
R2

[( g(C(t, q)) Ct (t, q)

( g(C(t, q)) Cs (t, q)) (T (t, q) Ct (t, q)))|Cq (t, q)| g(C(t, q))Tq (t, q) Ct (t, q)] dq. Let s denote the arc-length of C(t). Since Tq = Ts |Cq |, parametrizing the curves by arc-length, the above integral writes
L(C(t)) 0

g(X )| u| dX .

[ ( g(C(t, s)) Ct (t, s)) ( g(C(t, s)) T (t, s)) (T (t, s) Ct (t, s)) g(C(t, s))Ts (t, s) Ct (t, s)] ds. Appendix C We present a geometric result concerning the evolution of the embedding function u given the ow of its levelsets. Consider a planar curve evolving according to Ct = N , for a given function . We want to represent C as the level-set of a function u: R2 R. The question is how u should evolve. This embedding process was rst proposed in the curve evolution framework in (Osher and Sethian, 1988), and we proceed to give a very simple geometric derivation of it. Formal justication of the method, on the lines described in Section 3, was later provided in (Chen et al., 1991; Evans and Spruck, 1991; Soner, 1993). Assume that u is negative in the interior

To simplify the notation let us remove the arguments in the expression above, obtaining d L R (C(t)) = dt
L(C(t)) 0

[ g(C) ( g(C) T )T g(C)Ts ] Ct ds.

At t = 0, d L R (C(t))|t=0 = dt
L(C0 ) 0

[ g(C0 ) ( g(C0 ) T )T g(C0 )Ts ] Ct (0) ds.

Geodesic Active Contours

77

of the zero level-set and positive in its exterior (usually, the signed distance function is used). Consider a level-set, dened by { R2 : u( , t) = 0}. We have to nd the evolution of u(t) such that the evolving curve C(t) is represented by the evolving zero level-set (t), that is C(t) (t). By differentiating the denition above with respect to t we obtain u
t

GS started this work when at CICS and LIDS, MIT. He acknowledges Prof. Sanjoy Mitter for his support during this period. RK thanks Prof. Freddy Bruckstein and Dr. Nahum Kiryati from Technion-Israel for their encourage and support.

Notes
1. Although this term appears in similar forms in classical energy snakes, it was missing in previous curve evolution ones. Here we show how this important term is naturally incorporated to the model via the geodesic formulation. 2. Other smoothing constraints can be used, but this is the most common one. 3. Note that having = 0 gives a fourth order component in the Euler-Lagrange of (1). 4. In order to simplify the notation, we will sometimes write g(I ) or g(X) (X R2 ) instead of g(| I |). 5. = |Css | 6. This formulation, and its 3D extension Caselles et al. (1995), were recently independently proposed also by Kichenassamy et al. (1995) and Shah (1995) based on a different approach (without showing the relation between classical energy and curve evolution snakes). 7. The curvature of a level set is given by = (u x x u 2 2u x u y u x y + y u yy u 2 )/| u|3 . x 8. A convex curve remains convex when evolving according to the Euclidean heat ow (Gage and Hamilton, 1986). 9. Constant velocity is derived from an energy involving area. That is, C = cN minimizes the area enclosed by C. Therefore, adding constant velocity is like solving L R + c Area(C). 10. As pointed out before, the value of c was crucial in previous geometric curve evolution based deformable contours. In the new model, convergence may be achieved without determining this parameter. The geodesic ow (13) is able to detect nonconvex curves. 11. In our experimental results, the initial function u 0 will be the distance function, with u 0 = 0 at the boundary of the image.

+ u t = 0.

Note that for any level-set, the following relation holds: u = N . | u| In this equation, the left hand uses terms of the surface u, while the right hand is related to the planar curve C. The combination of the relations above gives the required result u t = | u|. Completing this, we still need to clarify that the evolution (t) of C0 is independent of the embedding function u 0 . We also need to verify the coincidence of (t) with the classical solution C(t) when this exists. As pointed out in Section 3, this was analyzed by a number of authors (Chen et al., 1991; Evans and Spruck, 1991; Soner, 1993), and the basic results are described in Section 3. In order to present formal proof of the theorems in Section 3, a large amount of viscosity solutions theory is required, and this is beyond the scope of this paper. The details can be found in the mentioned references. Acknowledgments We wish to thank Prof. Andrew Zisserman from Oxford University for the wrenches image and Prof. Guido Gerig from ETH for the MRI medical image. We also thank Prof. Demetri Terzopoulos from Toronto University, Prof. Baba Vemuri from University of Florida, Dario Ringach from New York University, and the anonymous reviewers for comments that enormously improved the presentation of this paper. Finally, we thank Prof. Olaf Kubler from ETH, whose dedicated comments motivated us to modify the paper organization, add details, and improve its quality in general.

References
Adalsteinsson, D. and Sethian, J.A. 1993. A fast level set method for propagating interfaces. LBL TR-University of Berkeley. Alvarez, L., Lions, P.L., and Morel, J.M. 1992. Image selective smoothing and edge detection by nonlinear diffusion. SIAM J. Numer. Anal., 29:845866. Alvarez, L., Guichard, F., Lions, P.L., and Morel, J.M. 1993. Axioms and fundamental equations of image processing. Arch. Rational Mechanics, 123. Angenent, S. 1991. Parabolic equations for curves on surfaces, Part II. Intersections, blow-up, and generalized solutions. Annals of Mathematics, 133:171215. Blake, A. and Zisserman, A. 1987. Visual Reconstruction, MIT Press: Cambridge. Born, M. and Wolf, W. 1986. Principles of Optics, Pergamon Press: Sixth (corrected) Edition.

78

Caselles, Kimmel and Sapiro

Caselles, V., Catte, F., Coll, T., and Dibos, F. 1993. A geometric model for active contours. Numerische Mathematik, 66:131. Caselles, V. and Sbert, C. 1994. What is the best causal scale-space for 3D images? Technical Report, Department of Math. and Comp. Sciences, University of Illes Balears, 07071 Palma de Mallorca, Spain. Caselles, V., Kimmel, R., Sapiro, G., and Sbert, C. 1995. Minimal surfaces: A three dimensional segmentation approach. Technion EE Pub., 973 (submitted). Chen, Y.G., Giga, Y., and Goto, S. 1991. Uniqueness and existence of viscosity solutions of generalized mean curvature ow equations. J. Differential Geometry, 33:749786. Chopp, D. 1991. Computing minimal surfaces via level set curvature ows, LBL TR-University of Berkeley, 1991. Cohen, L.D., On active contour models and balloons. CVGIP: Image Understanding, 53:211218. Cohen, I., Cohen, L.D., and Ayache, N. 1992. Using deformable surfaces to segment 3D images and infer differential structure. CVGIP: Image Understanding, 56:242263. Crandall, M.G., Ishii, H., and Lions, P.L. 1992. Users guide to viscosity solutions of second order partial linear differential equations. Bulletin of the American Math. Society, 27:167. Dubrovin, B.A., Fomenko, A.T., and Novikov, S.P. 1984. Modern GeometryMethods and Applications I, Springer-Verlag: New York. Evans, L.C. and Spruck, J. 1991. Motion of level sets by mean curvature, I. J. Differential Geometry, 33:635681. Faugeras, O. 1993. On the evolution of simple curves of the real projective plane. Comptes rendus de lAcad. des Sciences de Paris, 317:565570. Freeman, W.T. and Adelson, E.H. 1991. The design and use of steerable lters. IEEE-PAMI, 9:891906. Fua, P., and Leclerc, Y.G. 1990. Model driven edge detection. Machine Vision and Applications, 3:4556. Gage, M. and Hamilton, R.S. 1986. The heat equation shrinking convex plane curves. J. Differential Geometry, 23:6996. Geiger, D., Gupta, A., Costa, L.A., and Vlontzos, J. 1995. Dynamic programming for detecting, tracking, and matching deformable contours. IEEE-PAMI, 17(3). Grayson, M. 1987. The heat equation shrinks embedded plane curves to round points. J. Differential Geometry, 26:285314. Guggenheimer, H.W. 1963. Differential Geometry, McGraw-Hill Book Company: New York. Kass, M., Witkin, A., and Terzopoulos, D. 1988. Snakes: Active contour models. International Journal of Computer Vision, 1:321 331. Kichenassamy, S., Kumar, A., Olver, P., Tannenbaum, A., and Yezzi, A. 1995. Gradient ows and geometric active contour models. Proc. ICCV, Cambridge. Kimia, B.B., Tannenbaum, A., and Zucker, S.W. . Shapes, shocks, and deformations, I. International Journal of Computer Vision, 15:189224. Kimmel, R. and Bruckstein, A.M. 1993. Shape offsets via level sets. CAD, 25(5):154162. Kimmel, R., Amir, A., and Bruckstein, A.M. 1995. Finding shortest paths on surfaces using level sets propagation. IEEEPAMI, 17(1):635640. Kimmel, R. and Bruckstein, A.M. 1995. Tracking level sets by level sets: A method for solving the shape from shading problem. CVIU, 62(1):4758.

Kimmel, R., Siddiqi, K., Kimia, B.B., and Bruckstein, A.M. Shape from shading: Level set propagation and viscosity solutions. International Journal of Computer Vision, (to appear). Kimmel, R., Kiryati, N., and Bruckstein, A.M. Distance maps and weighted distance transforms. Journal of Mathematical Imaging and Vision, Special Issue on Topology and Geometry in Computer Vision, (to appear). Kimmel, R. and Sapiro, G. 1995. Shortening three dimensional curves via two dimensional ows. International Journal of Computer & Mathematics with Applications, 29:49 62. Leitner and Cinquin, 1991. Dynamic segmentation: Detecting complex topology 3D objects. Proc. of Eng. in Medicine and Biology Society, Orlando, Florida. Malladi, R., Sethian, J.A., and Vemuri, B.C. 1994. Evolutionary fronts for topology independent shape modeling and recovery. Proc. of the 3rd ECCV, Stockholm, Sweden, pp. 313. Malladi, R., Sethian, J.A., and Vemuri, B.C. 1995. Shape modeling with front propagation: A level set approach. IEEE Trans. on PAMI, 17:158175. Malladi, R., Sethian, J.A., and Vemuri, B.C. A fast level set based algorithm for topology independent shape modeling. Journal of Mathematical Imaging and Vision, special issue on Topology and Geometry, A. Rosenfeld and Y. Kong. (Eds.), (to appear). Malladi, R. and Sethian, J.A. personal communication. McInerney, T. and Terzopoulos, D. 1995. Topologically adaptable snakes. Proc. ICCV, Cambridge. Niessen, W.J., tar Haar Romeny, B.M., Florack, L.M.J., and Salden, A.H. 1993. Nonlinear diffusion of scalar images using well-posed differential operators. Technical Report, Utrecht University, The Netherlands. Oliensis, J. and Dupuis, P. 1991. Direct method for reconstructing shape from shading. Proceedings SPIE Conf. 1570 on Geometric Methods in Computer Vision, pp. 116128. Olver, P.J., Sapiro, G., and Tannenbaum, A. 1994. Differential invariant signatures and ows in computer vision: A symmetry group approach. In Geometry Driven Diffusion in Computer Vision, B. Romeny (Ed.), Kluwer. Olver, P.J., Sapiro, G., and Tannenbaum, A. . Invariant geometric evolutions of surfaces and volumetric smoothing. SIAM J. of Appl. Math., (to appear). Osher, S.J. and Sethian, J.A. 1988. Fronts propagation with curvature dependent speed: Algorithms based on HamiltonJacobi formulations. Journal of Computational Physics, 79:12 49. Perona, P. and Malik, J. 1991. Detecting and localizing edges composed of steps, peaks, and roofs. MITCICS Technical Report. Romeny, B. (Ed.) 1994. Geometry Driven Diffusion in Computer Vision, Kluwer. Rouy, E. and Tourin, A. 1992. A viscosity solutions approach to shape-from-shading. SIAM. J. Numer. Analy., 29:867884. Sapiro, G., Kimmel, R., Shaked, D., Kimia, B.B., and Bruckstein, A.M. 1993. Implementing continuous-scale morphology via curve evolution. Pattern Recog., 26(9):13631372. Sapiro, G. and Tannenbaum, A. 1993a. Afne invariant scale-space. International Journal of Computer Vision, 11(1):2544. Sapiro, G. and Tannenbaum, A. 1993b. On invariant curve evolution and image analysis. Indiana University Mathematics Journal, 42(3).

Geodesic Active Contours

79

Sapiro, G., and Tannenbaum, A. 1994a. On afne plane curve evolution. Journal of Functional Analysis, 119(1):79120. Sapiro, G. and Tannenbaum, A. 1994b. Edge preserving geometric enhancement of MRI data. EE-TR, University of Minnesota. Sapiro, G. and Tannenbaum, A. 1995. Area and length preserving geometric invariant scale-spaces. IEEE Trans. PAMI, 17(1):6772. Sapiro, G., Kimmel, R., and Caselles, V. 1995. Object detection and measurements in medical images via geodesic active contours. Proc. SPIE-Vision Geometry, San Diego. Sethian, J.A. 1989. A review of recent numerical algorithms for hypersurfaces moving with curvature dependent ows. J. Differential Geometry, 31:131161.

Shah, J. 1995. Recovery of shapes by evolution of zero-crossings. Technical Report, Math. Dept. Northeastern Univ, Boston, MA. Soner, H.M. 1993. Motion of a set by the curvature of its boundary. J. of Diff. Equations, 101:313372. Strang, G. 1986. Introduction to Applied Mathematics, Wellesley Cambridge Press. Szeliski, R., Tonnesen, D., and Terzopoulos, D. 1993. Modeling surfaces of arbitrary topology with dynamic particles. Proc. CVPR, pp. 8287. Terzopoulos, D., Witkin, A., and Kass, M. 1988. Constraints on deformable models: Recovering 3D shape and nonrigid motions. Articial Intelligence, 36:91123.

You might also like