Gradient vector flow

Last updated

Gradient vector flow (GVF), a computer vision framework introduced by Chenyang Xu and Jerry L. Prince, [1] [2] is the vector field that is produced by a process that smooths and diffuses an input vector field. It is usually used to create a vector field from images that points to object edges from a distance. It is widely used in image analysis and computer vision applications for object tracking, shape recognition, segmentation, and edge detection. In particular, it is commonly used in conjunction with active contour model.

Contents

Results from Gradient Vector Flow algorithm applied to 3-D Metasphere data Gradient Vector Flow 3D Metasphere Example Result.png
Results from Gradient Vector Flow algorithm applied to 3-D Metasphere data

Background

Finding objects or homogeneous regions in images is a process known as image segmentation. In many applications, the locations of object edges can be estimated using local operators that yield a new image called an edge map. The edge map can then be used to guide a deformable model, sometimes called an active contour or a snake, so that it passes through the edge map in a smooth way, therefore defining the object itself.

A common way to encourage a deformable model to move toward the edge map is to take the spatial gradient of the edge map, yielding a vector field. Since the edge map has its highest intensities directly on the edge and drops to zero away from the edge, these gradient vectors provide directions for the active contour to move. When the gradient vectors are zero, the active contour will not move, and this is the correct behavior when the contour rests on the peak of the edge map itself. However, because the edge itself is defined by local operators, these gradient vectors will also be zero far away from the edge and therefore the active contour will not move toward the edge when initialized far away from the edge.

Gradient vector flow (GVF) is the process that spatially extends the edge map gradient vectors, yielding a new vector field that contains information about the location of object edges throughout the entire image domain. GVF is defined as a diffusion process operating on the components of the input vector field. It is designed to balance the fidelity of the original vector field, so it is not changed too much, with a regularization that is intended to produce a smooth field on its output.

Although GVF was designed originally for the purpose of segmenting objects using active contours attracted to edges, it has been since adapted and used for many alternative purposes. Some newer purposes including defining a continuous medial axis representation, [3] regularizing image anisotropic diffusion algorithms, [4] finding the centers of ribbon-like objects, [5] constructing graphs for optimal surface segmentations, [6] creating a shape prior, [7] and much more.

Theory

The theory of GVF was originally described by Xu and Prince. [2] Let be an edge map defined on the image domain. For uniformity of results, it is important to restrict the edge map intensities to lie between 0 and 1, and by convention takes on larger values (close to 1) on the object edges. The gradient vector flow (GVF) field is given by the vector field that minimizes the energy functional

In this equation, subscripts denote partial derivatives and the gradient of the edge map is given by the vector field . Figure 1 shows an edge map, the gradient of the (slightly blurred) edge map, and the GVF field generated by minimizing .

Fig. 1. An edge map (left) describes the boundary of an object. The gradient of the (slightly blurred) edge map (center) points towards the boundary, but is very local. The gradient vector flow (GVF) field (right) also points towards the boundary, but has a much larger capture range. UShape.png
Fig. 1. An edge map (left) describes the boundary of an object. The gradient of the (slightly blurred) edge map (center) points towards the boundary, but is very local. The gradient vector flow (GVF) field (right) also points towards the boundary, but has a much larger capture range.

Equation 1 is a variational formulation that has both a data term and a regularization term. The first term in the integrand is the data term. It encourages the solution to closely agree with the gradients of the edge map since that will make small. However, this only needs to happen when the edge map gradients are large since is multiplied by the square of the length of these gradients. The second term in the integrand is a regularization term. It encourages the spatial variations in the components of the solution to be small by penalizing the sum of all the partial derivatives of . As is customary in these types of variational formulations, there is a regularization parameter that must be specified by the user in order to trade off the influence of each of the two terms. If is large, for example, then the resulting field will be very smooth and may not agree as well with the underlying edge gradients.

Theoretical Solution. Finding to minimize Equation 1 requires the use of calculus of variations since is a function, not a variable. Accordingly, the Euler equations, which provide the necessary conditions for to be a solution can be found by calculus of variations, yielding

 

 

 

 

(2a)

 

 

 

 

(2b)

where is the Laplacian operator. It is instructive to examine the form of the equations in (2). Each is a partial differential equation that the components and of must satisfy. If the magnitude of the edge gradient is small, then the solution of each equation is guided entirely by Laplace's equation, for example , which will produce a smooth scalar field entirely dependent on its boundary conditions. The boundary conditions are effectively provided by the locations in the image where the magnitude of the edge gradient is large, where the solution is driven to agree more with the edge gradients.

