An Active Contour Model Based on Splines And
An Active Contour Model Based on Splines And
Abstract—In this paper we present a novel method for the The paper is organized as follows: In the first part, we review
segmentation of scintigraphic images in order to detect the two the simplified diffusion snake as introduced in [1]. Then we
ventricles of the heart. The method is based on the active contour show how to integrate the separating forces. Finally we will
model using a region based approach and parametric give experimental results of our method in separating the two
representation of the contour. The novel aspect of the method is
ventricles of the heart, and compare our approach with one of
that we have integrated separating forces between the two
ventricles in the active contour model. The method has been the most widely used active contour approaches, the Chan and
applied on several scintigraphic images and compared to “active Vese model [2].
contour without edges” model. The results are satisfactory.
II. ACTIVE CONTOUR BASED ON SPLINES
The active contour model, or snake, is defined as an energy
I. INTRODUCTION minimizing functional, where the snake's energy depends on its
The need in the medical field of knowing how certain organs shape and location within the image. The goal of the active
of the body work, especially to diagnose and determine certain contour is to extract the boundaries of homogeneous regions
heart diseases, leads to scintigraphy. Scintigraphic imaging that constitute an image.
techniques can give images of any organ of the body. The organ The two most used active contours approaches are: Edge
to be investigated is injected by a radioactive solution. A special based segmentation approaches [3] and region based
camera measures the radiation emitted by a certain organ. One segmentation approaches [4, 5, 6]. Edge based active contour
application of these techniques is to capture the geometry of the approaches are based on gradient information to deform the
two heart ventricles. curve towards the edges of objects within an image. Region
Usually scintigraphic images are blurred with noise due to based active contours approaches include terms describing the
artifacts and noise from the gamma camera. As the intensity different regions by statistical spatial features, like mean and
contrast between the two ventricles and the myocardium is low, variance of color values. In our work we use a region based
the boundaries of the ventricles are often missing in certain active contour approach, because scintigraphic images are often
locations. Even for skilled personal the exact boundary blurred with noise, and edge based segmentation is known for
identification is difficult. Hence segmentation techniques can its sensitivity to noise.
help us to recognize the two ventricles.
A. Simplified diffusion snake
The aim of segmentation is to distinguish objects from
background to achieve homogeneous regions. It is widely used Our work is derived from the probably most widely studied
for medical image classification. region based Active Contour approach, which is that of
In this paper we will present a new approach to segment the Mumford and Shah [7]. Mumford and Shah proposed to
ventricles based on active contours. While existing active approximate a given input image f with a piecewise smooth
contour approaches can segment the heart in one “homogenous” function by minimizing the following functional:
region, most of them fail in determining the intermediate
E (u, C ) = (f − u )2 dx + λ2
boundary, which separates the two ventricles. 1 1 2
∇u dx + v C , (1)
For the evolution process of two active contours, centered on 2 Ω 2 Ω −C
the right and left ventricle, we demonstrate how by integrating
novel separating forces the segmentation can be efficiently where f is the input image, u is the segmented image, C the
improved leading to clearly separated ventricles. segmenting contour, and , v are regularization parameters.
International Conference on Machine Intelligence, Tozeur – Tunisia, November 5-7, 2005 418
dC (s, t ) dE (u , C )
Constraining the segmented image to constant regions, u(x) =
ui, for x ∈ Ri , Ri ∈ Ω , the Munford-Shah functional (1) dt
=−
dC
[ ]
= e + (s, t ) − e − (s, t ) ⋅ n(s, t ) − vC ′′(s, t )
simplifies to the cartoon model as: ∀s. (6)
In order to obtain an evolution rule for the control points of
E (u , C ) = (f − ui ) dx + v Cs2 ds. (2)
1 2 1
the spline C we insert the spline curve (3) in equation (6) to
2 i
R
i 0
derive the following evolution equation for the control points:
dp i (t ) d 2 Bi (s )
As representation for the boundary function C we choose a
Bi (s ) = [e + (s, t ) − e − (s, t )]⋅ n(s, t ) + v p i (t )
N N
spline representation. .
i =1 dt i =1 ds 2
B. Spline representation (7)
The two common ways to represent the contour function are
parametric by spline curves, or implicit by the zero level set of a
D. Implementation
functional: Φ → ℜ , i.e. the intersection of Φ on the zero
Discretizing equation (7) with a set of nodes si along the
plane, see [8].
contour gives us a set of linear differential equations. The
In [2] and [9] T.F. Chan and L.A. Vese explain the
solution gives the temporal evolution for the coordinates of each
implementation of the Mumford-Shah functional using level
control point (xm, ym):
sets as a representation for the contours.
In our work, we choose a parametric representation based on
piecewise polynomial splines. This representation is especially
suitable for the integration of the separating forces, which are
dxm (t ) N −1
dt
= ( ) [( i
)
B mi es+ − es−i ⋅ n x + v(xi −1 − 2 xi + xi +1 ) , (8) ]
i =1
directly attached onto the control points of the splines.
For the experiments we used the closed, uniform, quadratic
( ) [(e ) ]
and periodic B-spline curve, for more detail see [10] and [11].
dym (t ) N −1
Using this spline approximation the contour C has the following = B mi
+
si
− es−i ⋅ n y + v( yi −1 − 2 yi + yi +1 ) . (9)
form: dt i =1
C : [0,1] → Ω, C (s ) = p n Bn (s ),
N
(3) The matrix B contains the spline basis functions evaluated at
n =1 the nodes si : Bi,j =Bi (sj ), ( si corresponds to the maximum of
Bi). Notice, that the matrix B is cyclic and tridiagonal.
where Bn are the uniform, periodic, quadratic B-spline basis The first term in the set of equations (8) and (9) maximizes
functions and pn = (xn, yn)T denote the control points. the homogeneity in the adjoining regions as measured by the
energy densities (5). The homogeneity in the adjoining regions
C. Curve Evolution forces the contour to recognize the boundaries of the object. The
We minimize the energies of the simplified diffusion snake second term smoothes the contour and enforces an equidistant
(2), using gradient descent with respect to both, the segmenting spacing between successive control points.
contour C and the segmented image u, what leads to the In our implementation we need at the beginning the
following Euler-Lagrange equation: initialization of two set of control points (each set corresponds
to one ventricle), then we interpolate them by the spline
dE
dC
[ ]
= e − (s ) − e + (s ) ⋅ n(s ) − vC ′′(s ) = 0 ∀s ∈ [0,1], (4)
contour. After that, we implement the evolution of this curve as
explained in equations (8) and (9).
Note, that with each new iteration, we have first to calculate
the new control points (the previous points + the evolution) and
where n is the outer normal vector on the contour for each then calculate new values for e+ and e- depending on the new
control point. The terms e+ and e- denote the energy density splines. These two steps are iterated until the difference between
outside and inside the contour C(s) respectively, see [12], the subsequence evolutions is certainly small. For equation (5)
defined by: we take the difference between inside mean and value of the
pixel lying on the inside pointing unit normal of the control; and
+
e − = ( f − u )2 . (5) outside respectively.
E. Discussion
We solve the minimization problem by gradient descent. The Applying the described actives contours to sample images we
result is summarized in equation (6): realize that the results depend on the initialization: when we
have a good initialization the active contour recognizes the two
ventricles. With random initialization the results were not
International Conference on Machine Intelligence, Tozeur – Tunisia, November 5-7, 2005 419
acceptable as the two ventricles are often not separated, so that Fj is the force from all control points i onto the control
illustrated in figure 1 and figure 2. point j , i ∈ C1 and j ∈ C2 .
In the next section we will integrate separating forces in the The variance σ controls the region of influence of the forces.
curve evolution in order to prevent this effect.
Furthermore, p j − pi 2
is the Euclidean distance between
two controls points belonging to different curves.
Adding the forces (10) and (11) into equations (8) and (9)
leads to the following temporal evolution equation for the
coordinates of each control point (xm, ym):
dxm (t ) N −1
dt
= ( ) [(e
B mi
+
si
) ]
− e s−i ⋅ n x + v(xi −1 − 2 xi + xi +1 ) − h ⋅ Fi ⋅ n x , (12)
i =1
Figure 1. Result of segmentation using Active Contour based on Splines.
( ) [(e ) ]
False initialisation leads to poor final results: (left) original image, (middle)
dy m (t ) N −1
evolution of spline curves, (right) the two curves merge before the splines find = B mi
+
si
− es−i ⋅ n y + v( yi −1 − 2 yi + yi +1 ) − h ⋅ Fi ⋅ n y . (13)
the true boundaries. dt i =1
2
N pi − p j
Fi = exp − 2
, (10)
j =1 σ
so that Fi is the force from all control points j onto the control
point i , i ∈ C1 and j ∈ C2 . Figure 3. Results using integration of Active Contours based on Splines and
forces between the regions of interest: (left) the initialization of spline,
And, vice versa: (middle) the evolution of spline curves, (right) the segmented images.