ITK
5.0.0
Insight Segmentation and Registration Toolkit
|
#include <itkSmoothingRecursiveGaussianImageFilter.h>
Computes the smoothing of an image by convolution with the Gaussian kernels implemented as IIR filters.
This filter is implemented using the recursive gaussian filters. For multi-component images, the filter works on each component independently.
For this filter to be able to run in-place the input and output image types need to be the same and/or the same type as the RealImageType.
Definition at line 53 of file itkSmoothingRecursiveGaussianImageFilter.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool flag) |
Static Public Member Functions inherited from itk::LightObject | |
static void | BreakOnError () |
static Pointer | New () |
Static Public Attributes | |
static constexpr unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::InPlaceImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static constexpr unsigned int | InputImageDimension = TInputImage::ImageDimension |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static constexpr unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Attributes | |
CastingFilterPointer | m_CastingFilter |
FirstGaussianFilterPointer | m_FirstSmoothingFilter |
bool | m_NormalizeAcrossScale { false } |
SigmaArrayType | m_Sigma |
InternalGaussianFilterPointer | m_SmoothingFilters [ImageDimension-1] |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
using | InputToOutputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::OutputImageDimension, Self::InputImageDimension > |
using | OutputToInputRegionCopierType = ImageToImageFilterDetail::ImageRegionCopier< Self::InputImageDimension, Self::OutputImageDimension > |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_FUNCTION_CALL_CONVENTION | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ImageSource< TOutputImage > | |
bool | m_DynamicMultiThreading |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
std::atomic< int > | m_ReferenceCount |
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::CastingFilterPointer = typename CastingFilterType::Pointer |
Pointer to the casting image filter.
Definition at line 105 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::CastingFilterType = CastImageFilter< RealImageType, OutputImageType > |
Typedef for the casting image filter.
Definition at line 96 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::ConstPointer = SmartPointer< const Self > |
Definition at line 63 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::FirstGaussianFilterPointer = typename FirstGaussianFilterType::Pointer |
Pointer to the first Gaussian smoothing filter.
Definition at line 102 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::FirstGaussianFilterType = RecursiveGaussianImageFilter< InputImageType, RealImageType > |
Typedef for the first Gaussian smoothing in the pipeline.
Definition at line 90 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InputImageType = TInputImage |
Pixel type alias.
Definition at line 66 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InternalGaussianFilterPointer = typename InternalGaussianFilterType::Pointer |
Pointer to the internal Gaussian filter.
Definition at line 99 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InternalGaussianFilterType = RecursiveGaussianImageFilter< RealImageType, RealImageType > |
Typedef for the internal Gaussian smoothing filter.
Definition at line 93 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InternalRealType = typename NumericTraits< PixelType >::FloatType |
Define the image type for internal computations. RealType is usually 'double' in NumericTraits. Here we prefer float in order to save memory.
Definition at line 86 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImagePointer = typename OutputImageType::Pointer |
Pointer to the Output Image
Definition at line 108 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImageType = TOutputImage |
Definition at line 67 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::PixelType = typename TInputImage::PixelType |
Definition at line 68 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Pointer = SmartPointer< Self > |
Definition at line 62 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::RealImageType = typename InputImageType::template Rebind<InternalRealType>::Type |
Definition at line 87 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::RealType = typename NumericTraits< PixelType >::RealType |
Definition at line 69 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::ScalarRealType = typename NumericTraits< PixelType >::ScalarRealType |
Definition at line 70 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Self = SmoothingRecursiveGaussianImageFilter |
Standard class type aliases.
Definition at line 60 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SigmaArrayType = FixedArray< ScalarRealType, Self::ImageDimension > |
Define the type for the sigma array.
Definition at line 81 of file itkSmoothingRecursiveGaussianImageFilter.h.
using itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Superclass = InPlaceImageFilter< TInputImage, TOutputImage > |
Definition at line 61 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
overridevirtual |
Can the filter run in place? To do so, the filter's first input and output must have the same dimension and pixel type. This method can be used in conjunction with the InPlace ivar to determine whether a particular use of the filter is really running in place. Some filters may be able to optimize their operation if the InPlace is true and CanRunInPlace is true. CanRunInPlace may also be overridded by InPlaceImageFilter subclasses to fine tune its behavior.
Reimplemented from itk::InPlaceImageFilter< TInputImage, TOutputImage >.
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
overrideprotectedvirtual |
Give the process object a chance to indictate that it will produce more output than it was requested to produce. For example, many imaging filters must compute the entire output at once or can only produce output in complete slices. Such filters cannot handle smaller requested regions. These filters must provide an implementation of this method, setting the output requested region to the size they will produce. By default, a process object does not modify the size of the output requested region.
Reimplemented from itk::ProcessObject.
|
overrideprotectedvirtual |
A version of GenerateData() specific for image processing filters. This implementation will split the processing across multiple threads. The buffer is allocated by this method. Then the BeforeThreadedGenerateData() method is called (if provided). Then, a series of threads are spawned each calling DynamicThreadedGenerateData(). After all the threads have completed processing, the AfterThreadedGenerateData() method is called (if provided). If an image processing filter cannot be threaded, the filter should provide an implementation of GenerateData(). That implementation is responsible for allocating the output buffer. If a filter can be threaded, it should NOT provide a GenerateData() method but should provide a DynamicThreadedGenerateData() instead.
Reimplemented from itk::ImageSource< TOutputImage >.
|
overrideprotectedvirtual |
SmoothingRecursiveGaussianImageFilter needs all of the input to produce an output. Therefore, SmoothingRecursiveGaussianImageFilter needs to provide an implementation for GenerateInputRequestedRegion in order to inform the pipeline execution model.
Reimplemented from itk::ImageToImageFilter< TInputImage, TOutputImage >.
|
virtual |
Runtime information support.
Reimplemented from itk::InPlaceImageFilter< TInputImage, TOutputImage >.
|
virtual |
Set/Get the flag for normalizing the Gaussian over scale-space. This method does not effect the output of this filter.
ScalarRealType itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GetSigma | ( | ) | const |
Get the Sigma scalar. If the Sigma is anisotropic, we will just return the Sigma along the first dimension.
SigmaArrayType itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GetSigmaArray | ( | ) | const |
Get the Sigma value.
|
static |
Method for creation through the object factory.
|
virtual |
Set/Get the flag for normalizing the Gaussian over scale-space. This method does not effect the output of this filter.
|
virtual |
Set/Get the flag for normalizing the Gaussian over scale-space. This method does not effect the output of this filter.
|
overrideprotectedvirtual |
Methods invoked by Print() to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from itk::InPlaceImageFilter< TInputImage, TOutputImage >.
void itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetNormalizeAcrossScale | ( | bool | normalizeInScaleSpace | ) |
Set/Get the flag for normalizing the Gaussian over scale-space. This method does not effect the output of this filter.
|
overridevirtual |
Get/Set the number of work units to create when executing.
Reimplemented from itk::ProcessObject.
void itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetSigma | ( | ScalarRealType | sigma | ) |
Set the standard deviation of the Gaussian used for smoothing. Sigma is measured in the units of image spacing. You may use the method SetSigma to set the same value across each axis or use the method SetSigmaArray if you need different values along each axis.
void itk::SmoothingRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetSigmaArray | ( | const SigmaArrayType & | sigmas | ) |
Set the standard deviation of the Gaussian used for smoothing. Sigma is measured in the units of image spacing. You may use the method SetSigma to set the same value across each axis or use the method SetSigmaArray if you need different values along each axis.
|
static |
Image dimension.
Definition at line 77 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
private |
Definition at line 170 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
private |
Definition at line 169 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
private |
Definition at line 172 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
private |
Definition at line 174 of file itkSmoothingRecursiveGaussianImageFilter.h.
|
private |
Definition at line 168 of file itkSmoothingRecursiveGaussianImageFilter.h.