Computational Solutions. There are two fundamental ways to compute GVF. First, the energy function itself (1) can be directly discretized and minimized, for example, by gradient descent. Second, the partial differential equations in (2) can be discretized and solved iteratively. The original GVF paper used an iterative approach, while later papers introduced considerably faster implementations such as an octree-based method, [8] a multi-grid method, [9] and an augmented Lagrangian method. [10] In addition, very fast GPU implementations have been developed in [11] [12]

Extensions and Advances. GVF is easily extended to higher dimensions. The energy function is readily written in a vector form as

which can be solved by gradient descent or by finding and solving its Euler equation. Figure 2 shows an illustration of a three-dimensional GVF field on the edge map of a simple object (see [13] ).

Fig. 2. The object shown in the top left is used as an edge map to generate a three-dimensional GVF field. Vectors and streamlines of the GVF field are shown in the (Z) zoomed region, (V) vertical plane, and (H) horizontal plane. Gradient Vector Flow 3D Metasphere Example Result.png
Fig. 2. The object shown in the top left is used as an edge map to generate a three-dimensional GVF field. Vectors and streamlines of the GVF field are shown in the (Z) zoomed region, (V) vertical plane, and (H) horizontal plane.

The data and regularization terms in the integrand of the GVF functional can also be modified. A modification described in , [14] called generalized gradient vector flow (GGVF) defines two scalar functions and reformulates the energy as

While the choices and reduce GGVF to GVF, the alternative choices and , for a user-selected constant, can improve the tradeoff between the data term and its regularization in some applications.

The GVF formulation has been further extended to vector-valued images in  [15] where a weighted structure tensor of a vector-valued image is used. A learning based probabilistic weighted GVF extension was proposed in  [16] to further improve the segmentation for images with severely cluttered textures or high levels of noise.

The variational formulation of GVF has also been modified in motion GVF (MGVF) to incorporate object motion in an image sequence. [17] Whereas the diffusion of GVF vectors from a conventional edge map acts in an isotropic manner, the formulation of MGVF incorporates the expected object motion between image frames.

An alternative to GVF called vector field convolution (VFC) provides many of the advantages of GVF, has superior noise robustness, and can be computed very fast. [18] The VFC field is defined as the convolution of the edge map with a vector field kernel

where

The vector field kernel has vectors that always point toward the origin but their magnitudes, determined in detail by the function , decrease to zero with increasing distance from the origin.

The beauty of VFC is that it can be computed very rapidly using a fast Fourier transform (FFT), a multiplication, and an inverse FFT. The capture range can be large and is explicitly given by the radius of the vector field kernel. A possible drawback of VFC is that weak edges might be overwhelmed by strong edges, but that problem can be alleviated by the use of a hybrid method that switches to conventional forces when the snake gets close to the boundary.

Properties. GVF has characteristics that have made it useful in many diverse applications. It has already been noted that its primary original purpose was to extend a local edge field throughout the image domain, far away from the actual edge in many cases. This property has been described as an extension of the capture range of the external force of an active contour model. It is also capable of moving active contours into concave regions of an object's boundary. These two properties are illustrated in Figure 3.

Fig. 3. An active contour with traditional external forces (left) must be initialized very close to the boundary and it still will not converge to the true boundary in concave regions. An active contour using GVF external forces (right) can be initialized farther away and it will converge all the way to the true boundary, even in concave regions. GVF Convergence.png
Fig. 3. An active contour with traditional external forces (left) must be initialized very close to the boundary and it still will not converge to the true boundary in concave regions. An active contour using GVF external forces (right) can be initialized farther away and it will converge all the way to the true boundary, even in concave regions.

Previous forces that had been used as external forces (based on the edge map gradients and simply related variants) required pressure forces in order to move boundaries from large distances and into concave regions. Pressure forces, also called balloon forces, provide continuous force on the boundary in one direction (outward or inward), and tend to have the effect of pushing through weak boundaries. GVF can often replace pressure forces and yield better performance in such situations.

