<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://en.formulasearchengine.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=109.154.36.13</id>
	<title>formulasearchengine - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://en.formulasearchengine.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=109.154.36.13"/>
	<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/wiki/Special:Contributions/109.154.36.13"/>
	<updated>2026-05-02T04:34:38Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.0-wmf.28</generator>
	<entry>
		<id>https://en.formulasearchengine.com/index.php?title=Autoregressive_fractionally_integrated_moving_average&amp;diff=17658</id>
		<title>Autoregressive fractionally integrated moving average</title>
		<link rel="alternate" type="text/html" href="https://en.formulasearchengine.com/index.php?title=Autoregressive_fractionally_integrated_moving_average&amp;diff=17658"/>
		<updated>2013-11-06T18:44:31Z</updated>

		<summary type="html">&lt;p&gt;109.154.36.13: revert to last version by Duoduoduo&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;Active contour model&#039;&#039;&#039;, also called &#039;&#039;&#039;snakes&#039;&#039;&#039;, is a framework for delineating an object outline from a possibly [[image noise|noisy]] 2D [[image]].&lt;br /&gt;
&lt;br /&gt;
This framework attempts to [[graph cuts in computer vision|minimize an energy]] associated to the current contour as a sum of an internal and external energy:&lt;br /&gt;
&lt;br /&gt;
*The &#039;&#039;external energy&#039;&#039; is supposed to be minimal when the snake is at the object boundary position. The most straightforward approach consists in giving low values when the regularized [[gradient]] around the contour position reaches its peak value.&lt;br /&gt;
*The &#039;&#039;internal energy&#039;&#039; is supposed to be minimal when the snake has a shape which is supposed to be relevant considering the [[shape]] of the sought object. The most straightforward approach grants high energy to elongated contours (elastic force) and to bended/high [[curvature]] contours (rigid force), considering the shape should be as regular and smooth as possible.&lt;br /&gt;
&lt;br /&gt;
The snakes model is popular in [[computer vision]], and led to several developments in 2D and 3D. In two dimensions, the [[active shape model]] represents a discrete version of this approach, taking advantage of the [[point distribution model]] to restrict the shape range to an explicit domain learned from a training set.&lt;br /&gt;
&lt;br /&gt;
[[File:Snake-contour-example.jpg|thumb|500px|Snakes – active deformable models]]&lt;br /&gt;
&lt;br /&gt;
==Introduction==&lt;br /&gt;
&lt;br /&gt;
Snake is an energy minimizing, deformable [[Spline (mathematics)|spline]] influenced by constraint  and image forces that pull it towards object contours.  Snakes are greatly used in applications like object tracking, shape recognition, segmentation, edge detection, stereo matching. Snakes may be understood as a special case of general technique of matching a deformable model to an image by means of energy minimization.&amp;lt;ref&amp;gt;Snakes: Active Contour Models, M Kass, A Witkin, D Terzopoulos, http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.124.5318&amp;amp;rep=rep1&amp;amp;type=pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
Snake is an “active” model as it always minimizes its energy functional and therefore exhibits dynamic behavior.&lt;br /&gt;
&lt;br /&gt;
A simple elastic snake is thus defined by &lt;br /&gt;
*a set of n points&lt;br /&gt;
*an internal elastic energy term&lt;br /&gt;
*an external edge based energy term&lt;br /&gt;
 &lt;br /&gt;
