ITK
6.0.0
Insight Toolkit
|
#include <itkGradientRecursiveGaussianImageFilter.h>
Computes the gradient of an image by convolution with the first derivative of a Gaussian.
This filter is implemented using the recursive gaussian filters.
This filter supports both scalar and vector pixel types within the input image, including VectorImage type.
Definition at line 58 of file itkGradientRecursiveGaussianImageFilter.h.
Static Public Member Functions | |
static Pointer | New () |
Static Public Member Functions inherited from itk::ImageToImageFilter< TInputImage, Image< CovariantVector< typename NumericTraits< typename TInputImage::PixelType >::RealType, TInputImage::ImageDimension >, TInputImage::ImageDimension > > | |
static double | GetGlobalDefaultCoordinateTolerance () |
static double | GetGlobalDefaultDirectionTolerance () |
static void | SetGlobalDefaultCoordinateTolerance (double) |
static void | SetGlobalDefaultDirectionTolerance (double) |
Static Public Member Functions inherited from itk::Object | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
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::ImageToImageFilter< TInputImage, Image< CovariantVector< typename NumericTraits< typename TInputImage::PixelType >::RealType, TInputImage::ImageDimension >, TInputImage::ImageDimension > > | |
static constexpr unsigned int | InputImageDimension |
static constexpr unsigned int | OutputImageDimension |
Static Public Attributes inherited from itk::ImageSource< Image< CovariantVector< typename NumericTraits< typename TInputImage::PixelType >::RealType, TInputImage::ImageDimension >, TInputImage::ImageDimension > > | |
static constexpr unsigned int | OutputImageDimension |
Private Member Functions | |
template<template< typename, unsigned int > class P, class T , unsigned int VDimension> | |
void | TransformOutputPixel (ImageRegionIterator< Image< P< T, VDimension >, VDimension > > &it) |
template<typename T > | |
void | TransformOutputPixel (ImageRegionIterator< T > &it) |
template<typename TValue > | |
void | TransformOutputPixel (ImageRegionIterator< VectorImage< TValue, ImageDimension > > &it) |
Private Attributes | |
DerivativeFilterPointer | m_DerivativeFilter {} |
OutputImageAdaptorPointer | m_ImageAdaptor {} |
bool | m_NormalizeAcrossScale {} |
SigmaArrayType | m_Sigma {} |
std::vector< GaussianFilterPointer > | m_SmoothingFilters {} |
bool | m_UseImageDirection { true } |
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::ConstPointer = SmartPointer<const Self> |
Definition at line 67 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::CovariantVectorType = CovariantVector<OutputComponentType, ImageDimension> |
Definition at line 123 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::DerivativeFilterPointer = typename DerivativeFilterType::Pointer |
Pointer to a derivative filter.
Definition at line 114 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::DerivativeFilterType = RecursiveGaussianImageFilter<InputImageType, RealImageType> |
Derivative filter type, it will be the first in the pipeline
Definition at line 108 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GaussianFilterPointer = typename GaussianFilterType::Pointer |
Pointer to a gaussian filter.
Definition at line 111 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GaussianFilterType = RecursiveGaussianImageFilter<RealImageType, RealImageType> |
Smoothing filter type
Definition at line 105 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GradientVectorType = CovariantVector<ScalarRealType, ImageDimension> |
Gradient vector type alias
Definition at line 85 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InputImageType = TInputImage |
Pixel Type of the input image. May be scalar or vector.
Definition at line 70 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InternalRealType = typename NumericTraits<RealType>::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 78 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::InternalScalarRealType = typename NumericTraits<InternalRealType>::ValueType |
Definition at line 79 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputComponentType = typename NumericTraits<OutputPixelType>::ValueType |
Definition at line 122 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImageAdaptorPointer = typename OutputImageAdaptorType::Pointer |
Definition at line 99 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImageAdaptorType = NthElementImageAdaptor<TOutputImage, InternalScalarRealType> |
Output Image Nth Element Adaptor This adaptor allows to use conventional scalar smoothing filters to compute each one of the components of the gradient image pixels.
Definition at line 97 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImagePointer = typename TOutputImage::Pointer |
Pointer to the Output Image
Definition at line 117 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputImageType = TOutputImage |
Type of the output Image
Definition at line 120 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::OutputPixelType = typename OutputImageType::PixelType |
Definition at line 121 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::PixelType = typename TInputImage::PixelType |
Definition at line 71 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Pointer = SmartPointer<Self> |
Definition at line 66 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::RealImageType = Image<InternalRealType, Self::ImageDimension> |
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 90 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::RealType = typename NumericTraits<PixelType>::RealType |
Definition at line 72 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::ScalarRealType = typename NumericTraits<PixelType>::ScalarRealType |
Definition at line 73 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Self = GradientRecursiveGaussianImageFilter |
Standard class type aliases.
Definition at line 64 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SigmaArrayType = FixedArray<ScalarRealType, Self::ImageDimension> |
Define the type for the sigma array
Definition at line 102 of file itkGradientRecursiveGaussianImageFilter.h.
using itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::Superclass = ImageToImageFilter<TInputImage, TOutputImage> |
Definition at line 65 of file itkGradientRecursiveGaussianImageFilter.h.
|
protected |
|
overrideprotecteddefault |
|
overrideprotectedvirtual |
Give the process object a chance to indicate 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 |
Generate Data
Reimplemented from itk::ProcessObject.
|
overridevirtual |
GradientRecursiveGaussianImageFilter needs all of the input to produce an output. Therefore, GradientRecursiveGaussianImageFilter needs to provide an implementation for GenerateInputRequestedRegion in order to inform the pipeline execution model.
Reimplemented from itk::ProcessObject.
|
overrideprotectedvirtual |
Generate the information describing the output data. The default implementation of this method will copy information from the input to the output. A filter may override this method if its output will have different information than its input. For instance, a filter that shrinks an image will need to provide an implementation for this method that changes the spacing of the pixels. Such filters should call their superclass' implementation of this method prior to changing the information values they need (i.e. GenerateOutputInformation() should call Superclass::GenerateOutputInformation() prior to changing the information.
Reimplemented from itk::ProcessObject.
|
overridevirtual |
Reimplemented from itk::ProcessObject.
|
virtual |
Define which normalization factor will be used for the Gaussian
ScalarRealType itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GetSigma | ( | ) | const |
Get the value of Sigma along the first dimension.
SigmaArrayType itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::GetSigmaArray | ( | ) | const |
|
virtual |
The UseImageDirection flag determines whether the gradients are computed with respect to the image grid or with respect to the physical space. When this flag is ON the gradients are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
static |
Method for creation through the object factory.
|
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::ProcessObject.
void itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetNormalizeAcrossScale | ( | bool | normalize | ) |
Define which normalization factor will be used for the Gaussian
void itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetSigma | ( | ScalarRealType | sigma | ) |
Set/Get the Sigma value. Sigma is measured in the units of image spacing.
void itk::GradientRecursiveGaussianImageFilter< TInputImage, TOutputImage >::SetSigmaArray | ( | const SigmaArrayType & | sigma | ) |
Set/Get the Sigma value. Sigma is measured in the units of image spacing.
|
virtual |
The UseImageDirection flag determines whether the gradients are computed with respect to the image grid or with respect to the physical space. When this flag is ON the gradients are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
inlineprivate |
Definition at line 244 of file itkGradientRecursiveGaussianImageFilter.h.
|
inlineprivate |
Definition at line 216 of file itkGradientRecursiveGaussianImageFilter.h.
References itk::ImageConstIterator< TImage >::Get(), itk::ImageConstIterator< TImage >::GetImage(), itk::NumericTraits< T >::GetLength(), itk::DefaultConvertPixelTraits< PixelType >::GetNthComponent(), itk::ImageRegionIterator< TImage >::Set(), and itk::DefaultConvertPixelTraits< PixelType >::SetNthComponent().
|
inlineprivate |
Definition at line 204 of file itkGradientRecursiveGaussianImageFilter.h.
References itk::FixedArray< TValue, VLength >::GetDataPointer().
|
virtual |
The UseImageDirection flag determines whether the gradients are computed with respect to the image grid or with respect to the physical space. When this flag is ON the gradients are computed with respect to the coordinate system of physical space. The difference is whether we take into account the image Direction or not. The flag ON will take into account the image direction and will result in an extra matrix multiplication compared to the amount of computation performed when the flag is OFF. The default value of this flag is On.
|
staticconstexpr |
Image dimension.
Definition at line 82 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Definition at line 253 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Definition at line 254 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Normalize the image across scale space
Definition at line 257 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Standard deviation of the gaussian
Definition at line 263 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Definition at line 252 of file itkGradientRecursiveGaussianImageFilter.h.
|
private |
Take into account image orientation when computing the Gradient
Definition at line 260 of file itkGradientRecursiveGaussianImageFilter.h.