Because the diffusion process is inherent in the GVF solution, vectors that point in opposite directions tend to compete as they meet at a central location, thereby defining a type of geometric feature that is related to the boundary configuration, but not directly evident from the edge map. For example, perceptual edges are gaps in the edge map which tend to be connected visually by human perception. [19] GVF helps to connect them by diffusing opposing edge gradient vectors across the gap; and even though there is no actual edge map, active contour will converge to the perceptual edge because the GVF vectors drive them there (see Xu, C.; Prince, J.L. (2012). "Active contours, deformable models, and gradient vector flow". Online resource including code download.). This property carries over when there are so-called weak edges identified by regions of edge maps having lower values.

GVF vectors also meet in opposition at central locations of objects thereby defining a type of medialness. This property has been exploited as an alternative definition of the skeleton of objects [20] and also as a way to initialize deformable models within objects such that convergence to the boundary is more likely.

Applications

The most fundamental application of GVF is as an external force in a deformable model. A typical application considers an image with an object delineated by intensity from its background. Thus, a suitable edge map could be defined by

where is a Gaussian blurring kernel with standard deviation and is convolution. This definition is applicable in any dimension and yields an edge map that falls in the range . Gaussian blurring is used primarily so that a meaningful gradient vector can always be computed, but is generally kept fairly small so that true edge positions are not overly distorted. Given this edge map, the GVF vector field can be computed by solving (2).

The deformable model itself can be implemented in a variety of ways including parametric models such as the original snake [19] or active surfaces and implicit models including geometric deformable models. [21] In the case of parametric deformable models, the GVF vector field can be used directly as the external forces in the model. If the deformable model is defined by the evolution of the (two-dimensional) active contour , then a simple parametric active contour evolution equation can be written as

Here, the subscripts indicate partial derivatives and and are user-selected constants.

Fig. 4. The inner, central, and outer surfaces of the human brain cortex (top) are found sequentially using GVF forces in three geometric deformable models. The central surface uses the gray matter membership function (bottom left) as an edge map itself, which draws the central surface to the central layer of the cortical gray matter. The positions of the three surfaces are shown as nested surfaces in a coronal cutaway (bottom right). GVF Cortex.png
Fig. 4. The inner, central, and outer surfaces of the human brain cortex (top) are found sequentially using GVF forces in three geometric deformable models. The central surface uses the gray matter membership function (bottom left) as an edge map itself, which draws the central surface to the central layer of the cortical gray matter. The positions of the three surfaces are shown as nested surfaces in a coronal cutaway (bottom right).

In the case of geometric deformable models, then the GVF vector field is first projected against the normal direction of the implicit wavefront, which defines an additional speed function. Accordingly, then the evolution of the signed distance function defining a simple geometric deformable contour can be written as

where is the curvature of the contour and is a user-selected constant.

A more sophisticated deformable model formulation that combines the geodesic active contour flow with GVF forces was proposed in . [22] This paper also shows how to apply the Additive Operator Splitting schema [23] for rapid computation of this segmentation method. The uniqueness and existence of this combined model were proven in . [24] A further modification of this model by using an external force term minimizing GVF divergence was proposed in  [25] to achieve even better segmentation for images with complex geometric objects.

GVF has been used to find both inner, central, and central cortical surfaces in the analysis of brain images, [5] as shown in Figure 4. The process first finds the inner surface using a three-dimensional geometric deformable model with conventional forces. Then the central surface is found by exploiting the central tendency property of GVF. In particular, the cortical membership function of the human brain cortex, derived using a fuzzy classifier, is used to compute GVF as if itself were a thick edge map. The computed GVF vectors point towards the center of the cortex and can then be used as external forces to drive the inner surface to the central surface. Finally, another geometric deformable model with conventional forces is used to drive the central surface to a position on the outer surface of the cortex.

Several notable recent applications of GVF include constructing graphs for optimal surface segmentation in spectral-domain optical coherence tomography volumes, [6] a learning based probabilistic GVF active contour formulation to give more weights to objects of interest in ultrasound image segmentation, [16] and an adaptive multi-feature GVF active contour for improved ultrasound image segmentation without hand-tuned parameters. [26]

Related Research Articles

<span class="mw-page-title-main">Curl (mathematics)</span> Circulation density in a vector field

In vector calculus, the curl, also known as rotor, is a vector operator that describes the infinitesimal circulation of a vector field in three-dimensional Euclidean space. The curl at a point in the field is represented by a vector whose length and direction denote the magnitude and axis of the maximum circulation. The curl of a field is formally defined as the circulation density at each point of the field.

<span class="mw-page-title-main">Gradient</span> Multivariate derivative (mathematics)

