Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Kluwer - Handbook of Biomedical Image Analysis Vol

10.58 Mб

Improving the Initialization, Convergence, and Memory Utilization


In shape models prior knowledge of the global structure is included using a parameterized template of a specific structure. Free form deformable templates, like snakes, have no explicit global structures as the prior knowledge includes basically local continuity and smoothness constraints.

Considering as a functional energy minimization process, the snake model consists of an initial model which is carried to the desired object boundary by forces described by the Euler–Lagrange equations. In a different way, the snake evolution can be formulated by local deformations to reshape dynamically the initial model in a process which do not apply minimization techniques explicitly. The former is the formulation used by Kass et al. [42] in the original snake model. It will be described next.

7.2.1 Original Model

Geometrically, a snake is a parametric contour c, here assumed to be closed, embedded in a domain D !2:

c : [0, 1] → D !2, c (s) = (x (s) , y (s)) .


We can define a deformable model as a space of admissible deformations (contours) Ad and a functional E to be minimized [18]. This functional represents the energy of the model and has the form:




E : Ad → !,









E(c) = E1(c(s)) + E2(c(s)) ,






















c (s)


+ w2

c (s)




















= P(c(s)) ds









are the internal and external energy terms, respectively. In the internal energy expression, the parameter w1 (tension) gives the snake the behavior of resisting the stretch and w2 (rigidity) makes the snake less flexible and smoother. These parameters can be constants or dependent on s [44]. Each prime denotes a degree of differentiation with respect to the parameter s.


Giraldi, Rodrigues, Marturelli, and Silva

In the external energy E2, P is a potential related with the features we seek. For edge detection in a grayscale image a possible definition is [6]:

P = − I 2 ,


where I is the image intensity.

The process of minimizing the functional given in (7.2) can be viewed from a dynamic point of view by using the Lagrangian mechanics. This leads to dynamic deformable models that unify the description of shape and motion. In these

models the deformable contour is viewed as a time-varying curve:


c (s, t) = (x (s, t) , y (s, t)) ,


with a mass density µ and a damping density γ .

In this formulation, the Lagrange equations of motion for a snake with potential energy given by expression (7.2) have the form [44, 50]:



+ γ


+ w1c (s) + w2c (s) + P(c(s)) = 0,




where the first two terms represent the inertial and damping forces while the third and fourth terms give the forces related to the internal energy (Eq. (7.2)). The last term in Eq. (7.7) is the external force due to the external potential P in expression (7.5). Equilibrium is achieved when the internal and external forces balance and the contour comes to rest; which implies that:

∂c/∂t = 2c/∂t2 = 0.


In general, Eq. (7.7) does not have analytical solutions. Thus, numerical methods must be considered. Henceforth, in order to solve this equation, for an initial closed contour, we have to discretize the snake in space and time by using finite differences or finite elements methods, each of them with trade-offs between performance and numerical efficiency [19,44]. We also have to use a termination condition, based on Eq. (7.8), to stop the numerical interactions [44].

It is important to observe that the space Ad in expression (7.2) does not include contours with more than one connected component. So the classical snake model does not incorporate topological changes of the contour c during its evolution given by Eq. (7.7). Besides, the contraction force generated by the third and fourth terms in this equation is shape dependent and makes the stabilization of the snake too dependent on the parameters w1 and w2. While in theory it is possible to compute a pair of proper weights of the internal energy for each point, it is very difficult in practice [79].

Improving the Initialization, Convergence, and Memory Utilization


For boundary extraction and segmentation tasks, in general we use a simplified version of Eq. (7.7) in which we take µ = 0. Hence, the model has no inertial forces, which avoids oscillations near the equilibrium point [31].

Snake models can be extended to 3D, generating deformable surface models. The traditional mathematical description for these models is given next.

7.2.2 Deformable Surfaces

Let us consider the following balloon-like model for closed surfaces [19]:

v : !+ × [0, 1] × [0, 1] → !3,

v(t, r, s) = (v1(t, r, s) , v2 (t, r, s) , v3(t, r, s)) ,






+ 2ω11



