ITK Pre-Processing Algorithm Wrappers in Python
Introduction
There are various pre-processing algorithms in the Insight Segmentation and Registration Toolkit (ITK). Python wraps for these algorithms exist; however, from a user's perspective, it is complicated and not so easy to run these algorithms. We intend to provide a Python script that can be used for invoking the Python wrappers to many of these algorithms, using a very simple interface. The user can just specify the smoothing algorithm to be used. For the parameters, the user can give the name of an XML file containing details of the algorithm, or alternatively, enter the details using a simple GUI. This page contains details about the algorithms that can be run using these scripts, and also help on how to run these scripts.
Here is a list of the pre-processing algorithms that have been added to the interface.
Algorithm Name | Algorithm key | ITK Class Name |
---|---|---|
Mean | Mean | itkMeanImageFilter |
Median | Median | itkMedianImageFilter |
Laplacian | Laplacian | itkLaplacianImageFilter |
Smoothing Recursive Gaussian | SmoothingRecursiveGaussian | itkSmoothingRecursiveGaussianImageFilter |
Grayscale Erode | GrayscaleErode | itkGrayscaleErodeImageFilter |
Grayscale Dilate | GrayscaleDilate | itkGrayscaleDilateImageFilter |
Flip | Flip | itkFlipImageFilter |
Normalize | Normalize | itkNormalizeFilter |
Shift and scale | ShiftScale | itkShiftScaleImageFilter |
Sobel Edge Detection | SobelEdgeDetection | itkSobelEdgeDetectionImageFilter |
Sigmoid | Sigmoid | itkSigmoidImageFilter |
Gradient Anisotropic Diffusion | GradientAnisotropicDiffusion | itkGradientAnisotropicDiffusionImageFilter |
Curvature Anisotropic Diffusion | CurvatureAnisotropicDiffusion | itkCurvatureAnisotropicDiffusionImageFilter |
Curvature Flow | CurvatureFlow | itkCurvatureFlowImageFilter |
Min-max Curvature Flow | MinMaxCurvatureFlow | itkMinMaxCurvatureFlowImageFilter |
How to run the scripts?
All the scripts are written in Python, and to run these one must have a version of Python installed in their machine. In addition, one should also have an installation of ITK along with the Python wrappers using CSwig enabled. For more details about how to install ITK with the Python wraps, please visit the |ITK Python Wrapping page. Please note that the Python that is used for running the scripts mentioned in this page, and the Python version used in the ITK installation should be the same. Once these are setup, we move to actually run the scripts.