In vector calculus, the gradient of a scalar-valued differentiable function of several variables is the vector field whose value at a point gives the direction and the rate of fastest increase. The gradient transforms like a vector under change of basis of the space of variables of . If the gradient of a function is non-zero at a point , the direction of the gradient is the direction in which the function increases most quickly from , and the magnitude of the gradient is the rate of increase in that direction, the greatest absolute directional derivative. Further, a point where the gradient is the zero vector is known as a stationary point. The gradient thus plays a fundamental role in optimization theory, where it is used to maximize a function by gradient ascent. In coordinate-free terms, the gradient of a function may be defined by:

<span class="mw-page-title-main">Navier–Stokes equations</span> Equations describing the motion of viscous fluid substances

The Navier–Stokes equations are partial differential equations which describe the motion of viscous fluid substances. They were named after French engineer and physicist Claude-Louis Navier and the Irish physicist and mathematician George Gabriel Stokes. They were developed over several decades of progressively building the theories, from 1822 (Navier) to 1842–1850 (Stokes).

<span class="mw-page-title-main">Vector field</span> Assignment of a vector to each point in a subset of Euclidean space

In vector calculus and physics, a vector field is an assignment of a vector to each point in a space, most commonly Euclidean space . A vector field on a plane can be visualized as a collection of arrows with given magnitudes and directions, each attached to a point on the plane. Vector fields are often used to model, for example, the speed and direction of a moving fluid throughout three dimensional space, such as the wind, or the strength and direction of some force, such as the magnetic or gravitational force, as it changes from one point to another point.

<span class="mw-page-title-main">Exact sequence</span> Sequence of homomorphisms such that each kernel equals the preceding image

An exact sequence is a sequence of morphisms between objects such that the image of one morphism equals the kernel of the next.

Del, or nabla, is an operator used in mathematics as a vector differential operator, usually represented by the nabla symbol . When applied to a function defined on a one-dimensional domain, it denotes the standard derivative of the function as defined in calculus. When applied to a field, it may denote any one of three operations depending on the way it is applied: the gradient or (locally) steepest slope of a scalar field ; the divergence of a vector field; or the curl (rotation) of a vector field.

In mathematics, the Laplace operator or Laplacian is a differential operator given by the divergence of the gradient of a scalar function on Euclidean space. It is usually denoted by the symbols , (where is the nabla operator), or . In a Cartesian coordinate system, the Laplacian is given by the sum of second partial derivatives of the function with respect to each independent variable. In other coordinate systems, such as cylindrical and spherical coordinates, the Laplacian also has a useful form. Informally, the Laplacian Δf (p) of a function f at a point p measures by how much the average value of f over small spheres or balls centered at p deviates from f (p).

<span class="mw-page-title-main">Poisson's equation</span> Expression frequently encountered in mathematical physics, generalization of Laplaces equation.

Poisson's equation is an elliptic partial differential equation of broad utility in theoretical physics. For example, the solution to Poisson's equation is the potential field caused by a given electric charge or mass density distribution; with the potential field known, one can then calculate electrostatic or gravitational (force) field. It is a generalization of Laplace's equation, which is also frequently seen in physics. The equation is named after French mathematician and physicist Siméon Denis Poisson.

A Newtonian fluid is a fluid in which the viscous stresses arising from its flow are at every point linearly correlated to the local strain rate — the rate of change of its deformation over time. Stresses are proportional to the rate of change of the fluid's velocity vector.

<span class="mw-page-title-main">Scalar potential</span> When potential energy difference depends only on displacement

In mathematical physics, scalar potential, simply stated, describes the situation where the difference in the potential energies of an object in two different positions depends only on the positions, not upon the path taken by the object in traveling from one position to the other. It is a scalar field in three-space: a directionless value (scalar) that depends only on its location. A familiar example is potential energy due to gravity.

<span class="mw-page-title-main">Image segmentation</span> Partitioning a digital image into segments

In digital image processing and computer vision, image segmentation is the process of partitioning a digital image into multiple image segments, also known as image regions or image objects. The goal of segmentation is to simplify and/or change the representation of an image into something that is more meaningful and easier to analyze. Image segmentation is typically used to locate objects and boundaries in images. More precisely, image segmentation is the process of assigning a label to every pixel in an image such that pixels with the same label share certain characteristics.

Geometrical optics, or ray optics, is a model of optics that describes light propagation in terms of rays. The ray in geometrical optics is an abstraction useful for approximating the paths along which light propagates under certain circumstances.

