Journal of Real-Time Image Processing

, Volume 12, Issue 3, pp 593–601 | Cite as

Multigrid gradient vector flow computation on the GPU

  • Erik Smistad
  • Frank Lindseth
Original Research Paper


Gradient vector flow (GVF) is a feature-preserving spatial diffusion of image gradients. It was introduced to overcome the limited capture range in traditional active contour segmentation. However, the original iterative solver for GVF, using Euler’s method, converges very slowly. Thus, many iterations are needed to achieve the desired capture range. Several groups have investigated the use of graphic processing units (GPUs) to accelerate the GVF computation. Still, this does not reduce the number of iterations needed. Multigrid methods, on the other hand, have been shown to provide a much better capture range using considerable less iterations. However, non-GPU implementations of the multigrid method are not as fast as the Euler method when executed on the GPU. In this paper, a novel GPU implementation of a multigrid solver for GVF written in OpenCL is presented. The results show that this implementation converges and provides a better capture range about 2–5 times faster than the conventional iterative GVF solver on the GPU.


Gradient vector flow GPU Multigrid 


  1. 1.
    Advanced Micro Devices. AMD Accelerated Parallel Processing OpenCL Programming Guide. Technical Report November, 2013. Accessed 8 Aug 2013
  2. 2.
    Alvarado, R., Tapia, J.J., Rolón, J.C.: Medical image segmentation with deformable models on graphics processing units. J. Supercomput. 68(1), 339–364 (2013)CrossRefGoogle Scholar
  3. 3.
    Bauer, C., Bischof, H.: A novel approach for detection of tubular objects and its application to medical image analysis. In: Proceedings of the 30th DAGM Symposium on Pattern Recognition, pp. 163–172. Springer, New York (2008)Google Scholar
  4. 4.
    Bauer, C., Bischof, H.: Extracting curve skeletons from gray value images for virtual endoscopy. In: Proceedings of the 4th International Workshop on Medical Imaging and Augmented Reality, pp. 393–402. Springer, New York (2008)Google Scholar
  5. 5.
    Bolz, J., Farmer, I., Grinspun, E., Schröder, P.: Sparse matrix solvers on the GPU: conjugate gradients and multigrid. In: Proceedings of ACM Transactions on Graphics (TOG), Proceedings of ACM SIGGRAPH 2003, vol. 22, issue 3, pp. 917–924 (2003)Google Scholar
  6. 6.
    Eidheim, O.C., Skjermo, J., Aurdal, L.: Real-time analysis of ultrasound images using GPU. Int. Congr. Ser. 1281, 284–289 (2005)CrossRefGoogle Scholar
  7. 7.
    Grossauer, H., Thoman, P.: GPU-based multigrid: real-time performance in high resolution nonlinear image processing. Comput. Vis. Syst. 5008, 141–150 (2008)CrossRefGoogle Scholar
  8. 8.
    Guo, Y., Lu, C.-C.: Multi-modality image registration using mutual information based on gradient vector flow. In: Proceedings of 18th International Conference on Pattern Recognition (ICPR’06), IEEE, pp. 697–700 (2006)Google Scholar
  9. 9.
    Han, X., Xu, C., Prince, J.L.: Fast numerical scheme for gradient vector flow computation using a multigrid method. Image Process. IET 1(1):48–55 (2007)Google Scholar
  10. 10.
    Hassouna, M.S., Farag, A.A.: On the extraction of curve skeletons using gradient vector flow. In: Proceedings of IEEE 11th International Conference on Computer Vision, IEEE, pp. 1–8 (2007)Google Scholar
  11. 11.
    He, Z., Kuester, F.: GPU-based active contour segmentation using gradient vector flow. In: Proceedings of Advances in Visual Computing, pp. 191–201. (2006)Google Scholar
  12. 12.
    Kass, M., Witkin, A., Terzopoulos, D.: Snakes: active contour models. Int. J. Comput. Vis. 1(4), 321–331 (1988)CrossRefzbMATHGoogle Scholar
  13. 13.
    NVIDIA. OpenCL Best Practices Guide. Technical report, 2010. Accessed 8 Aug 2013
  14. 14.
    Ray, N., Acton, S.T.: Motion gradient vector flow: an external force for tracking rolling leukocytes with shape and size constrained active contours. IEEE Trans. Med. Imaging 23(12):1466–1478 (2004)Google Scholar
  15. 15.
    Smistad, E., Elster, A.C., Lindseth, F.: GPU-based airway segmentation and centerline extraction for image guided bronchoscopy. In: Proceedings of Norsk Informatikkonferanse, pp. 129–140. Akademika forlag (2012)Google Scholar
  16. 16.
    Smistad, E., Elster, A.C., Lindseth, F.: Real-time gradient vector flow on GPUs using OpenCL. J. Real-Time Image Process. pp. 1–8 (2012)Google Scholar
  17. 17.
    Smistad, E., Elster, A.C., Lindseth, F.: GPU accelerated segmentation and centerline extraction of tubular structures from medical images. Int. J. Comput. Assist. Radiol. Surg. 9(4), 561–575 (2014)CrossRefGoogle Scholar
  18. 18.
    Smistad, E., Lindseth, F.: A new tube detection filter for abdominal aortic aneurysms. In: Proceedings of MICCAI 2014 Workshop on Abdominal Imaging: Computational and Clinical Applications (2014)Google Scholar
  19. 19.
    Xu, C., Prince, J.L.: Snakes, shapes, and gradient vector flow. IEEE Trans. Image Process. 7(3), 359–369 (1998)MathSciNetCrossRefzbMATHGoogle Scholar
  20. 20.
    Zheng, Z., Zhang, R.: A fast GVF snake algorithm on the GPU. Res. J. Appl. Sci. Eng. Technol. 4(24), 5565–5571 (2012)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  1. 1.Department of Computer and Information ScienceNorwegian University of Science and TechnologyTrondheimNorway
  2. 2.SINTEF Medical TechnologyTrondheimNorway

Personalised recommendations