Skip to main content

GeodisTK: Geodesic Distance Transform Toolkit for 2D and 3D Images

Geodesic transformation of images can be implementated with two approaches: fast marching and raster scan. Fast marching is based on the iterative propagation of a pixel front with velocity F [1]. Raster scan is based on kernel operations that are sequentially applied over the image in multiple passes [2][3]. In GeoS [4], the authors proposed to use a 3x3 kernel for forward and backward passes for efficient geodesic distance transform, which was used for image segmentation.

ranster scan Raster scan for geodesic distance transform. Image from [4].

DeepIGeoS [5] proposed to combine geodesic distance transforms with convolutional neural networks for efficient interactive segmentation of 2D and 3D images.

  • [1] Sethian, James A. "Fast marching methods." SIAM review 41, no. 2 (1999): 199-235.
  • [2] Borgefors, Gunilla. "Distance transformations in digital images." CVPR, 1986
  • [3] Toivanen, Pekka J. "New geodesic distance transforms for gray-scale images." Pattern Recognition Letters 17, no. 5 (1996): 437-450.
  • [4] Criminisi, Antonio, Toby Sharp, and Andrew Blake. "Geos: Geodesic image segmentation." ECCV, 2008.
  • [5] Wang, Guotai, et al. "DeepIGeoS: A deep interactive geodesic framework for medical image segmentation." TPAMI, 2018.

2D example

A comparison of fast marching and ranster scan for 2D geodesic distance transform. (d) shows the Euclidean distance and (e) is a mixture of Geodesic and Euclidean distance.

This toolkit provides a cpp implementation of fast marching and raster scan for 2D/3D geodesic and Euclidean distance transforms and a mixture of them, and proivdes a python interface to use it. This is part of the work of DeepIGeoS [5]. If you use our code, please cite this paper.

How to install

  1. Install this toolkit easily by typing pip install GeodisTK

  2. Alternatively, if you want to build from source files, download this package and run the following:

python setup.py build
python setup.py install

How to use

  1. See a 2D example, run python demo2d.py

  2. See a 3D example, run python demo3d.py

Metadata

Release files for GeodisTK 0.1.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for GeodisTK 0.1.7
File Size Uploaded
GeodisTK-0.1.7.tar.gz 9.6 kB Details

Release files / GeodisTK-0.1.7.tar.gz

Download URL GeodisTK-0.1.7.tar.gz
Size 9.6 kB
Tags Source
SHA-256 checksum
How to use checksums
282bd11f556a6044bf2ff2c4837e4cc01a1cdc0f990404997f83720dcba7c7d4
BLAKE2b-256 checksum
How to use checksums
0c4b214006a4675f6a2d5c78c0ad9cd78ec5d64c055f2a4f12db8c47d840abd1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.1.3 requests-toolbelt/0.9.1 tqdm/4.40.2 CPython/3.6.9

Release history Release notifications | RSS feed

This release

0.1.7 This release

1 release file

0.1.6

1 release file

0.1.5.3

1 release file

0.1.5.2

1 release file

0.1.5.1

1 release file

0.1.5

1 release file

0.1.4

1 release file

0.1.3

1 release file

0.1.2

2 release files

0.1.1

2 release files

0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page