<span class="mw-page-title-main">Magnetic vector potential</span> Integral of the magnetic field

In classical electromagnetism, magnetic vector potential is the vector quantity defined so that its curl is equal to the magnetic field: . Together with the electric potential φ, the magnetic vector potential can be used to specify the electric field E as well. Therefore, many equations of electromagnetism can be written either in terms of the fields E and B, or equivalently in terms of the potentials φ and A. In more advanced theories such as quantum mechanics, most equations use potentials rather than fields.

<span class="mw-page-title-main">Image gradient</span> Directional change in the intensity or color in an image

An image gradient is a directional change in the intensity or color in an image. The gradient of the image is one of the fundamental building blocks in image processing. For example, the Canny edge detector uses image gradient for edge detection. In graphics software for digital image editing, the term gradient or color gradient is also used for a gradual blend of color which can be considered as an even gradation from low to high values, as used from white to black in the images to the right. Another name for this is color progression.

In fluid mechanics, potential vorticity (PV) is a quantity which is proportional to the dot product of vorticity and stratification. This quantity, following a parcel of air or water, can only be changed by diabatic or frictional processes. It is a useful concept for understanding the generation of vorticity in cyclogenesis, especially along the polar front, and in analyzing flow in the ocean.

<span class="mw-page-title-main">Navier–Stokes existence and smoothness</span> Millennium Prize Problem

The Navier–Stokes existence and smoothness problem concerns the mathematical properties of solutions to the Navier–Stokes equations, a system of partial differential equations that describe the motion of a fluid in space. Solutions to the Navier–Stokes equations are used in many practical applications. However, theoretical understanding of the solutions to these equations is incomplete. In particular, solutions of the Navier–Stokes equations often include turbulence, which remains one of the greatest unsolved problems in physics, despite its immense importance in science and engineering.

Compressed sensing is a signal processing technique for efficiently acquiring and reconstructing a signal, by finding solutions to underdetermined linear systems. This is based on the principle that, through optimization, the sparsity of a signal can be exploited to recover it from far fewer samples than required by the Nyquist–Shannon sampling theorem. There are two conditions under which recovery is possible. The first one is sparsity, which requires the signal to be sparse in some domain. The second one is incoherence, which is applied through the isometric property, which is sufficient for sparse signals.

<span class="mw-page-title-main">Active contour model</span>

Active contour model, also called snakes, is a framework in computer vision introduced by Michael Kass, Andrew Witkin, and Demetri Terzopoulos for delineating an object outline from a possibly noisy 2D image. The snakes model is popular in computer vision, and snakes are widely used in applications like object tracking, shape recognition, segmentation, edge detection and stereo matching.

The Cauchy momentum equation is a vector partial differential equation put forth by Cauchy that describes the non-relativistic momentum transport in any continuum.

In mathematics, a line integral is an integral where the function to be integrated is evaluated along a curve. The terms path integral, curve integral, and curvilinear integral are also used; contour integral is used as well, although that is typically reserved for line integrals in the complex plane.