+ ω02


= F(v) − kn(v) ,








+ ω20























Initial estimation : v(0, r, s) = v0(r, s),

where n(v) is the normal (unitary) field over the surface v, F is the image force field (may be normalized), and k is a force scale factor. The parameters ωij control the smoothing and flexibility of the model.

By using the internal pressure force (kn(v)), the model behaves like a balloon, which is inflated, passing over regions in which the external force is too weak. Consequently, the model becomes less sensitive to initialization, which is an advantage over more traditional active models [6, 18].

If finite differences is used to numerically solve Eq. (7.9), the continuous surface v(r, s) is discretized, generating a polygonal mesh. During the mesh evolution, self-intersections must be avoided.

This problem has been efficiently addressed in the context of discrete deformable models. Differently from the above formulation, in which the mesh arises due to a discretization of the continuous model (defined by Eq. (7.9)), discrete surface models start from a two-dimensional mesh. The mesh nodes are updated by a system of forces that resembles a discrete dynamical system. The T-surfaces model is such a system, which is fundamental for our work. It is summarized next.

7.2.3 T-Surfaces

The T-surfaces approach is composed of three components [49]: (1) a tetrahedral decomposition (CF-triangulation) of the image domain D !3; (2) a particle


Giraldi, Rodrigues, Marturelli, and Silva

model of the deformable surface; and (3) a characteristic function χ defined on the grid nodes which distinguishes the interior (Int(S )) from the exterior (Ext(S)) of a surface S:

χ : D !3 → {0, 1}


where χ ( p) = 1 if p Int(S) and χ ( p) = 0, otherwise p is a node of the grid. Following the classical nomenclature [1], a tetrahedron (also called a sim-

plex) σ is a transverse one if the characteristic function χ in Eq. (7.10) changes its value in σ . Analogously, this follows for an edge.

In the framework composed of both the simplicial decomposition and the characteristic function, the reparameterization of a surface is done by [49]:

(1) computing the intersection points of the surface with the grid; (2) finding the set of transverse tetrahedra (combinatorial manifold); (3) choosing an intersection point, for each transverse edge; and (4) connecting the selected points.

In this reparameterization process, the transverse simplices play a central role. Given such a simplex, we choose in each transverse edge an intersection point to generate the new surface patch. In general, we will obtain three or four transverse edges in each transverse tetrahedron (Fig. 7.1). The former gives a triangular patch and the latter defines two triangles. So, at the end of step (4), a triangular mesh is obtained. Each triangle is called a triangular element [49].

Taking a 2D example, let us consider the characteristic functions (χ1 and χ2) relative to the two contours pictured in Fig. 7.2. The functions are defined on the vertices of a CF-triangulation of the plane. The vertices marked are those where max{χ1, χ2} = 1. Observe that they are enclosed by a merge of the contours. This merge can be approximated by a curve belonging to the region obtained by tracing the transverse triangles. The same would be true for more than two contours (and obviously for only one).

After the reparameterization process, a suitable evolution scheme must be applied. Dynamically, a T-surfaces can be seen as a closed elastic mesh [49].

Figure 7.1: Basic types of intersections between a plane and a simplex in 3D.

Improving the Initialization, Convergence, and Memory Utilization


Figure 7.2: Two snakes colliding with the inside grid nodes and snaxels marked.

Each mesh node is called a node element and each pair of connected nodes vi, v j is called a model element.

The node elements are linked by springs, whose natural length we set to

zero. Hence, a tensile force can be defined by:





where S



r ,


−→ =



−→ij =




c is a scale factor and rij = vi v j is the length of the corresponding model element. The model also has a normal force which can be weighted as follows [49]:

Fi = k(signi)ni,


where ni is the normal vector at node i, k is a scale factor, and signi = +1 if

I(vi) > T and signi = −1 otherwise (T is a threshold of the image I). This force is used to push the model toward image edges until it is opposed by external image forces.

The forces defined by Eqs. (7.11) and (7.12) are internal forces. The external force is defined as a function of the image data, according to the interested features. Several different approaches have been adopted according to the application [34, 77]. In our case, it can be defined as follows:

