Gradient vector flow: Difference between revisions

Content deleted Content added
m it's → it is
WikiCleanerBot (talk | contribs)
m v2.04b - Bot T20 CW#61 - Fix errors for CW project (Reference before punctuation)
Line 1:
'''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 = 359-369| year = 1998| last1 = Xu | first1 = C.| last2 = Prince | first2 = J.L. | url = http://iacl.ece.jhu.edu/pubs/p084j.pdf}}</ref> 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, [[Image segmentation|segmentation]], and [[edge detection]]. In particular, it is commonly used in conjunction with [[active contour model]].
<ref name=":2">{{Cite journal | title = Snakes, Shapes, and Gradient Vector Flow| journal = IEEE Transactions on Image Processing | volume = 7| issue = 3| pages = 359-369| year = 1998| last1 = Xu | first1 = C.| last2 = Prince | first2 = J.L. | url = http://iacl.ece.jhu.edu/pubs/p084j.pdf}}</ref>, 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, [[Image segmentation|segmentation]], and [[edge detection]]. In particular, it is commonly used in conjunction with [[active contour model]].
 
[[File:Gradient Vector Flow 3D Metasphere Example Result.png|thumb|300px|Results from Gradient Vector Flow algorithm applied to 3-D Metasphere data]]
Line 17 ⟶ 16:
 
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>, regularizing image anisotropic diffusion algorithms,<ref name=":YuxTIP06">{{Cite journal | title = GVF-based anisotropic diffusion models | journal = IEEE Transactions on Image Processing | volume = 15 | issue = 6 | pages = 1517--1524 | year = 2006 | last1 = Yu | first1 = H. | last2 = Chua | first2 = C.S. }}</ref>, finding the centers of ribbon-like objects,<ref name=":HanxNI04">{{Cite journal | title = CRUISE: cortical reconstruction using implicit surface evolution | journal = NeuroImage | volume = 23 | number = 3 | pages = 997--1012 | year = 2004 | last1 = Han | first1 = X. | last2 = Pham | first2 = D.L. | last3 = Tosun | first3 = D. | last4 = Rettmann | first4 = M.E. | last5 = Xu | first5 = C. | last6 = Prince | first6 = J.L. | display-authors = etal }}</ref>, constructing graphs for optimal surface segmentations,<ref name=":MirxCMIG17"> {{Cite journal | title = 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 | journal = Computerized Medical Imaging and Graphics | volume = 55 | pages = 87-94 | year = 2017 | last1 = Miri | first1 = M.S. | last2 = Robles | first2 = V.A. | last3 = Abràmoff | first3 = M.D. | last4 = Kwon | first4 = Y.H. | last5 = Garvin | first5 = M.K.}}</ref>, creating a shape prior,<ref name=":BaixCMIG18"> {{Cite journal | title = Optimal multi-object segmentation with novel gradient vector flow based shape priors | journal = Computerized Medical Imaging and Graphics | volume=69 | pages= 96-111 | year= 2018 | publisher=Elsevier | last1 = Bai | first1 = J. | last2 = Shah | first2 = A. | last3 = Wu | first3 = X.}}</ref>, and much more.
 
==Theory==
The theory of GVF was originally described in.<ref name=":2"></ref>. Let <math>\textstyle f(x,y)</math> 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 <math>\textstyle f(x,y)</math> takes on larger values (close to 1) on the object edges. The gradient vector flow (GVF) field is given by the vector field <math>\textstyle \mathbf{v}(x,y) = [u(x,y),v(x,y)]</math> that minimizes the energy functional
{{numBlk||
:<math display = "block">
Line 53 ⟶ 52:
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 =":HerxCVIU2004> {{Cite journal | title = Silhouette and stereo fusion for 3D object modeling | journal = Computer Vision and Image Understanding | volume = 96 | issue = 3 | pages = 367-392 | year = 2004 | publisher = Elsevier | first1 = C. H. | last1 = Esteban | first2 = F. | last2 = Schmitt}}</ref>,
a multi-grid method,<ref name=":HanxIETIP07"> {{Cite journal | title = Fast numerical scheme for gradient vector flow computation using a multigrid method | journal = IET Image Processing | year = 2007 | volume = 1 | pages = 48-55 | issue = 1 | first1 = X. | last1 = Han | first2 = C. | last2 = Xu | first3 = J.L. | last3 = Prince}}</ref>, and an augmented Lagrangian method.<ref name=":RenxPRL12"> {{Cite journal | title = Fast gradient vector flow computation based on augmented Lagrangian method | last1 = Ren | first1 = D. | last2 = Zuo | first2 = W. | last3 = Zhao | first3 = X. | last4 = Lin | first4 = Z. | last5 = Zhang | first5 = D. | journal = Pattern Recognition Letters | volume = 34 | issue = 2 | pages = 219-225 | year = 2013 | publisher = Elsevier}}</ref>. In addition, very fast GPU implementations have been developed in<ref name=":SmixJRTIP15"> {{Cite journal | title = Real-time gradient vector flow on GPUs using OpenCL | last1 = Smistad | first1 = E. | last2 = Elster | first2 = A.C. | last3 = Lindseth | first3 = F. | journal = Journal of Real-Time Image Processing | volume = 10 | issue = 1 | pages = 67-74 | year = 2015 | publisher = Springer}}</ref><ref name=":SmixJRTIP16"> {{Cite journal | title = Multigrid gradient vector flow computation on the GPU | last1 = Smistad | first1 = E. | last2 = Lindseth | first2 = F. | journal = Journal of Real-Time Image Processing | volume = 12 | issue = 3 | pages = 593-601 | year = 2016 | publisher=Springer}}</ref>
 
'''Extensions and Advances.''' GVF is easily extended to higher dimensions. The energy function is readily written in a vector form as