References

  1. Xu, C.; Prince, J.L. (June 1997). "Gradient Vector Flow: A New External Force for Snakes" (PDF). Proc. IEEE Conf. on Comp. Vis. Patt. Recog. (CVPR). Los Alamitos: Comp. Soc. Press. pp. 66–71.
  2. 1 2 Xu, C.; Prince, J.L. (1998). "Snakes, Shapes, and Gradient Vector Flow" (PDF). IEEE Transactions on Image Processing. 7 (3): 359–369.
  3. Hassouna, M.S.; Farag, A.Y. (2009). "Variational curve skeletons using gradient vector flow". IEEE Transactions on Pattern Analysis and Machine Intelligence. 31 (12): 2257–2274.
  4. Yu, H.; Chua, C.S. (2006). "GVF-based anisotropic diffusion models". IEEE Transactions on Image Processing. 15 (6): 1517–1524.
  5. 1 2 Han, X.; Pham, D.L.; Tosun, D.; Rettmann, M.E.; Xu, C.; Prince, J.L.; et al. (2004). "CRUISE: cortical reconstruction using implicit surface evolution". NeuroImage. 23 (3): 997–1012.
  6. 1 2 Miri, M.S.; Robles, V.A.; Abràmoff, M.D.; Kwon, Y.H.; Garvin, M.K. (2017). "Incorporation of gradient vector flow field in a multimodal graph-theoretic approach for segmenting the internal limiting membrane from glaucomatous optic nerve head-centered SD-OCT volumes". Computerized Medical Imaging and Graphics. 55: 87–94.
  7. Bai, J.; Shah, A.; Wu, X. (2018). "Optimal multi-object segmentation with novel gradient vector flow based shape priors". Computerized Medical Imaging and Graphics. Elsevier. 69: 96–111.
  8. Esteban, C. H.; Schmitt, F. (2004). "Silhouette and stereo fusion for 3D object modeling". Computer Vision and Image Understanding. Elsevier. 96 (3): 367–392.
  9. Han, X.; Xu, C.; Prince, J.L. (2007). "Fast numerical scheme for gradient vector flow computation using a multigrid method". IET Image Processing. 1 (1): 48–55.
  10. Ren, D.; Zuo, W.; Zhao, X.; Lin, Z.; Zhang, D. (2013). "Fast gradient vector flow computation based on augmented Lagrangian method". Pattern Recognition Letters. Elsevier. 34 (2): 219–225.
  11. Smistad, E.; Elster, A.C.; Lindseth, F. (2015). "Real-time gradient vector flow on GPUs using OpenCL". Journal of Real-Time Image Processing. Springer. 10 (1): 67–74.
  12. Smistad, E.; Lindseth, F. (2016). "Multigrid gradient vector flow computation on the GPU". Journal of Real-Time Image Processing. Springer. 12 (3): 593–601.
  13. Xu, C.; Han, X.; Prince, J.L. (2008). "Gradient Vector Flow Deformable Models". In Isaac Bankman (ed.). Handbook of Medical Image Processing and Analysis (2nd ed.). Academic Press. pp. 181–194.
  14. Xu, C.; Prince, J.L. (1998). "Generalized gradient vector flow external forces for active contours". Signal Processing. 71 (2): 131–139.
  15. Jaouen, V.; Gonzalez, P.; Stute, S.; Guilloteau, D.; Chalon, S.; et al. (2014). "Variational segmentation of vector-valued images with gradient vector flow". IEEE Transactions on Image Processing. 23 (11): 4773–4785.
  16. 1 2 Hafiane, A.; Vieyres, P.; Delbos, A. (2014). "Phase-based probabilistic active contour for nerve detection in ultrasound images for regional anesthesia". Computers in Biology and Medicine. 52: 88–95.
  17. Ray, N.; Acton, S.T. (2004). "Motion gradient vector flow: An external force for tracking rolling leukocytes with shape and size constrained active contours". IEEE Transactions on Medical Imaging. 23 (12): 1466–1478.
  18. Li, B.; Acton, S.T. (2007). "Active contour external force using vector field convolution for image segmentation". IEEE Transactions on Image Processing. 16 (8): 2096–2106.
  19. 1 2 Kass, M.; Witkin, A.; Terzopoulos, D. (1988). "Snakes: active contour models". International Journal of Computer Vision. 1: 321–331.
  20. Hassouna, M.S.; Farag, A.Y. (2009). "Variational curve skeletons using gradient vector flow". IEEE Transactions on Pattern Analysis and Machine Intelligence. 31 (12): 2257–2274.
  21. Xu, C.; Yezzi, A.; Prince, J.L. (October 2000). "On the relationship between parametric and geometric active contours and its applications". 34th Asilomar Conference on Signals, Systems and Computers. Vol. 1. pp. 483–489.
  22. Paragios, N.; Mellina-Gottardo, O.; Ramesh, V. (2004). "Gradient vector flow fast geometric active contours". IEEE Transactions on Pattern Analysis and Machine Intelligence. 26 (3): 402–407.
  23. Goldenberg, R.; Kimmel, R.; Rivlin, E.; Rudzsky, M. (2001). "Fast geodesic active contours". IEEE Transactions on Image Processing. {10 (10): 1467–1475.
  24. Guilot, L.; Bergounioux, M. (2009). "Existence and uniqueness results for the gradient vector flow and geodesic active contours mixed model". Communications on Pure and Applied Analysis. 8 (4): 1333–1349.
  25. "Active contours driven by divergence of gradient vector flow". Signal Processing. Elsevier. 120: 185–199. 2016.
  26. Rodtook, A.; Makhanov, S.S. (2013). "Multi-feature gradient vector flow snakes for adaptive segmentation of the ultrasound images of breast cancer". Journal of Visual Communication and Image Representation. Elsevier. 24 (8): 1414–1430.