image :: force :: fit = −γi P, P = I 2 .


The evolution of the surface is controlled by the following dynamical system:


= i


−→ +



+ −→




v(t+ t)



hi αi t







where hi is an evolution step.

During the T-surfaces evolution, some grid nodes become interior to a surface. Such nodes are called burnt nodes and its identification is required by the update of the characteristic function [49]. To deal with self-intersections, the T-surfaces model incorporates an entropy condition: Once a node is burnt it


Giraldi, Rodrigues, Marturelli, and Silva

stays burnt. A termination condition is set based on the number of deformation steps in which a simplex has remained a transverse one.

7.2.4 Level Sets

It will be useful to review some details of level sets, which is the implicit formulation presented in [46]. The main idea of this method is to represent the deformable surface (or curve) as a level set {x !3|G(x) = 0} of an embedding function:

G : !3 × !+ → !,


such that the deformable surface (also called front in this formulation), at t = 0, is given by a surface S:

S (t = 0) = +x !3|G (x, t = 0) = 0, .


The next step is to find an Eulerian formulation for the front evolution. Following Sethian [46], let us suppose that the front evolves in the normal direction

−→ −→

with velocity F , where F may be a function of the curvature, normal direction, etc.

We need an equation for the evolution of G(x, t), considering that the surface

S is the level set given by:


S(t) = +x !3|G(x, t) = 0, .


Let us take a point x(t), t !+, of the propagating front S. From its implicit definition given above, we have:

G (x (t) , t) = 0.


Now, we can use the chain rule to compute the time derivative of this expression:

Gt + F | G| = 0,



where F = F is called the speed function. An initial condition G(x, t = 0) is required. A straightforward (and expensive) technique to define this function is to compute a signed-distance function as follows:

G(x, t = 0) = ±d,


Improving the Initialization, Convergence, and Memory Utilization


where d is the distance from x to the surface S(x, t = 0) and the signal indicates if the point is interior (−) or exterior (+) to the initial front.

Finite difference schemes, based on a uniform grid, can be used to solve Eq. (7.19). The same entropy condition of T-surfaces (once a grid node is burnt it stays burnt) is incorporated in order to drive the model to the desired solution (in fact, T-surfaces was inspired on the level sets model [50]).

In this higher dimensional formulation, topological changes can be efficiently implemented. Numerical schemes are stable, and the model is general in the sense that the same formulation holds for 2D and 3D, as well as for merge and splits. Besides, the surface geometry is easily computed. For example, the front normal and curvature are given by:

−→ =



= ·

G(x, t)





G(x, t) ,



G(x, t)













respectively, where the gradient and the divergent ( ·) are computed with respect to x.

7.3Initializing Traditional Deformable Models

In the area of deformable models, the definition of the initial estimation (see Eq. (7.9)) from which we can start the model evolution (the initialization step) is a difficult and important task. Problems associated with fitting the model to data could be reduced if a better start point for the search were available. In this section, we show a set of methods used to find the initial curve (or surface).

We start with methods that use image statistics and morphological techniques, and later we present modern approaches, such as neural nets.

7.3.1 Region-Based Approaches

The simplest way to initializing deformable models is through a preprocessing step in which the structures of interest are enhanced.

This can be done by image statistics extracted by image histograms or pattern recognition techniques [69] (see [39] for a recent review). These statistics can be represented by a mean µ and variance σ of the image field I or any other field


Giraldi, Rodrigues, Marturelli, and Silva

Figure 7.3: Original grayscale image of human’s torso.

defined over the image domain (fuzzy fields [33, 76], for example). The aim is to find statistical representation of the objects, which means:

p O = |I ( p) − µ| ≤ kσ,


where k is an used defined parameter [49].

In some applications, a threshold T could be enough to characterize the object(s). Iterative and entropy methods can be obtained by simple inspection [40].

For an illustrative example, Fig. 7.3 shows an image of a cross section slice of a human’s torso, where we can see several interesting regions such as arteries, bones, and lungs (the two largest central black regions).

