A UNIFIED ENERGY APPROACH FOR B-SPLINE SNAKE IN MEDICAL IMAGE SEGMENTATION

The parametric snake is one of the preferred approaches in feature extraction from images because of their simplicity and efficiency. However the method has also limitations. In this paper an explicit snake that represented using BSpline applied for image segmentation is considered. In this paper, we identify some of these problems and propose efficient solutions to get around them. The proposed method is inspired by classical snake from Kass with some adaption for parametric curve. The paper also proposes new definitions of energy terms in the model to bring the snake performance more robust and efficient for image segmentation. This energy term unify the edge based and region based energy derived from the image data. The main objective of developed work is to develop an automatic method to segment the anatomical organs from medical images which is very hard and tedious to be performed manually. After this segmentation, the anatomical object can be further measured and analyzed to diagnose the anomaly in that organ. The results have shown that the proposed method has been proven qualitatively successful in segmenting different types of medical images.


INTRODUCTION
Segmentation is a partitioning process of an image domain into non-overlapping connected regions that correspond to significant anatomical structures.Automated segmentation of medical images is a difficult task.Images are often noisy and usually contain more than a single anatomical structure with narrow distances between organ boundaries.In addition the organ boundaries may be diffuse.Although medical image segmentation has been an active field of research for several decades, there is no automatic process can be applied to all imaging modalities and anatomical structures [1], [2].The role of automatic segmentation is really critical in computer assisted diagnostic, since it helps the clinicians and doctors extract the different anatomical organ form medical images.This segmentation task is very difficult to be performed manually due to intra-and inter-operator segmentation results after segmentation.Furthermore it is tedious and time consuming for the operator.
In general, segmentation techniques can be classified in two main categories: (a) segmentation methods that allow users to explicitly specify the desired feature, and (b) algorithms where the specification is implicit.The first segmentation class considers the segmentation as areal-time interaction process between the user and the algorithm.The user is provided with the output and allowed to feed it back directly in order to modify the segmentation until he gets a satisfactory result.In the extreme case, this framework might be degenerated to be a manual segmentation with the user forcing the results he wants.
We propose our contribution in this paper, a new approach for BSpline based external energy that unify the classical, which is image gradient and region based energy.Image based energy helps our deformable model place the final contour in the desired object correctly, while region based reduce the model sensitivity to the initialization which is a real problem in classical deformable model.We also propose a simple unification scheme which can be done intuitively to perform this energy combination.This paper will be organized as follows, in section 2; we review the main concept of deformable model and its application on image segmentation.This presentation aimed to give a general description to reader a method that we follow to develop our approach.Specifically in section 3, we present in detail our proposed BSpline Snake; a type of deformable model which represent its contour explicitly using parametric contour.Section 4 will be dedicated to demonstrate the performance of the model in difference parameters and data type.Then, finally we draw the conclusion obtained from this work in section 5.