One may visualize the snake as a rubber band of arbitrary shape that is deforming with time trying to get as close as possible to the object contour. Snakes do not solve the entire problem of finding contours in images, but rather, they depend on other mechanisms like interaction with a user, interaction with some higher level image understanding process, or information from image data adjacent in time or space. In general, Snake is placed near the object contour. It will dynamically move towards object contour by minimizing its energy iteratively.&lt;br /&gt;
&lt;br /&gt;
==Energy function==&lt;br /&gt;
&lt;br /&gt;
In Snakes, we use the technique of matching a deformable model to an image by means of energy minimization. A snake initialized near the target gets refined iteratively and is attracted towards the salient contour. A snake in the image can be represented as a set of &#039;&#039;n&#039;&#039; points.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; \mathbf v_i=(x_i,y_i) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;i=0 \ldots n-1 &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We can write its energy function as&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E_{snake}^*=\int\limits_0^1E_{snake}(\mathbf{v}(s))\,ds=\int\limits_0^1 ( E_{internal}(\mathbf{v}(s))+E_{image}(\mathbf{v}(s))+E_{con}(\mathbf{v}(s)) )\,ds&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{external}=E_{image}+E_{con}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt;E_{internal} &amp;lt;/math&amp;gt; represents the internal energy of the spline (snake) due to bending, &amp;lt;math&amp;gt; E_{image} &amp;lt;/math&amp;gt; denotes the image forces acting on spline and &amp;lt;math&amp;gt; E_{con} &amp;lt;/math&amp;gt; serves as external constraint forces introduced by user.  The combination of &amp;lt;math&amp;gt; E_{image} &amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt; E_{con} &amp;lt;/math&amp;gt; can be represented as &amp;lt;math&amp;gt; E_{external} &amp;lt;/math&amp;gt;, that denote the external energy acting on the spline.&lt;br /&gt;
&lt;br /&gt;
===Internal energy===&lt;br /&gt;
&lt;br /&gt;
Internal Energy of the snake is &lt;br /&gt;
&amp;lt;math&amp;gt;E_{internal}=E_{cont}+E_{curv}&amp;lt;/math&amp;gt; &amp;lt;ref&amp;gt;Dr. George Bebis,University of Nevada,http://www.cse.unr.edu/~bebis/CS791E/Notes/DeformableContours.pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where &amp;lt;math&amp;gt; E_{cont} &amp;lt;/math&amp;gt; denotes the energy of the snake contour and &amp;lt;math&amp;gt; E_{curv} &amp;lt;/math&amp;gt; denotes the energy of the spline curvature.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{internal}=(\alpha\,\!(s)\left | \mathbf{v}_s(s) \right \vert^2 + \beta\,\!(s)\left | \mathbf{v}_{ss}(s) \right \vert ^2)/2 &amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;=\bigg(\alpha\,\!(s) \left \| \frac{d\bar v}{ds}(s) \right \Vert^2 + \beta\,\!(s) \left \| \frac{d^2\bar v}{ds^2}(s) \right \Vert ^2 \bigg) /2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first-order term makes the snake act like a membrane and second-order term makes it act like a thin plate. Large values of &amp;lt;math&amp;gt; \alpha (s) &amp;lt;/math&amp;gt; will increase the internal energy of the snake as it stretches more and more, whereas small values of &amp;lt;math&amp;gt; \alpha (s) &amp;lt;/math&amp;gt; will make the energy function insensitive to the amount of stretch. Similarly, large values of &amp;lt;math&amp;gt; \beta (s) &amp;lt;/math&amp;gt; will increase the internal energy of the snake as it develops more curves, whereas small values of &amp;lt;math&amp;gt; \beta (s) &amp;lt;/math&amp;gt; will make the energy function insensitive to curves in the snake. Smaller values of both &amp;lt;math&amp;gt; \alpha (s) &amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt; \beta (s) &amp;lt;/math&amp;gt; will place fewer constraints on the size and shape of the snake.&lt;br /&gt;
&lt;br /&gt;
===Image forces===&lt;br /&gt;
&lt;br /&gt;
Further, &amp;lt;math&amp;gt; E_{image} &amp;lt;/math&amp;gt; has three components:&lt;br /&gt;
* Lines&lt;br /&gt;
* Edges&lt;br /&gt;
* Terminations&lt;br /&gt;
&lt;br /&gt;
The energies can be represented as follows:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{image}=w_{line}E_{line}+w_{edge}E_{edge}+w_{term}E_{term}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Adjusting the weights in the image will determine salient features in the image which will be considered by the snake.&lt;br /&gt;
&lt;br /&gt;
====Line functional====&lt;br /&gt;
&lt;br /&gt;
A line functional is nothing but the intensity of the image, which can be represented as&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{line}= I(x,y)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Depending on the sign of &amp;lt;math&amp;gt;w_{line}&amp;lt;/math&amp;gt;, the line will be attracted to either dark lines or light lines.&lt;br /&gt;
&lt;br /&gt;
====Edge functional====&lt;br /&gt;
&lt;br /&gt;
=====Image gradient=====&lt;br /&gt;
Edges in the image can be found by the following energy function which will make the snake attract towards contours with large image gradients.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{edge}=-\left | \nabla I(x,y)\right \vert ^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Scale space=====&lt;br /&gt;
&lt;br /&gt;
It is rather common that a snake started far from the object converges to the desired object contour. If a part of the snake finds a low energy feature, it pulls the other parts of the snake to continue to the contour. Scale Space continuation can be used in order to achieve desired results. One can allow the snake to come to equilibrium on a blurry energy edge functional and reduce the blurring as the calculation progresses. The energy functional is&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{edge}=-\left | G_{\sigma} * \nabla ^2 I \right \vert ^2&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where &amp;lt;math&amp;gt; G_{\sigma} &amp;lt;/math&amp;gt; is a Gaussian standard deviation &amp;lt;math&amp;gt; \sigma &amp;lt;/math&amp;gt; minima of this functional lie on [[Zero crossing|zero-crossings]] of&lt;br /&gt;
&amp;lt;math&amp;gt; G_{\sigma} \nabla ^2 I &amp;lt;/math&amp;gt; which define edges in [[Marr-Hildreth algorithm|Marr-Hildreth]] Theory. Thus the snake gets attracted towards zero-crossing constrained by its own smoothness.&lt;br /&gt;
&lt;br /&gt;
====Termination functional====&lt;br /&gt;
&lt;br /&gt;
Curvature of level lines in a slightly smoothed image is used to detect corners and terminations in an image. Let &amp;lt;math&amp;gt; C(x,y)= G_{\sigma}*I(x,y) &amp;lt;/math&amp;gt; be a slightly smoothed version of the image.Let &amp;lt;math&amp;gt; \theta = \arctan ( \frac {C_y}{C_x})&amp;lt;/math&amp;gt; be the gradient angle.&lt;br /&gt;
&lt;br /&gt;
And let&lt;br /&gt;
&amp;lt;math&amp;gt; \mathbf n = (\cos \theta,\sin \theta)&amp;lt;/math&amp;gt; and &amp;lt;math&amp;gt;\mathbf n_{\perp}= (-\sin \theta,\cos \theta) &amp;lt;/math&amp;gt; be unit vectors along and perpendicular to the gradient direction. The termination functional of energy can be represented as&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E_{term}={\partial \theta\over\partial n_{\perp}} = {\partial^2 C / \partial^2 n_{\perp} \over  \partial C / \partial n} = {{C_{yy}C_x^2-2C_{xy}C_xC_y+C_{xx}C_y^2}\over(C_x^2+C_y^2)^{3/2}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Constraint energy ===&lt;br /&gt;
&lt;br /&gt;
Some systems, including the original snakes implementation, allowed for user interaction to guide the snakes, not only in initial placement but also in their energy terms. Such constraint energy &amp;lt;math&amp;gt; E_{con} &amp;lt;/math&amp;gt;  can be used to interactively guide the snakes towards or away from particular features.&lt;br /&gt;
&lt;br /&gt;
==Implementation==&lt;br /&gt;
&lt;br /&gt;
Gradient-descent minimization &amp;lt;ref&amp;gt;Image Understanding,Bryan S. Morse,Brigham Young University,1998-2000 http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/MORSE/iu.pdf&amp;lt;/ref&amp;gt; is one of the simple optimizations which can be used to minimize snake energy. For example, let’s consider a function of only one variable. If we have a starting guess at the value of the solution, we can look at the slope at that point and decide to increment our solution (negative slope) or decrement our solution (positive slope). Notice the negation there: if the slope is positive, downhill is backwards; and if the slope is negative, downhill is forwards. We can thus implement gradient-descent minimization as&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;x_{t+1}=x_t+\gamma\frac{df}{dx}(x_t)&amp;lt;/math&amp;gt; and&lt;br /&gt;
&amp;lt;math&amp;gt;y_{t+1}=y_t+\gamma\frac{df}{dy}(y_t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where &amp;lt;math&amp;gt; \gamma &amp;lt;/math&amp;gt; controls the size of the step at each iteration.&lt;br /&gt;
&lt;br /&gt;
Vector representation: &amp;lt;math&amp;gt;\bar x_{t+1}=\bar x_t+\gamma \nabla f(\bar x_t)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We can approximate the energy function of the snake by using the discrete points on the snake.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;E_{snake}^*\approx \displaystyle \sum_1^n E_{snake}(\bar v_i)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The derivative of above sum is nothing but the sum of derivatives.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla E_{snake}^*\approx \displaystyle \sum_1^n \nabla E_{snake} (\bar v_i) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Now we should iteratively adjust the points vector &amp;lt;math&amp;gt; \mathbf v_i &amp;lt;/math&amp;gt; by using gradient descent minimization.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar v_i \leftarrow \bar v_i-\nabla E_{snake}(\bar v_i)&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Applying the derivative to energy function gives&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla E_{snake} (\bar v_i) = w_{internal} \nabla E_{internal} (\bar v_i)+w_{external} \nabla E_{external} (\bar v_i) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Derivative of internal Energy of the image can be solved as&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla E_{internal}(s)=\nabla \bigg[(\alpha\,\!(s)\left \| \mathbf{v}_s(s) \right \Vert^2 + \beta\,\!(s)\left \| \mathbf{v}_{ss}(s) \right \Vert ^2)/2 \bigg] &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\nabla E_{internal} (s)= \Bigg[ \bigg(\alpha\,\!(s) \nabla \left \| \frac{d\bar v}{ds}(s) \right \Vert^2 + \beta\,\!(s) \nabla \left \| \frac{d^2\bar v}{ds^2}(s) \right \Vert ^2 \bigg) /2 \Bigg]&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;=\alpha \frac{\partial ^2 \bar v}{\partial s^2}+\beta \frac{\partial ^4 \bar v}{\partial s^4}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
These can be approximated using [[finite difference]]s—the second derivative w.r.t. &#039;&#039;s&#039;&#039; can be calculated using three&lt;br /&gt;
adjacent points on the snake, and the fourth derivative w.r.t. &#039;&#039;s&#039;&#039; can be calculated using five adjacent points. It also helps&lt;br /&gt;
to separate the x and y components.&lt;br /&gt;
&lt;br /&gt;
Final equations are&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar v_i= \leftarrow \bar v_i - \gamma \Bigg\{ w_{internal} \bigg[ \alpha \frac{\partial ^2 \bar v}{\partial s^2} (\bar v_i)+\beta \frac{\partial ^4 \bar v}{\partial s^4} (\bar v_i) \bigg]&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;+ \nabla E_{ext} (\bar v_i) \Bigg\} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar x_i= \leftarrow x_i - \gamma \Bigg\{ w_{internal} \bigg[ \alpha \frac{\partial ^2 x}{\partial s^2} (\bar v_i)+\beta \frac{\partial ^4 x}{\partial s^4} (\bar v_i) \bigg]&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;+ \frac{\partial}{\partial x} E_{ext} (\bar v_i) \Bigg\} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\bar y_i= \leftarrow y_i - \gamma \Bigg\{ w_{internal} \bigg[ \alpha \frac{\partial ^2 y}{\partial s^2} (\bar v_i)+\beta \frac{\partial ^4 y}{\partial s^4} (\bar v_i) \bigg]&amp;lt;/math&amp;gt;&lt;br /&gt;
&amp;lt;math&amp;gt;+ \frac{\partial}{\partial y} E_{ext} (\bar v_i) \Bigg\} &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Where&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt; E_{external}=E_{image}+E_{con}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Pseudo code===&lt;br /&gt;
&lt;br /&gt;
# Before entering the iteration calculate &amp;lt;math&amp;gt;E_{ext} (\bar v_i) &amp;lt;/math&amp;gt;and the derivatives of this w.r.t. x and y separately.&lt;br /&gt;
# At the start of the iteration, calculate &amp;lt;math&amp;gt;\frac{\partial ^2 x}{\partial s^2}(\bar v_i) &amp;lt;/math&amp;gt;and &amp;lt;math&amp;gt;\frac{\partial ^2 y}{\partial s^2} (\bar v_i) &amp;lt;/math&amp;gt; using the three adjacent points and &amp;lt;math&amp;gt; \frac{\partial ^4 y}{\partial s^4} (\bar v_i),\frac{\partial ^4 x}{\partial s^4} (\bar v_i)&amp;lt;/math&amp;gt; using five adjacent points.&lt;br /&gt;
#  Then, calculate change in x and y for each point in &amp;lt;math&amp;gt; \bar v_i &amp;lt;/math&amp;gt; Use the precalculated  &amp;lt;math&amp;gt;E_{ext} (\bar v_i) &amp;lt;/math&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Advantages and drawbacks==&lt;br /&gt;
&lt;br /&gt;
Snakes have multiple advantages over classical feature attraction techniques.&lt;br /&gt;
# Snakes are autonomous and self-adapting in their search for a minimal energy state.&lt;br /&gt;
# They can be easily manipulated using external image forces.&lt;br /&gt;
# They can be made sensitive to image scale by incorporating Gaussian smoothing in the image energy function.&lt;br /&gt;
# They can be used to track dynamic objects in temporal as well as the spatial dimensions.&lt;br /&gt;
&lt;br /&gt;
The key drawbacks of the traditional snakes are&lt;br /&gt;
&lt;br /&gt;
#  They can often get stuck in local minima states; this may be overcome by using simulated annealing techniques at the expense of longer computation times.&lt;br /&gt;
#  They often overlook minute features in the process of minimizing the energy over the entire path of their contours.&lt;br /&gt;
#  Their accuracy is governed by the convergence criteria used in the energy minimization technique; higher accuracies require tighter convergence criteria and hence, longer computation times.&amp;lt;ref&amp;gt;Snakes: an active model,Ramani Pichumani,http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/RAMANI1/node31.html&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Other implementations of snakes ==&lt;br /&gt;
&lt;br /&gt;
=== GVF active contours ===&lt;br /&gt;
&lt;br /&gt;
The snake is developed based on new type of external field, called Gradient Vector Flow, or GVF. This computation causes diffuse forces to exist far from the object, and crisp force vectors near the edges.  Combining these forces with the usual internal forces yields a powerful computational object: the GVF snake (2D), or the GVF deformable model (N-D). Even though this snake is started far from the object, it still gets attracted towards the object.&amp;lt;ref name=&amp;quot;gvf&amp;quot;&amp;gt;Chenyang Xu and Jerry L. Prince,IACL,http://www.iacl.ece.jhu.edu/static/gvf/&amp;lt;/ref&amp;gt;  Especially, GVF active contours can handle broken object edges and subjective contours.&amp;lt;ref name=&amp;quot;gvf&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Balloon snake===&lt;br /&gt;
&lt;br /&gt;
In this case, the snake behaves like a balloon which is blown up. When it passes by edges, it is stopped if the contour is strong,or passes through if the contour is too weak. Thus, the initial snake need not be too close to the solution(object) to converge. This approach modifies the definition external forces (derived from gradient of the image) presented in traditional snake (Kass &#039;&#039;et al&#039;&#039;).  A new pressure force is introduced which makes the curve behave like a balloon.&amp;lt;ref&amp;gt;On Active Contour Models, Laurent D. COHEN,http://hal.archives-ouvertes.fr/docs/00/07/54/84/PDF/RR-1075.pdf&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Diffusion snakes===&lt;br /&gt;
&lt;br /&gt;
The diffusion snake is a modification of the [[Mumford-Shah Functional|Mumford-Shah functional]] for spline contours. A modification of the Mumford-Shah functional and its cartoon limit is used to incorporate statistical prior on the shape of the segmenting contour. By minimizing a single energy functional, we obtain a segmentation process which maximizes both the Grey value homogeneity in the separated regions and the similarity of the contour with respect to a set of training shapes.&amp;lt;ref&amp;gt;Diffusion Snakes: Statistical Shape Knowledge in Mumford-Shah Based Segmentation,Daniel Cremers, Christoph Schnörr and Joachim Weickert http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/CREMERS2/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Geometric Active Contours===&lt;br /&gt;
&lt;br /&gt;
This class of snake models employs ideas from Euclidean curve shortening evolution which defines the gradient direction&lt;br /&gt;
in which the Euclidean perimeter is shrinking as fast as possible. One therefore notes that &lt;br /&gt;
new active contour models may be derived by multiplying the Euclidean arc-length by a conformal factor tailored to the features of interest that one wants to capture, then writing down the resulting gradient&lt;br /&gt;
evolution equations. The latter becomes a curve shortening equation with respect to the new conformally Euclidean metric.&lt;br /&gt;
These models may be implemented using [[level sets]], and have been extensively employed in [[medical image computing]].&lt;br /&gt;
They have been called geodesic snakes &amp;lt;ref&amp;gt;Geodesic Active Contours, V. Caselles, R. Kimmel, G. Sapiro http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.21.2196&amp;lt;/ref&amp;gt; and conformal active contours.&amp;lt;ref&amp;gt;Conformal curvature flows: From phase transitions to active vision, Satyanad Kichenassamy, Arun Kumar, Peter Olver, Allen Tannenbaum and Anthony Yezzi http://www.springerlink.com/content/u457157212872201/&amp;lt;/ref&amp;gt; Statistical models combining local and global features&lt;br /&gt;
have been formulated in.&amp;lt;ref&amp;gt;Localizing region-based active contours, Shawn Lankton and Allen Tannenbaum http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.178.2796/&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Sample code==&lt;br /&gt;
&lt;br /&gt;
#[http://www.icaen.uiowa.edu/~image/Prince-snakes/ Practical examples of different snakes developed by Prince and Xu]&lt;br /&gt;
#[http://www.isbe.man.ac.uk/~bim/software/qsnake_demo/qsnake_demo.html Basic tool to play with snakes (active contour models) from Tim Cootes,University of Manchester]&lt;br /&gt;
#[http://www.mathworks.com/matlabcentral/fileexchange/28149 Matlab implementation of 2D and 3D snake including GVF and balloon force]&lt;br /&gt;
#[http://www.slaney.org/malcolm/pubs.html Matlab Snake Demo] by Chris Bregler and Malcolm Slaney, Interval Research Corporation.&lt;br /&gt;
#[http://www.markschulze.net/snakes/ A Demonstration Using Java]&lt;br /&gt;
&lt;br /&gt;
==See also==&lt;br /&gt;
&lt;br /&gt;
#[http://homepages.inf.ed.ac.uk/rbf/CVonline/LOCAL_COPIES/YOUNG/vision7.html David Young, March 1995]&lt;br /&gt;
# [http://homepages.inf.ed.ac.uk/cgi/rbf/CVONLINE/entries.pl?TAG709 Snakes: Active Contours, CVOnline]&lt;br /&gt;
# [http://www.isbe.man.ac.uk/courses/Computer_Vision/downloads/L11_Snakes.pdf ICBE,University of Manchester]&lt;br /&gt;
&lt;br /&gt;
==References==&lt;br /&gt;
{{reflist|2}}&lt;br /&gt;
&lt;br /&gt;
{{DEFAULTSORT:Active Contour Model}}&lt;br /&gt;
[[Category:Computer vision]]&lt;/div&gt;</summary>
		<author><name>109.154.36.13</name></author>
	</entry>
</feed>