Abstract
The level-set method, a technique for the computation of evolving interfaces, is a solution commonly used to segment images and volumes in medical applications. GPUs have become a commodity hardware with hundreds of cores that can execute thousands of threads in parallel, and they are nowadays ideal platforms to execute computational intensive tasks, such as the 3D level-set-based segmentation, in real time. In this paper, we propose two GPU implementations of the level-set-based segmentation method called Fast Two-Cycle. Our proposals perform computations in independent domains called tiles and modify the structure of the original algorithm to better exploit the features of the GPU. The implementations were tested with real images of brain vessels and a synthetic MRI image of the brain. Results show that they execute faster than a CPU-sequential implementation of the same method, without any significant loss of the segmentation quality and without requiring distributed parallel computer infrastructures.

















Similar content being viewed by others
References
Adalsteinsson, D., Sethian, J.A.: A fast level set method for propagating interfaces. J Computational Phys 118(2), 269–277 (1995)
BrainWeb simulated brain database. http://www.bic.mni.mcgill.ca/brainweb/
Bridson, R.E. (ed.): Computational aspects of dynamic surfaces. Ph.D. thesis, Standford University, Standford (2003)
Courant, R., Isaacson, E., Rees, M.: On the solution of nonlinear hyperbolic differential equations by finite differences. Commun Pure Appl Math 5(3), 243–255 (1952)
Dice, L.R.: Measures of the amount of ecologic association between species. Ecology 26(3), 297–302 (1945)
GeForce GTX 280 specifications. http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-280/specifications
GeForce GTX 295 specifications. http://www.geforce.com/hardware/desktop-gpus/geforce-gtx-295/specifications
GPGPU. http://gpgpu.org/
Harris, M., Segupta, S., Owens, J.D.: GPU Gems 3, chap. Parallel prefix sum (scan) with CUDA. Addison Wesley (2007)
Intel Corporation, Santa Clara, California, USA. Intel 64 and IA-32 Architectures Software Developer’s Manual, System Programming Guide (2011)
Jeong, W.K., Beyer, J., Hadwiger, M., Vazquez, A., Pfister, H., Whitaker, R.T.: Scalable and interactive segmentation and visualization of neural processes in EM datasets. IEEE Trans Visual Comp Graph 15(6), 1505–1514 (2009)
Kirk, D.B., Hwu, W.M.W.: Programming massively parallel processors: a hands-on approach. Elsevier, Massachussets (2010)
Jalba, A.C., van der Laan, W.J., Roerdink, J.B.T.M.: Fast sparse level-set on graphics hardware. IEEE Trans Visual Comp Graph 99 (2012). PrePrints
van der Laan W.J., Jalba A.C., Roerdink J.B.T.M.: A memory and computation efficient sparse level-set method. J Sci Comp 46(2), 1–22 (2011)
Landis, J.R., Koch, G.G.: The measurement of observer agreement for categorical data. Biometrics 33(1), 159–174 (1977)
Lefohn, A.E., Cates, J.E., Whitaker, R.T.: Interactive, GPU-based level sets for 3D brain tumor segmentation. Tech. rep., University of Utah, School of Computing (2003)
Lefohn, A.E., Kniss, J.M., Hansen, C.D., Whitaker, R.T.: A streaming narrow-band algorithm: Interactive computation and visualization of level sets. IEEE Trans Visual Comp Graph 10(4), 422–433 (2004)
Lindholm, E., Nickolls, J., Oberman, S., Montrym, J.: NVIDIA Tesla: a unified graphics and computing architecture. IEEE Micro 28(2), 39–55 (2008)
Lucas, B.C., Kazhdan, M., Taylor, R.H.: Multi-object geodesic active contours (MOGAC): a parallel sparse-field algorithm for image segmentation. Tech. rep., Johns Hopkins University, Department of Computer Science (2012)
Min C.: Local level set method in high dimension and codimension. J Comput Phys 200(1), 368–382 (2004)
Nickolls, J., Dally, W.J.: The GPU computing era. IEEE Micro 30(2), 56–69 (2010)
NVIDIA GeForce GTX 580 GPU datasheet, NVIDIA, Santa Clara (2010)
CUDA C best practices guide (version 4.0), NVIDIA, Santa Clara (2011)
CUDA C programming guide (version 4.0), NVIDIA, Santa Clara (2011)
OpenCL: the open standard for parallel programming of heterogeneous systems. http://www.khronos.org/opencl/
Osher, S., Paragios, N.: Geometric level set methods in imaging, vision, and graphics. Springer-Verlag New York, Inc., Secaucus (2003)
Osher, S., Sethian, J.A.: Fronts propagating with curvature-dependent speed: Algorithms based on Hamilton–Jacobi formulations. J Comput Phys 79, 12–49 (1988)
Owens, J.D., Houston, M., Luebke, D., Green, S., Stone, J.E., Phillips, J.C.: GPU computing. Proc IEEE 96(5):879–899 (2008)
Parallel programming and computing platform, CUDA, NVIDIA. http://www.nvidia.com/object/cuda_home_new.html
Peng, D., Merriman, B., Osher, S., Zhao, H., Kang, M.: A PDE-based fast local level set method. J Comput Phys 155(2), 410–438 (1999)
Roberts, M., Packer, J., Sousa, M.C., Mitchell, J.R.: A work-efficient GPU algorithm for level set segmentation. In: Proceedings of the Conference on High Performance Graphics, HPG ’10. pp. 123–132. Eurographics Association, Saarbrucken (2010)
Rumpf, M., Strzodka, R.: Level set segmentation in graphics hardware. In: Proceedings of IEEE International Conference on Image Processing, ICIP’ 01. pp. 1103–1106. IEEE, Thessaloníki (2001)
Sethian, J.A.: Level set methods and fast marching methods: evolving interfaces in computational fluid mechanics, computer vision, and materials science. Cambridge University Press, Cambridge (1996)
Shi, Y., Karl, W.C.: A real-time algorithm for the approximation of level-set-based curve evolution. IEEE Trans Image Process 17(5), 645–656 (2008)
Strain, J.: Semi-Lagrangian methods for level set equations. J Comput Phys 151(2), 498–533 (1999)
Strain, J.: Tree methods for moving interfaces. J Comput Phys 151(2), 616–648 (1999)
Strain, J.: A fast modular semi-Lagrangian method for moving interfaces. J Comput Phys 161(2), 512–536 (2000)
The Stanford 3D scanning repository. http://graphics.stanford.edu/data/3Dscanrep/
Thrust. http://code.google.com/p/thrust/
Tornai, G.J., Cserey, G.: 2D and 3D level-set algorithms on GPU. In: Proceedings of the 12th International Workshop on Cellular Nanoscale and their Applications, pp. 1–5. CNNA ’10. IEEE, Berkeley (2010)
Whitaker, R.T.: Volumetric deformable models: active blobs. In: Visualization in Biomedical Computing 1994, Society of Photo-Optical Instrumentation Engineers (SPIE) Conference Series. pp. 122–134. SPIE, Rochester (1994)
Whitaker, R.T.: A level-set approach to 3D reconstruction from range data. Intern J Comp Vis 29(3), 203–231 (1998)
ZibAmira: Amira for research partners. http://amira.zib.de/
Zijdenbos, A.P., Dawant, B.M., Mangolin, R.A., Palmer, A.C.: Morphometric analysis of white matter lesions in MR images: method and validation. IEEE Trans Med Imag 13(4), 716–724 (1994)
Acknowledgments
This work was supported in part by the Ministry of Science and Innovation, Government of Spain, and FEDER funds under contract TIN 2010-17541, and by the Xunta de Galicia under contracts 08TIC001206PR and 2010/28. Julián Lamas-Rodríguez acknowledges financial support from the Ministry of Science and Innovation, Government of Spain, under a MICINN-FPI grant.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Lamas-Rodríguez, J., Heras, D.B., Argüello, F. et al. GPU-accelerated level-set segmentation. J Real-Time Image Proc 12, 15–29 (2016). https://doi.org/10.1007/s11554-013-0378-6
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11554-013-0378-6