BASIC CONCEPT OF SNAKE
The basic idea segmentation using snake is to embed an initial contour (or surface in the three dimensional case) into the image, and then let it evolve while subject to various constraints related to the image and contour itself.In order to detect objects in that image, the contour has to stop its evolution on the boundary of the object of interest.The image segmentation task is then performed as a minimization of energy.
Although the term "snake" initially appeared in the classical work presented by Kass [3] in the late eighties, the idea of deforming a template for extracting image features dated back much farther, with the work of Fischler [4] who proposed spring-loaded templates, and Widrow [5] applied rubber mask technique.In image processing literatures, this "snake" are also known as: snakes, active contours or surfaces, balloons, deformable model or deformable contours or surfaces.An extensive review of the current research in this area can be find in [6].
In their classical work, Kass proposed an early kind of snake which represented the contour using a number of discrete points.Then, its behavior of the model was formulated as a total energy of a weighted linear combination of: internal energy caculated from the contour that imposes the regularity of the curve in segmentation; external energy that attracts the contour toward the significant features in the image; and some additional user energies constraints allowing operator to better interact to the model.Thus, the snake energy can be formulated as: and the segmentation result can be obtained from optimal curve parameters which is: So, regarding to the equation to be minimized, it is obvious that the performance and quality of segmentation result is strongly depend on the definition of snake's energy.Kass et. al. represents their snake in the simplest way to represent the model: a set of discrete points as snake elements (snaxels) ‫.))ݏ(ܥ(‬Using this representation, closed contours can be formed by connecting the last snaxel to the first one. Contour Energy.Applying discret points represesentation, the contour energy, can be approximated by accomodating the elasticity (represent length of the curve) and rigidity (represent the integral of the square of the curve along the contour), so: where the subscript ‫ݏ‬ denotes differentiation with respect to the curve parameter.The model behavior is controlled by constants ‫ݓ‬ ଵ and ‫ݓ‬ ଶ , respectively weighting the curve elasticity and rigidity.This energy definition easily can be discretized using finite different method Invalid source specified.as: This term will minimize the distance between the points in the snake, causing the shrinking during the optimization energy process in the absence of an image external energy.In a similar way, the rigidity term is discretized as: It was noted by William and Shah in [7] that the elasticity definition using finite differences discretization scheme is valid at the condition that model's snaxels are evenly spaced.In other cases, they proposed to define a continuity term that subtract the average distance of the snaxels.Otherwise the energy value will be larger for points which are farther apart.This constraint forces the points to be more evenly spaced, and avoids a possible contraction of the snake.
Image Energy.For this term, Kass proposed a weighted sum of the following energies terms to detect images feature: The most common image functional in this model is using the image intensity function ‫.ܫ‬This ‫ܧ‬ term will simply attract the contour to lower or higher intensity values in images depending on the ߙ value.Large positive values of α ୪୧୬ୣ tend to make the snake align itself with dark regions in the image, I(s), whereas large negative values of α ୪୧୬ୣ tend to make the snake align itself with bright regions in the image.
The edge energy that attract the contour towards high gradient values can be calculated as squared to narrow the edges gradient response.And similarly, large positive values of ߙ ௗ tend to make the snake align itself with sharp edges in the image whereas large negative values of ߙ ௗ make the snake avoid the edges.‫ܧ‬ ௧ is defined to find the terminations of line segments and corners.Kass proposed to use the curvature of iso-contours in a Gaussian smoothed image to attract the contours towards line termination.
Constraint energy is applied to interactively guide the snake towards or away from particular features.This energy helps the contour to overcome the initialization problem or the sensitivity to noise.A constraint energy was proposed for classical snake by allowing the user to attach springs between points of the contour and fix their position in the image plane.Kass [3] define an energy known as spring (to attract the snake to specified points) and volcanoes (to repulse from specified points) within the image.This energy is defined by: The spring term attracts contour point v ୧ to a point v ୧ in the image plane, with a constant α ୱ୮୰୧୬ as the spring constant.The active contour model is attracted or repelled by the spring depending on α ୱ୮୰୧୬ sign and value.The volcano term acts as a repulsion force between a point on the image at a distance ଵ ୰ ౠ from a point in the snake.The larger the value of r ୨ , the stronger the repulsion.
Optimization Scheme.As mentioned previously, image segmentation using snake can be formulated as a process of energy minimization that evolves the contour.This minimization controls the model deformation to reach the desired segmentation result.The term "snake" comes from the "slip and slide" movement of the contour during this minimization process.
Originally, Kass proposed a variation method to solve the minimization process after discretisation using finite element method.But this approach does not guarantee the global minimum solution and requires estimation of high offer derivative on the discrete data.Moreover again, Moreover, hard constraints, which are restriction on the range of v or its derivatives, cannot be directly enforced.Given a desired constraint term like a mean or minimum snaxel spacing, it can only be enforced by increasing the associated weighting term, which will force more effect on this constraint, but at the cost of other terms.
Many efforts were delivered afterward to solve this minimization problem.One of them was Greedy algorithms [8] which find the solution incrementally by choosing at each step the direction which is locally the most promising for final result, i.e. which provides the larger energy decrease.Amini proposed [9] also Dynamic Programming which ensures a globally optimal solution with respect to the search space, and numerical stability by moving the contour points on a discrete grid without any derivative numerical approximations.The optimization process can be viewed as a discrete multi-stage decision process and is solved by a time-delayed discrete dynamic programming algorithm.Dynamic programming bypasses local minima as it is embedding the minimization problem in a neighborhood related problem.
We presented in this section Kass proposition to extract the image feature from the image using deformable model.This scheme will be modified in explicit curve representation using BSpline.

