i3dlib

Documentation

Distance transform


Functions

template<typename T>
void i3d::EDM (Image3d< T > &Obraz, byte kvalita=0, T Image_background=0, bool odmocnina=false)
 Computes the distance transform for binary images.
template<typename T>
void i3d::HybridSaito (Image3d< T > &Obraz, byte kvalita=0, T Image_background=0, bool odmocnina=false)
 Computes the distance transform for binary images.
template<typename T>
void i3d::SlowSaito (Image3d< T > &Obraz, T Image_background=0, bool odmocnina=false)
 Computes the distance transform for binary images.
template<typename T>
void i3d::FastSaito (Image3d< T > &Obraz, T Image_background=0, bool odmocnina=false)
 Computes the distance transform for binary images.

Function Documentation

template<typename T>
void i3d::EDM ( Image3d< T > &  Obraz,
byte  kvalita = 0,
Image_background = 0,
bool  odmocnina = false 
)

Computes the distance transform for binary images.

This function cumputes Euclidean distance transform. This function is established on Danielsson's algoritms for 2D images and Corner EDM for 3D images.

The parameters are:

  • Image3d<T>& Obraz - reference to input image from which is the distance transform computed and the result is saved to. The value of T should be float or double.
  • byte kvalita - This parameter determines what kind of neighbour is supposed to be used. For value 0 is used 4-neighbour (for 2D images) and 6-neighbour (for 3D images). For value != 0 is used 8-neighbour (for 2D images) and 26-neighbour (for 3D images)
  • T Image_background - This parametr determines what kind of color is used for image background
  • bool odmocnina - This parameter determines if the result is supposed to be extracted the root.
The implementation of this function is based on articles
Per-Erik Danielsson, Euclidean Distance Mapping , Departmnet of Electrical Engineering, Linkoping University 1980. Ingemar Ragnemalm, The Euclidean distance transform in arbitrary dimensions , Image Processing Group. Dept. of EE, Linkoping University 1992

Author:
Jan Havelka 60609@mail.muni.cz
Date:
28. 11. 2005

template<typename T>
void i3d::FastSaito ( Image3d< T > &  Obraz,
Image_background = 0,
bool  odmocnina = false 
)

Computes the distance transform for binary images.

This function cumputes Euclidean distance transform. This function is implemantation of fast version of Saito's algorithm that is presented in Saito's article.

The parameters are:

  • Image3d<T>& Obraz - reference to input image from which is the distance transform computed and the result is saved to. The value of T should be float or double.
  • T Image_background - This parametr determines what kind of color is used for image background
  • bool odmocnina - This parameter determines if the result is supposed to be extracted the root.
The implementation of this function is based on article
Toyofumi Saito and Jun-Ichiro Toriwaki, New algoritms for euclidean distance transformation of an n-dimensional digitized picture with applications , Department of Informatin Engineering, Faculty of Engineering, Nagoya University 1994

Author:
Jan Havelka 60609@mail.muni.cz
Date:
28. 11. 2005

template<typename T>
void i3d::HybridSaito ( Image3d< T > &  Obraz,
byte  kvalita = 0,
Image_background = 0,
bool  odmocnina = false 
)

Computes the distance transform for binary images.

This function cumputes Euclidean distance transform. This functiom combines Danielsson's algoritms(4SED or 8SED) and Saito's algoritm. Danielsson's algorithm is used for 2D images and for 3D images is used 4SED (or 8SED) for each slice and then is used the third step of Saito's algorithm.

The parameters are:

  • Image3d<T>& Obraz - reference to input image from which is the distance transform computed and the result is saved to. The value of T should be float or double.
  • byte kvalita - This parameter determines what kind of neighbour is supposed to be used. For value 0 is used 4-neighbour and for value != 0 is used 8-neighbour.
  • T Image_background - This parametr determines what kind of color is used for image background
  • bool odmocnina - This parameter determines if the result is supposed to be extracted the root.
The implementation of this function is based on article
Oliver Cuisenaire, Distance transformations: Fast algoritms and applications to medical image processing , 1999

Author:
Jan Havelka 60609@mail.muni.cz
Date:
28. 11. 2005

template<typename T>
void i3d::SlowSaito ( Image3d< T > &  Obraz,
Image_background = 0,
bool  odmocnina = false 
)

Computes the distance transform for binary images.

This function cumputes Euclidean distance transform. This function is implemantation of version 3 of Saito's algorithm that is presented in Saito's article.

The parameters are:

  • Image3d<T>& Obraz - reference to input image from which is the distance transform computed and the result is saved to. The value of T should be float or double.
  • T Image_background - This parametr determines what kind of color is used for image background
  • bool odmocnina - This parameter determines if the result is supposed to be extracted the root.
The implementation of this function is based on article
Toyofumi Saito and Jun-Ichiro Toriwaki, New algoritms for euclidean distance transformation of an n-dimensional digitized picture with applications , Department of Informatin Engineering, Faculty of Engineering, Nagoya University 1994

Author:
Jan Havelka 60609@mail.muni.cz
Date:
28. 11. 2005