#include <GaussianBlurring.h>
Public Member Functions | |
GaussianBlurring (double=1.) | |
Constructor. | |
GaussianBlurring (double, double, double=0., double=0.) | |
Constructor. | |
virtual void | SetSigma (double) |
Set sigma. | |
virtual void | SetSigma (double, double, double=0., double=0.) |
Set sigma. | |
~GaussianBlurring () | |
Destructor. | |
Public Member Functions inherited from mirtk::SeparableConvolution< TVoxel > | |
bool | CheckKernel (const KernelType *) const |
Check if given kernel is valid. | |
void | Kernel (const KernelType *) |
Set isotropic convolution kernel for all dimensions. | |
virtual void | Run () |
Convolve image. | |
virtual void | RunT () |
Convolve image along t only. | |
virtual void | RunX () |
Convolve image along x only. | |
virtual void | RunY () |
Convolve image along y only. | |
virtual void | RunZ () |
Convolve image along z only. | |
SeparableConvolution (const KernelType *k=nullptr) | |
SeparableConvolution (const KernelType *kx, const KernelType *ky, const KernelType *kz=nullptr, const KernelType *kt=nullptr) | |
~SeparableConvolution () | |
Destructor. | |
Public Member Functions inherited from mirtk::ImageToImage< TVoxel > | |
ImageToImage () | |
Constructor. | |
virtual bool | RequiresBuffering () const |
virtual double | Run (int, int, int, int=0) |
Run filter on single voxel. | |
virtual | ~ImageToImage () |
Destructor. | |
Public Member Functions inherited from mirtk::Object | |
virtual const char * | NameOfClass () const =0 |
Get name of class, which this object is an instance of. | |
virtual ParameterList | Parameter () const |
Get parameter name/value pairs. | |
bool | Parameter (const ParameterList &) |
Set parameters from name/value pairs. | |
virtual bool | Set (const char *name, const char *value) |
virtual | ~Object () |
Destructor. | |
Static Public Member Functions | |
static int | KernelSize (double) |
Kernel size used for a given sigma (divided by voxel size) | |
Static Public Member Functions inherited from mirtk::Object | |
static const char * | NameOfType () |
Get name of this class type. | |
Protected Types | |
typedef SeparableConvolution< TVoxel >::KernelType | KernelType |
Type of convolution kernels. | |
Protected Member Functions | |
virtual void | Initialize () |
Initialize filter. | |
UniquePtr< KernelType > | InitializeKernel (double) |
Initialize 1D Gaussian kernel with sigma given in voxel units. | |
mirtkAttributeMacro (double, SigmaX) | |
Standard deviation of Gaussian kernel in x. | |
mirtkAttributeMacro (double, SigmaY) | |
Standard deviation of Gaussian kernel in y. | |
mirtkAttributeMacro (double, SigmaZ) | |
Standard deviation of Gaussian kernel in z. | |
mirtkAttributeMacro (double, SigmaT) | |
Standard deviation of Gaussian kernel in t. | |
Protected Member Functions inherited from mirtk::SeparableConvolution< TVoxel > | |
virtual void | Finalize () |
Finalize filter. | |
mirtkPublicAggregateMacro (const KernelType, KernelX) | |
Convolution kernel along x axis. | |
mirtkPublicAggregateMacro (const KernelType, KernelY) | |
Convolution kernel along y axis. | |
mirtkPublicAggregateMacro (const KernelType, KernelZ) | |
Convolution kernel along z axis. | |
mirtkPublicAggregateMacro (const KernelType, KernelT) | |
Convolution kernel along t axis. | |
mirtkPublicAttributeMacro (bool, Normalize) | |
Whether to normalize kernels. | |
mirtkPublicAttributeMacro (bool, UseBackgroundMask) | |
mirtkPublicAttributeMacro (bool, UseBackgroundValue) | |
mirtkPublicAttributeMacro (bool, UsePaddingValue) | |
mirtkPublicAttributeMacro (double, PaddingValue) | |
Padding value. | |
mirtkPublicAttributeMacro (int, Components) | |
Protected Member Functions inherited from mirtk::ImageToImage< TVoxel > | |
void | Initialize (bool) |
mirtkAggregateMacro (ImageType, Buffer) | |
Buffer. | |
mirtkPublicAggregateMacro (const ImageType, Input) | |
Input image for filter. | |
mirtkPublicAggregateMacro (ImageType, Output) | |
Output image for filter. | |
Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
void | Throw (ErrorType err, const char *func, Args... args) const |
Additional Inherited Members | |
Public Types inherited from mirtk::SeparableConvolution< TVoxel > | |
typedef GenericImage< RealPixel > | KernelType |
Type of convolution kernel. | |
Public Types inherited from mirtk::ImageToImage< TVoxel > | |
typedef GenericImage< VoxelType > | ImageType |
Input/output image type. | |
typedef TVoxel | VoxelType |
Input/output image voxel type. | |
Static Protected Member Functions inherited from mirtk::Object | |
template<typename... Args> | |
static void | ThrowStatic (ErrorType err, const char *cls, const char *func, Args... args) |
Class for Gaussian blurring of images
This class defines and implements the Gaussian blurring of images. The blurring is implemented by three successive 1D convolutions with a 1D Gaussian kernel.
By default, if one isotropic Gaussian standard deviation is specified, the first three dimensions of the image are blurred only. Otherwise, the 1D convolution with a 1D Gaussian kernel is performed only for dimensions of more than one voxel size and for which a non-zero standard deviation for the Gaussian kernel has been set.
Definition at line 44 of file GaussianBlurring.h.