BSPLINE SNAKE
This model deformable, represent the evolved curve (or surface) for image segmentation in an explicit parametric form.This representation allows a direct interaction and gives a compact representation for real-time implementation.It is widely known that, similiar to the point based representation; drawback of this model representation comes from its difficulty to adapt to topological changes (e.g.object splitting or merging) during model evolution.Parametric deformable models are usually too sensitive to their initial conditions because of the non convexity of the energy functional and the contraction force which arises from the internal energy term.
Our method is different form that which was proposed originally by Kass not only in term f model representation, but also in energy representation and also the optimization method.In general, we enhance the classical method by proposing a compact model representation and energy definition.

Representation
B-spline is often used as a representation of parametric deformable model.In this case, the deformable model is split into some segments by knot points [10]- [13].Each curve segment ‫ܥ‬ሺ‫ݐ‬ሻ = {‫ݔ‬ሺ‫ݐ‬ሻ, ‫})ݐ(ݕ‬ is approximated by a piecewise polynomial function, which is obtained by a linear combination of basis functions ߚ and a set of control points ‫ݒ‬ = ‫ݔ{‬ , ‫}ݕ‬ Then, a point-based deformable model can be analyzed like a special case of parametric curve representation where the basis functions are uniform translates of a B-spline of degree zero.Thus, a parametric approaches using smooth basis functions will tend to the point-based scheme as the number of basis functions increases.In general, however, representations using smooth basis functions require fewer parameters than point-based approaches and thus result in faster optimization algorithms [14].Moreover, such curve models have inherent regularity and hence do not require extra constraints to ensure smoothness [14], [15].
Both point-based and parametric snake represent the model in explicit way, hence it is easier to integrate a prior shape constraibt to the deformable midel.Moreover the user interaction can be accommodate straight forward by allowing the user to specify some points trough the desired contour evolution.But the inconvenient of this model lies on their less flexibility in accounting for topological changes during the evolution, but several efforts have been done to overcone this limitation.

Contour Energy
Similar to discrete point based snake, internal energy is responsible for ensuring the smoothness of the contour.Actually, Kass proposed a linear combination of the length of the contour and the integral of the square of the curvature along the contour.Thus in explicit contour, this energy can be defined as: where the second term ‫))ܚ(ߢ(‬ which is curvature on point ‫ݎ‬ሺ‫ݐ‬ሻ.This term is then can be simplified as: In case where the curve is parameterized in curvilinear abscissa, then ܿ can be represented as: In other case when knots in parameterized curve are not in the curvilinear abscissa, the contour energy can be modified as follows: Evolving the curve with such a term will force the curve knots to move on tangential direction to the curve, thus bringing it to the curvilinear abscissa position.

Image Energy
The image energy definition play the critical role overall snake performance since this terms determine which pertinence feature should be captured using the deformable model.This section will be dedicated to review some common image energy definition and then propose some modifications which can overcome the problem.We also present an integrative framework which unifies the gradient-based and region-based approaches in energy definition of BSpline snake.
The most common image energy applied for the snake is defined as the integral of the square of the gradient magnitude along the curve as the image energy.The main drawback widely known on using this energy is the lack of gradient direction.This information can be use to detect the edge, since at the boundary image gradient is usually perpendicular to the curve.This direction should be incorporated to the image energy to bring the snake more robust for image segmentation.
Edge based energy.For this snake we propose to apply an image energy defined as integral of scalar field derived from the gradient vector field.Mathematically, it can be formulated as follows: where k is the unit vector that ortogonal to the image plane, ݊ ሬԦ‫ܚ‬ denotes the unit normal to the curve at ‫ܚ‬ and ∇݂ሺrሻ is the gradient of the image ݂at the point ‫ܚ‬ሺtሻ.
Region based energy.This region based energy represents the statistical characteristics on a region in the contour and provide snake a boundary information thus very helpful when the contour is far away from the real contour to be detected.For this purpose we assume two regions in the images (which can be expanded in to more number) with different probability distributions.Each of these regions have different means and variances.We follow Staib's [14] formulation to determine the region like hood function: Where ℛ and ℛ′ denote the different regions in the curve and and ′ indicate the position inside or outside the region respectively.The energy defined in [14] will be maximum when ℛ = and ℛ′ = ′.Thus this energy can be reformulated as: where -‫ܥ‬ = + ‫‬ log൫ሺ݂ሺሻ|‫ݏ‬ ∈ ℛ′ሻ൯ ݀ ௌ∪ௌᇱ .‫ܥ‬ is independent from the position of the curve, so it can be removed from the cost function calculation.This simplification brings the regional based energy into new formulation: In the absence of prior knowledge of the probability distributions ሺ݂ሺሻ|‫ݏ‬ ∈ ℛሻ and ሺ݂ሺሻ|‫ݏ‬ ∈ ℛ′ሻ can be estimated from image ݂ as the image evolves and the current position of the contour can be assumed defined the region.
It should be noted as interesting property of this region energy definition that the extension of this definition in multi-valued and multi-channel images (e.g.color image) is is straightforward.
Unified energy.Both of these energies definition have their own strong points and weakness.The edge-based energy can give a good localization of the contour near the boundaries.Unfortunately, it has a small basin of attraction, thus requiring a good initialization near to the desired contour or applying a balloon force instead [16], [17].On the other hand, the region-based energy has a large basin of attraction and can converge even if explicit edges are not present [18].However, it does not give as good localization as the edge-based energy at the image boundaries.Motivated by the complementary features of these schemes we propose a unified form of image energy.This energy can be formulated as: where function parameter ߙ denotes the contribution of each energy in this bspline snake.This parameter alows us to tune the image energy regarding to the type and quality of the image we want to segment.For example in ultrasound imag, where the noise is very present and gradient will not be reliable we can set ߙ = 0, so the snake became purely use region based energy.For less noisy image (CT or MRI) it can be combines using setting ߙ value to 0.5 to make the same contribution between region and gradient based energy.

External Constraint Energy
Still inspired by Kass, we also integrate a user term constraint, where the user might specify a few points that should lie on the contour to be detected.We constrain the snake by adding an energy term which is the distance between these points and the corresponding closest points on the curve.
For this snake the constraint energy is given by: where ‫ܚ‬ ୡ,୧ are the introduced constraints in the BSpline snake.This approach can be interpreted form Kass model as an introduction of virtual springs that pulls the curve towards the desired points: One end of the spring is fixed to the constraint point while the other end slides on the curve.

Optimization Scheme
As mentioned previously, image segmentation is finally a total of stated energy minimization process that will place a regular contour in the edge of the object we want to detect.For our case, we do not require global optimum solution, since the initial contour can be provided interactively by user to obtain a rough initial contour near to the edge.Even though, a robust optimization scheme converge to the minimum solution in acceptable number of iteration is strongly desired, to make the algorithm run fast.
We propose to apply gradient descent method in this spline based segmentation technique.It is a first order optimization algorithm which seeks to find a local minimum solution of an energy function by taking step proportional to the negative of the estimated gradient (i.e.first order derivative) of the function at the current point.Hence, to perform this method we need absolutely the estimation of the first derivative of all the defined energy.The review of this gradient estimation is presented in this following part.
Partial derivative of internal energy.Differentiating the expression of ‫ܧ‬ ௧ ‫ܧ=‬ ௨௩ and simplifying further, we obtain the partial derivatives as a simple multidimensional filtering of the scaling function coefficients.Thus the derivative of ‫ܧ‬ ௧ can be computed as: where This multidimensional filtering is performed by assuming the periodic boundary conditions.The computational complexity is small, since the sum depends only on the coefficient sequence whose number is typically much lesser than the number of curve samples.Thus, the computational complexity can be reduced using that formulation.
Probability distribution function estimation.As mentioned in previous section, the evaluation of current region energy needs specification of probability distribution function.This measure can be estimated also from the image data in condition that the evolved snake places close to the detected boundary.In this snake, we apply the Gaussian distribution as density because it represents the data using few parameters which are mean and variance.This estimation require integrating the image and its square in the region bounded by .
Partial derivative of constraint energy.For implementation purpose, we assume that the optimal parameter ‫ݐ‬ ; ݅ = 0. .ܰ are known.Finally the definition of constraint energy: can be modified as: Using the characteristic of the scaling functions, we can limit the sum to the relevant indices we need to evaluate it only in certain number of points.We also resort to a two-step optimization where the snake is first evolved using the formulas for the derivatives with the current set points.
Curve's length and area.The computation of the internal energy also requires the estimation of the current length of the curve.We compute the length as a discrete approximation such as: And the area using Green theorem as: where qሺmሻ = ‫‬ φሺtሻφ ᇱ (t − m) ஶ ିஶ . It should be note that the area computed using this formulation is signed; and this sign can be use to determine the direction of the curve.

RESULT AND DISCUSSION
In this sub-section we will demonstrate qualitatively the performance of the proposed snake with different parameters affected in.We are interested in segmenting medical images from different modalities because it is very challenging due to low contrast and noise.We applied the method on CT scanner and MRI images as an example of clear image that easy to segment and echocardiograph images where a strong noise present in the image and make the segmentation task is very difficult to be performed.Figure 4 (a) shows initial contour by manual contouring, and Figure 4 (b) shows segmentation using only edge (gradient) based energy.The anatomical detail on upper part of heart can be captured since this region has a bright area, but in below part method trapped into area where there are locally high gradient due to the noises.Figure 4 (c) shows region based energy.The noisy problem can be solved but not for the anatomical detail in upper part.In Figure 4 (d), the result using combination between 75% region based and 25% edge based energies is shown.The advantage of both energy can be taken and method limitation can be solved, thus we obtain a better result.

CONCLUSION
We presented in this paper our contribution of a segmentation method based on explicit curve represented using BSpline with additional region based energy instead of purely gradient based one.Method is inspired by classical model proposed by Kass with modification in energy definition to obtain stable computation scheme.Validated qualitatively on several medical images, we can conclude that the integration of region based energy may help the model avoiding the local optimum solution due to the locally high gradient in noisy image.In other hand, gradient based energy is still useful to capture the desired detail on the segmented image and give a good result on clear images.
There are still some important remaining issues which one of them is on snake initialization.Even region based energy helps the method finding the minimum solution, but false solution might be reached by the method when the given initialization is very far desired optimum result.The developed method applied a manual contouring for initialization, and then proceeds by proposed BSpline snake.A rough segmentation using classical image processing method might be developed also to solve this problem.
Some future works on integrating knowledge using an a priori statistical model might be interesting.We believe that this integration is possible to be done and to make this snake more robust in segmenting the images.Although has been proven qualitatively successful in segmenting different types of medical images, further investigation on parameter setting and validation on specific anatomical organs need to be performed.These studies is highly required since -as stated previously-different images modality and different interesting anatomical organs need the different parameter setting.This setting might be different also for divers' case of computer assisted diagnostic applications for the reason of time constraint, clinical situation or tolerate error for specific case.

Figure 1 .
Figure 1.Comparison of segmentation result of a CT scan data.(a) initial contour; and segmentation result using (b) edge based; (c) region based region only; (d) combination between 50% region based and 50% edge based; integrating the region based energy allows the snake to avoid local minimum solution due to high gradient around the object and capture the detail in the image.

Figure 1 Figure 2 .Figure 3 .
Figure1demonstrates our proposed unified energy for BSpline deformable model for image segmentation.Original model applying only gradient based energy will be very sensitive to the present of local minimum energy in the image (noise, speckle or adjacent anatomical organs).In other hand, region based energy overcome the problem but it has the problem in capturing the object detail in the image.These problems can be solve by unifying both energy,

Figure 3 andFigure 4 .
Figure3and Figure4illustrate performance of the method to segment the anatomical objects in clear and noisy images.These figures also show how the energy unification could be trimmed intuitively.For practical case, to segment a clear image such as MRI or CT images, we can set a high proportion of image based energy.In other hand, for noisy image such as ultrasound and echocardiograph images, region based energy should be set in higher priority to reduce the noise sensitivity.But in all of case, unification of both energies will enhance the