Open-source package for fast generalised geodesic distance transform

Muhammad led the development of FastGeodis, an open-source package that provides efficient implementations for computing Geodesic and Euclidean distance transforms (or a mixture of both), targetting efficient utilisation of CPU and GPU hardware. This package is able to handle 2D as well as 3D data, where it achieves up to a 20x speedup on a CPU and up to a 74x speedup on a GPU as compared to an existing open-source library that uses a non-parallelisable single-thread CPU implementation. Further in-depth comparison of performance improvements is discussed in the FastGeodis documentation.

Raster scan data propagation psses in FastGeodis.
Raster scan data propagation psses in FastGeodis.

Our publication in Journal of Open Source Software details the summary, statement of need, and high-level implementation details of our FastGeodis package. The FastGeodis package is implemented using PyTorch (Paszke et al., 2019), utilising OpenMP for CPU- and CUDA for GPU-parallelisation of the algorithm. It is accessible as a Python package that can be installed across different operating systems and devices. Comprehensive documentation and a range of examples are provided for understanding the usage of the package on 2D and 3D data using CPUs or GPUs. Two- and three-dimensional examples are provided for Geodesic, Euclidean, and Signed Geodesic distance transforms as well as for computing Geodesic Symmetric Filtering (GSF), the essential first step in implementing the interactive segmentation method described in Criminisi et al. (2008). A further in-depth overview of the implemented algorithm, along with evaluation on common 2D/3D data input sizes, is provided in the FastGeodis [documentation]((https://fastgeodis.readthedocs.io/).

Muhammad Asad
Muhammad Asad
Alumni

Muhammad’s research interests include probabilistic machine learning, computer assisted diagnosis, image segmentation and neural network optimisation.

Reuben Dorent
Reuben Dorent
Alumni

Reuben is a PhD student supervised by Prof. Tom Vercauteren and Prof. Sebastien Ourselin. Reuben’s research focuses on collaborative learning of joint tasks from various medical centres with different local resources.

Tom Vercauteren
Tom Vercauteren
Professor of Interventional Image Computing

Tom’s research interests include machine learning and computer assisted interventions