Class DiscreteGaussianImageFilter


public class DiscreteGaussianImageFilter extends ImageFilter
Blurs an image by separable convolution with discrete gaussian kernels. This filter performs Gaussian blurring by separable convolution of an image and a discrete Gaussian operator (kernel). The Gaussian operator used here was described by Tony Lindeberg (Discrete Scale-Space Theory and the Scale-Space Primal Sketch. Dissertation. Royal Institute of Technology, Stockholm, Sweden. May 1991.) The Gaussian kernel used here was designed so that smoothing and derivative operations commute after discretization. The variance or standard deviation (sigma) will be evaluated as pixel units if SetUseImageSpacing is off (false) or as physical units if SetUseImageSpacing is on (true, default). The variance can be set independently in each dimension. When the Gaussian kernel is small, this filter tends to run faster than itk::RecursiveGaussianImageFilter . See: GaussianOperator Image Neighborhood NeighborhoodOperator RecursiveGaussianImageFilter itk::simple::DiscreteGaussian for the procedural interface itk::DiscreteGaussianImageFilter for the Doxygen on the original ITK class. C++ includes: sitkDiscreteGaussianImageFilter.h
  • Constructor Details

    • DiscreteGaussianImageFilter

      protected DiscreteGaussianImageFilter(long cPtr, boolean cMemoryOwn)
    • DiscreteGaussianImageFilter

      public DiscreteGaussianImageFilter()
      itk::simple::DiscreteGaussianImageFilter::DiscreteGaussianImageFilter() Default Constructor that takes no arguments and initializes default parameters
  • Method Details

    • getCPtr

      protected static long getCPtr(DiscreteGaussianImageFilter obj)
    • swigRelease

      protected static long swigRelease(DiscreteGaussianImageFilter obj)
    • finalize

      protected void finalize()
      Overrides:
      finalize in class ImageFilter
    • delete

      public void delete()
      virtual itk::simple::DiscreteGaussianImageFilter::~DiscreteGaussianImageFilter() Destructor
      Overrides:
      delete in class ImageFilter
    • setVariance

      public void setVariance(VectorDouble Variance)
      Self& itk::simple::DiscreteGaussianImageFilter::SetVariance(std::vector< double > Variance)
    • setVariance

      public void setVariance(double value)
      Self& itk::simple::DiscreteGaussianImageFilter::SetVariance(std::vector< double > Variance)
    • getVariance

      public VectorDouble getVariance()
      std::vector<double> itk::simple::DiscreteGaussianImageFilter::GetVariance() const The variance for the discrete Gaussian kernel. Sets the variance independently for each dimension, but see also SetVariance(const double v) . The default is 0.0 in each dimension. If UseImageSpacing is true, the units are the physical units of your image. If UseImageSpacing is false then the units are pixels.
    • setMaximumKernelWidth

      public void setMaximumKernelWidth(long MaximumKernelWidth)
      Self& itk::simple::DiscreteGaussianImageFilter::SetMaximumKernelWidth(unsigned int MaximumKernelWidth) Set the kernel to be no wider than MaximumKernelWidth pixels, even if MaximumError demands it. The default is 32 pixels.
    • getMaximumKernelWidth

      public long getMaximumKernelWidth()
      unsigned int itk::simple::DiscreteGaussianImageFilter::GetMaximumKernelWidth() const Set the kernel to be no wider than MaximumKernelWidth pixels, even if MaximumError demands it. The default is 32 pixels.
    • setMaximumError

      public void setMaximumError(VectorDouble MaximumError)
      Self& itk::simple::DiscreteGaussianImageFilter::SetMaximumError(std::vector< double > MaximumError)
    • setMaximumError

      public void setMaximumError(double value)
      Self& itk::simple::DiscreteGaussianImageFilter::SetMaximumError(std::vector< double > MaximumError)
    • getMaximumError

      public VectorDouble getMaximumError()
      std::vector<double> itk::simple::DiscreteGaussianImageFilter::GetMaximumError() const The algorithm will size the discrete kernel so that the error resulting from truncation of the kernel is no greater than MaximumError. The default is 0.01 in each dimension.
    • setUseImageSpacing

      public void setUseImageSpacing(boolean UseImageSpacing)
      Self& itk::simple::DiscreteGaussianImageFilter::SetUseImageSpacing(bool UseImageSpacing) Set/Get whether or not the filter will use the spacing of the input image in its calculations. Use On to take the image spacing information into account and to specify the Gaussian variance in real world units; use Off to ignore the image spacing and to specify the Gaussian variance in voxel units. Default is On.
    • useImageSpacingOn

      public void useImageSpacingOn()
      Self& itk::simple::DiscreteGaussianImageFilter::UseImageSpacingOn() Set the value of UseImageSpacing to true or false respectfully.
    • useImageSpacingOff

      public void useImageSpacingOff()
      Self& itk::simple::DiscreteGaussianImageFilter::UseImageSpacingOff()
    • getUseImageSpacing

      public boolean getUseImageSpacing()
      bool itk::simple::DiscreteGaussianImageFilter::GetUseImageSpacing() const Set/Get whether or not the filter will use the spacing of the input image in its calculations. Use On to take the image spacing information into account and to specify the Gaussian variance in real world units; use Off to ignore the image spacing and to specify the Gaussian variance in voxel units. Default is On.
    • getName

      public String getName()
      std::string itk::simple::DiscreteGaussianImageFilter::GetName() const Name of this class
      Overrides:
      getName in class ProcessObject
    • toString

      public String toString()
      std::string itk::simple::DiscreteGaussianImageFilter::ToString() const Print ourselves out
      Overrides:
      toString in class ProcessObject
    • execute

      public Image execute(Image image1)
      Image itk::simple::DiscreteGaussianImageFilter::Execute(const Image &image1) Execute the filter on the input image