FAST: framework for heterogeneous medical image computing and visualization

  • Erik Smistad
  • Mohammadmehdi Bozorgi
  • Frank Lindseth
Original Article



Computer systems are becoming increasingly heterogeneous in the sense that they consist of different processors, such as multi-core CPUs and graphic processing units. As the amount of medical image data increases, it is crucial to exploit the computational power of these processors. However, this is currently difficult due to several factors, such as driver errors, processor differences, and the need for low-level memory handling. This paper presents a novel FrAmework for heterogeneouS medical image compuTing and visualization (FAST). The framework aims to make it easier to simultaneously process and visualize medical images efficiently on heterogeneous systems.


FAST uses common image processing programming paradigms and hides the details of memory handling from the user, while enabling the use of all processors and cores on a system. The framework is open-source, cross-platform and available online.


Code examples and performance measurements are presented to show the simplicity and efficiency of FAST. The results are compared to the insight toolkit (ITK) and the visualization toolkit (VTK) and show that the presented framework is faster with up to 20 times speedup on several common medical imaging algorithms.


FAST enables efficient medical image computing and visualization on heterogeneous systems. Code examples and performance evaluations have demonstrated that the toolkit is both easy to use and performs better than existing frameworks, such as ITK and VTK.


GPU Parallel Medical Image Computing  Visualization Heterogeneous OpenCL 



This project has received funding from the European Union’s Seventh Framework Programme for research, technological development and demonstration under Grant Agreement No. 610425. The hardware used in this project was funded by the MedIm (Norwegian Research School in Medical Imaging) Travel and Research Grant.

Conflict of interest

Erik Smistad, Mohammadmehdi Bozorgi and Frank Lindseth declare that they have no conflict of interest.


  1. 1.
    Adams R, Bischof L (1994) Seeded region growing. IEEE Trans Pattern Anal Mach Intell 16(6):641–647CrossRefGoogle Scholar
  2. 2.
    Beare R, Micevski D, Share C, Parkinson L, Ward P, Goscinski W, Kuiper M (2011) CITK - an architecture and examples of CUDA enabled ITK filters. Insight J 2011(Jan-June):1–8Google Scholar
  3. 3.
    Besl PJ, McKay ND (1992) A method for registration of 3-D shapes. IEEE Trans Pattern Anal Mach Intell 14(2):239–256Google Scholar
  4. 4.
    Bozorgi M, Lindseth F (2014) GPU-based multi-volume ray casting within VTK for medical applications. Int J Comput Assist Radiol Surg. doi: 10.1007/s11548-014-1069-x
  5. 5.
    Catch. C++ automated test cases in headers. Accessed 10 Oct 2014
  6. 6.
    Consortium for open medical image computing. Grand challenges in biomedical image analysis. Accessed 25 Nov 2014
  7. 7.
    Eklund A, Dufort P, Forsberg D, Laconte SM (2013) Medical image processing on the GPU–Past, present and future. Med Image Anal 17(8):1073–1094CrossRefPubMedGoogle Scholar
  8. 8.
    Gonzalez RC, Woods RE (2008) Digital image processing, 3rd edn. Pearson Prentice Hall, New JerseyGoogle Scholar
  9. 9.
    Ibanez L, Schroeder W (2004) The ITK software guide, 2.4th edn. Kitware, Chapel HillGoogle Scholar
  10. 10.
    Kitware. Insight toolkit (ITK). Accessed 18 Aug 2014
  11. 11.
    Kitware. ITK release 4 GPU acceleration. Accessed 10 Oct 2014
  12. 12.
    Kitware. Visualization toolkit (VTK). Accessed 18 Aug 2014
  13. 13.
    Koenig M, Spindler W, Rexilius J, Jomier J, Link F, Peitgen H-O (2006) Embedding VTK and ITK into a visual programming and rapid prototyping platform. In: Proceedings of SPIE, vol. 6141, pp 61412O–61412O-11Google Scholar
  14. 14.
    Membarth R, Hannig F, Teich J, Körner M, Eckert W (2012) Generating device-specific GPU code for local operators in medical imaging. In: Proceedings of the 26th IEEE international parallel & distributed processing symposium (IPDPS), number section IIIGoogle Scholar
  15. 15.
    MeVis Medical Solutions AG. MeVisLab. Accessed 26 Jan 2015
  16. 16.
    Mildenberger P, Eichelberg M, Martin E (2002) Introduction to the DICOM standard. Eur Radiol 12:920–927CrossRefPubMedGoogle Scholar
  17. 17.
    Neuroimaging Informatics Technology Initiative. NIfTI-1 data format. Accessed 26 Jan 2015
  18. 18.
    NVIDIA Corporation. CUDA. Accessed 26 Jan 2015
  19. 19.
    Owens J, Houston M, Luebke D, Green S, Stone J, Phillips J (2008) GPU computing. In: Proceedings of the IEEE 96(5):879–899Google Scholar
  20. 20.
    Pulli K, Baksheev A, Kornyakov K, Eruhimov V (2012) Real-time computer vision with OpenCV. Commun ACM 55(6):61CrossRefGoogle Scholar
  21. 21.
    Schroeder W, Martin K, Lorensen B (2006) Visualization toolkit: an object-oriented approach to 3D graphics, 4th edn. Kitware, Chapel HillGoogle Scholar
  22. 22.
    Smistad E, Elster AC, Lindseth F (2012) Real-time gradient vector flow on GPUs using OpenCL. J Real-Time Image Process, 1–8Google Scholar
  23. 23.
    Smistad E, Elster AC, Lindseth F (2012) Real-Time Surface Extraction and Visualization of Medical Images using OpenCL and GPUs. Norsk informatikkonferanse, 141–152. Akademika forlagGoogle Scholar
  24. 24.
    Smistad E, Elster AC, Lindseth F (2014) GPU accelerated segmentation and centerline extraction of tubular structures from medical images. Int J Comput Assist Radiol Surg 9(4):561–575CrossRefPubMedGoogle Scholar
  25. 25.
    Smistad E, Falch TL, Bozorgi M, Elster AC, Lindseth F (2015) Medical image segmentation on GPUs—a comprehensive review. Med Image Anal 20(1):1–18CrossRefPubMedGoogle Scholar
  26. 26.
    Smistad E, Lindseth F (2014) A new tube detection filter for abdominal aortic aneurysms. In: Proceedings of MICCAI 2014 workshop on abdominal imaging: computational and clinical applicationsGoogle Scholar
  27. 27.
    Smistad E, Lindseth F (2014) Multigrid gradient vector flow computation on the GPU. J Real-Time Image ProcessGoogle Scholar
  28. 28.
    Smistad E, Lindseth F (2014) Real-time tracking of the left ventricle in 3D ultrasound using kalman filter and mean value coordinates. In: Proceedings MICCAI challenge on echocardiographic three-dimensional ultrasound segmentation (CETUS), pp 65–72, BostonGoogle Scholar
  29. 29.
    The Khronos Group. OpenCL. Accessed 26 Jan 2015

Copyright information

© CARS 2015

Authors and Affiliations

  • Erik Smistad
    • 1
    • 2
  • Mohammadmehdi Bozorgi
    • 1
  • Frank Lindseth
    • 1
    • 2
  1. 1.Department of Computer and Information ScienceNorwegian University of Science and TechnologyTrondheimNorway
  2. 2.SINTEF Medical TechnologyTrondheimNorway

Personalised recommendations