Content deleted Content added
Added a link to Jerry L. Prince. |
fix index |
||
(9 intermediate revisions by 7 users not shown) | |||
Line 1:
{{Short description|Computer vision framework}}
'''Gradient vector flow''' ('''GVF'''), a [[computer vision]] framework introduced by Chenyang Xu and [[Jerry L. Prince]],<ref name=":1">{{ Cite conference | last1 = Xu | first1 = C. | last2 = Prince | first2 = J.L. | title = Gradient Vector Flow: A New External Force for Snakes | book-title = Proc. IEEE Conf. on Comp. Vis. Patt. Recog. (CVPR) | place = Los Alamitos | publisher = Comp. Soc. Press | pages = 66–71 | date = June 1997 | url = http://iacl.ece.jhu.edu/pubs/p087c.pdf}}</ref><ref name=":2">{{Cite journal | title = Snakes, Shapes, and Gradient Vector Flow| journal = IEEE Transactions on Image Processing | volume = 7| issue = 3| pages =
[[File:Gradient Vector Flow 3D Metasphere Example Result.png|thumb|300px|Results from Gradient Vector Flow algorithm applied to 3-D Metasphere data]]
Line 14:
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,<ref name=":3">{{Cite journal | title = Variational curve skeletons using gradient vector flow | journal = IEEE Transactions on Pattern Analysis and Machine Intelligence | volume = 31| issue = 12| pages = 2257–2274| year = 2009| last1 = Hassouna | first1 = M.S.| last2 = Farag | first2 = A.Y. }}</ref>
==Theory==
The theory of GVF was originally described
{{numBlk||
:<math display = "block">
Line 29:
<math>\textstyle \nabla f =(f_x, f_y)</math>. Figure 1 shows an edge map, the gradient
of the (slightly blurred) edge map, and the GVF field generated by
minimizing <math>\textstyle\mathcal{E}</math>.
[[File:UShape.png|thumb|400px|right|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.]]
Line 46:
to be a solution can be found by calculus of variations, yielding
{{NumBlk|:|<math display = "block">\mu \nabla^2 u - (u - f_x) (f_x^2 + f_y^2) = 0 \,,</math> | 2a}}
{{NumBlk|:|<math display = "block">\mu \nabla^2 v - (v -
where <math>\textstyle\nabla^2</math> 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 <math>u</math> and <math>v</math> of <math>\mathbf{v}</math> 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 <math>\textstyle\nabla^2 u = 0</math>, 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
<math>\mathcal{E}</math> 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,<ref name
a multi-grid method,<ref name=":HanxIETIP07">
'''Extensions and Advances.''' GVF is easily extended to higher dimensions. The energy function is readily written in a vector form as
Line 62:
</math>| 3 | border=y}}
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 <ref name=":XuxHMIPA08">
[[File:Gradient Vector Flow 3D Metasphere Example Result.png|thumb|400px|right|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,
Line 68:
The data and regularization terms in the integrand of the GVF functional can also be modified. A modification described
in ,<ref name =":XuxSP98">
''generalized gradient vector flow'' (GGVF) defines two scalar functions and reformulates the energy as
{{numBlk||
Line 77:
While the choices <math>\textstyle g(\nabla f|) = \mu</math> and <math>\textstyle h(|\nabla f|) = |\nabla f|^2</math> reduce GGVF to GVF,
the alternative choices <math>\textstyle g(|\nabla f|) = \exp\{-|\nabla f|/K\}</math> and <math>\textstyle h(\nabla f|) = 1 - g(|\nabla f|)</math>,
for <math>K</math> 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 <ref name =":JaoxTIP14">
The variational formulation of GVF has also been modified in ''motion GVF'' (MGVF) to incorporate object motion in
an image sequence
pages =
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
{{numBlk||
:<math display = "block">
Line 102:
</math>| 6 | border=y}}
The vector field kernel <math>\textstyle\mathbf{k}</math> has vectors that always point toward the origin but their magnitudes, determined in detail by the
function <math>m</math>, 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
Line 113:
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.
[[File:GVF_Convergence.png|thumb|400px|right|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.]]
Line 125:
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
year = 1988 | volume = 1 | pages =
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 {{cite web |url=http://www.iacl.ece.jhu.edu/static/gvf |title=Active contours, deformable models, and gradient vector flow |last1 = Xu |
Line 133:
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
==Applications==
Line 147:
where <math>\textstyle G_{\sigma}</math> is a Gaussian blurring kernel with standard deviation <math>\textstyle\sigma</math> and <math>*</math> is convolution. This definition is applicable in any dimension and yields an edge map that falls in the range <math>[0,1]</math>. Gaussian blurring is used primarily so that a
meaningful gradient vector can always be computed, but <math>\sigma</math> is generally kept fairly small so that true edge positions are not overly
distorted. Given this edge map, the GVF vector field <math>\textstyle\mathbf{v}(\mathbf{x})</math> 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
of parametric deformable models, the GVF vector field <math>\mathbf{v}</math> 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 <math>\mathbf{X}(s,t)</math>, then a simple
Line 159:
</math>| 8 | border=y}}
Here, the subscripts indicate partial derivatives and <math>\gamma</math> and
<math>\alpha</math> are user-selected constants.
[[File:GVF_Cortex.png|thumb|400px|right|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).]]
Line 171:
\phi}{|\nabla \phi|} ] |\nabla \phi | \,,
</math>| 9 | border=y}}
where <math>\kappa</math> is the curvature of the contour and <math>\alpha</math> is a user-selected constant.
A more sophisticated deformable model formulation that combines
the geodesic active contour flow with GVF forces was proposed
in .<ref name=":ParxTPAMI04">{{Cite journal | first1 = N. | last1 = Paragios | first2 = O. | last2 = Mellina-Gottardo | first3 = V. | last3 = Ramesh | title = Gradient vector flow fast geometric active contours | journal = IEEE Transactions on Pattern Analysis and Machine Intelligence | year = 2004 | volume = 26 | pages =
Operator Splitting schema
| first4 = M. | last4 = Rudzsky | title = Fast geodesic active contours | journal = IEEE Transactions on Image Processing | year = 2001
| volume = {10 | pages = 1467-1475 | issue = 10}}</ref> for rapid computation of this segmentation method. The uniqueness and existence of this
combined model were proven in .<ref name=":GuixCPAA09">{{Cite journal | first1 = L. | last1 = Guilot | first2 = M. | last2 = Bergounioux
| title = Existence and uniqueness results for the gradient vector flow and geodesic active contours mixed model |
journal = Communications on Pure and Applied Analysis | year = 2009 | volume = 8 | issue = 4 | pages =
A further modification of this model by using an external force term minimizing GVF divergence was proposed in <ref name=":LixSP16">{{Cite journal | title=Active contours driven by divergence of gradient vector flow | journal=Signal Processing |
volume=120 | pages=
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
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
Line 194:
Several notable recent applications of GVF include constructing graphs for optimal surface segmentation in spectral-___domain optical coherence
tomography volumes
of interest in ultrasound image segmentation
for improved ultrasound image segmentation without hand
==Related
* [http://iacl.ece.jhu.edu/Projects/gvf/ Deformable models]
|