Suppose we are interested in extracting the boundary of the right lung. First of all, we should isolate, in each slice, the region of interest.

Applying Eq. (7.22) with a threshold, e.g. 30, we have as output the result pictured in Fig. 7.4(a). Thus, an isoline extraction method can be used to get a rough approximation of the target boundary. Figure 7.4( b) shows the obtained curve over the original data.

We can observe that the curve is not smooth, there are protrusions and concavities due to inhomogeneities of the image field. Besides, some regions of interest may be merged (or even slit) after binarization. Such difficulties



Figure 7.4: (a) Result of applying a threshold T = 30 over image of Fig. 7.3.

(b) Initialization through isoline extraction.

Improving the Initialization, Convergence, and Memory Utilization


arise even when the images are preprocessed with more robust segmentation approaches, such as image foresting transformation [23] or other fuzzy techniques [70, 76]. These problems make threshold-based methods not very adequate for deformable models initialization.

In the following section, we discuss an approach to improve the automatic detection of an initial curve.

7.3.2 Mathematical Morphology for Initialization

The use of mathematical morphology to initialize deformable models is a subject with few references in the literature [59, 76].

For the particular case of medical images, the general idea is to isolate objects of interest (such as lungs, arteries, heart, bones, etc.) in the scene and to work with them individually, avoiding neighboring interference of other objects, noise, spurious artifacts, or background.

Mathematical morphology is a known set of mathematical tools used in digital image processing area to perform linear transformations on the shapes of images’s regions. There are two basic morphological operations: erosion and dilation. They will be defined next to make this text self-contained.

Let us take the image X and a template B, the structuring element. They will be represented as sets in two-dimensional Euclidean space. Let Bx denote the translation of B so that its origin is located at x. Then the erosion of X by B is defined as the set of all points x such that Bx is included in X, that is,

erosion : X # B = {x : Bx X}.


Similarly, the dilation of X by B is defined as the set of all points x such that Bx hits X, that is, they have a nonempty intersection:

dilation : X B = {x : Bx X = φ}.


These two operations are the base of all more complex transformations in mathematical morphology. For example, we can use an opening which consists of an erosion followed by a dilation of the result. This operation allows one to disconnect two different regions for treating them separately. The dual of opening is the close operation, which consists of an erosion over the dilation’s result. The effect of closing an image is rightly the opposite of opening: It connects weak separated regions (see [40] for a review of other useful operations).


Giraldi, Rodrigues, Marturelli, and Silva





Figure 7.5: (a) Edge map after using the canny algorithm in the image of Fig. 7.3. ( b) Erosion result over the Canny algorithm output. (c) Isolated region of interest. (d) Final result after dilation.

In this section, we are interested in applying morphological chains (sequence of a morphological operations) techniques to isolate specific regions in medical images. These extracted regions will be used for initializing deformable models.

We begin with a grayscale image such as in Fig. 7.3. Firstly, an edge detection filter is applied. The Canny edge detector was used [9], despite the fact that there are many other possibilities [13, 35, 40]. Figure 7.5(a) gives the result of applying the Canny methodology over the image in Fig. 7.3.

In Fig. 7.5(a) note that the two white predominant regions at the center of the image are the two lungs, which are the regions of interest. For convenience, this image was inverted with regard to its black–white pixels before initializing the morphological process. In this case, when applying the erosion operation (Eq. (7.23)) over the image in Fig. 7.5(a), we eliminate artifacts, weak edges, and separate weak connected regions. The net effect is to attenuate or eliminate highfrequency components. In the example of Fig. 7.5(a), we used a cross-structuring element. The result can be seen in Fig. 7.5( b).

Now, the two bigger regions are detached from the other ones, and we can separate and treat them individually. Figure 7.5(c) shows this result.

To restore the original size of the lung, we can apply the dilation operation (Eq. (7.24)). The result can be seen in Fig. 7.5(d).

Finally, an algorithm for isoline extraction gives the polygonal curve pictured in Fig. 7.5(d). This curve is an approximation of the desired boundary. It can be used as the initial curve for a deformable model.