ITK
4.9.0
Insight Segmentation and Registration Toolkit
|
#include <itkSmoothingRecursiveYvvGaussianImageFilter.h>
Recursive Gaussian blurring filter based on Young-Van Vliet's algorithm, implemented for CPU.
This CPU implementation is more efficient than the GPU implamentation for smaller images (e.g. 512x512 and smaller for quadcores at over 3GHz); use the benchmark tests to establish the size for which this implementation performs better for your particular hardware configuration.
More information in the Insight Journal publication: http://hdl.handle.net/10380/3425
Definition at line 49 of file itkSmoothingRecursiveYvvGaussianImageFilter.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 const unsigned int | ImageDimension = TInputImage::ImageDimension |
Static Public Attributes inherited from itk::InPlaceImageFilter< TInputImage, TOutputImage > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
static const unsigned int | InputImageDimension = TInputImage::ImageDimension |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Static Public Attributes inherited from itk::ImageSource< TOutputImage > | |
static const unsigned int | OutputImageDimension = TOutputImage::ImageDimension |
Private Member Functions | |
void | operator= (const Self &) |
SmoothingRecursiveYvvGaussianImageFilter (const Self &) | |
Additional Inherited Members | |
Protected Types inherited from itk::ImageToImageFilter< TInputImage, TOutputImage > | |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(OutputImageDimension), itkGetStaticConstMacro(InputImageDimension) > | InputToOutputRegionCopierType |
typedef ImageToImageFilterDetail::ImageRegionCopier < itkGetStaticConstMacro(InputImageDimension), itkGetStaticConstMacro(OutputImageDimension) > | OutputToInputRegionCopierType |
Static Protected Member Functions inherited from itk::ImageSource< TOutputImage > | |
static const ImageRegionSplitterBase * | GetGlobalDefaultSplitter () |
static ITK_THREAD_RETURN_TYPE | ThreaderCallback (void *arg) |
Protected Attributes inherited from itk::ProcessObject | |
TimeStamp | m_OutputInformationMTime |
bool | m_Updating |
Protected Attributes inherited from itk::LightObject | |
AtomicInt< int > | m_ReferenceCount |
typedef CastingFilterType::Pointer itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::CastingFilterPointer |
Pointer to the last filter, casting
Definition at line 116 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef CastImageFilter< RealImageType, OutputImageType > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::CastingFilterType |
The last in the pipeline
Definition at line 107 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef SmartPointer< const Self > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::ConstPointer |
Definition at line 58 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef FirstGaussianFilterType::Pointer itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::FirstGaussianFilterPointer |
Pointer to the first gaussian filter.
Definition at line 113 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef RecursiveLineYvvGaussianImageFilter< InputImageType, RealImageType > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::FirstGaussianFilterType |
The first in the pipeline
Definition at line 95 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef TInputImage itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::InputImageType |
Pixel Type of the input image
Definition at line 61 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef InternalGaussianFilterType::Pointer itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::InternalGaussianFilterPointer |
Pointer to a gaussian filter.
Definition at line 110 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef RecursiveLineYvvGaussianImageFilter< RealImageType, RealImageType > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::InternalGaussianFilterType |
Smoothing filter type
Definition at line 101 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef NumericTraits< PixelType >::FloatType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::InternalRealType |
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 88 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef OutputImageType::Pointer itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::OutputImagePointer |
Pointer to the Output Image
Definition at line 119 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef TOutputImage itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::OutputImageType |
Definition at line 62 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef TInputImage::PixelType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::PixelType |
Definition at line 63 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef SmartPointer< Self > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::Pointer |
Definition at line 57 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef InputImageType::template Rebind< InternalRealType >::Type itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::RealImageType |
Definition at line 89 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef NumericTraits< PixelType >::FloatType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::RealType |
Definition at line 68 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef NumericTraits< PixelType >::FloatType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::ScalarRealType |
Definition at line 69 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef SmoothingRecursiveYvvGaussianImageFilter itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::Self |
Standard class typedefs.
Definition at line 55 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef FixedArray< ScalarRealType, itkGetStaticConstMacro(ImageDimension) > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::SigmaArrayType |
Define the type for the sigma array
Definition at line 82 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
typedef InPlaceImageFilter< TInputImage, TOutputImage > itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::Superclass |
Definition at line 56 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
protected |
End concept checking
|
inlineprotectedvirtual |
End concept checking
Definition at line 156 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
|
virtual |
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.
|
protectedvirtual |
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.
|
protectedvirtual |
Generate Data
Reimplemented from itk::ImageSource< TOutputImage >.
|
protectedvirtual |
SmoothingRecursiveYvvGaussianImageFilter needs all of the input to produce an output. Therefore, SmoothingRecursiveYvvGaussianImageFilter 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 |
ScalarRealType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::GetSigma | ( | ) | const |
SigmaArrayType itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::GetSigmaArray | ( | ) | const |
|
static |
Method for creation through the object factory.
|
private |
|
protectedvirtual |
End concept checking
Reimplemented from itk::InPlaceImageFilter< TInputImage, TOutputImage >.
void itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::SetNormalizeAcrossScale | ( | bool | normalizeInScaleSpace | ) |
Define which normalization factor will be used for the Gaussian
|
virtual |
Get/Set the number of threads to create when executing.
Reimplemented from itk::ProcessObject.
void itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::SetSigma | ( | ScalarRealType | sigma | ) |
void itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::SetSigmaArray | ( | const SigmaArrayType & | sigmas | ) |
Set Sigma value. 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.
itk::SmoothingRecursiveYvvGaussianImageFilter< TInputImage, TOutputImage >::typedef | ( | Concept::HasNumericTraits< PixelType > | ) |
Begin concept checking This class requires InputHasNumericTraitsCheck in the form of ( Concept::HasNumericTraits< PixelType > )
|
static |
Image dimension.
Definition at line 78 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Definition at line 181 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Definition at line 180 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Normalize the image across scale space
Definition at line 184 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Standard deviation of the gaussian used for smoothing
Definition at line 187 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Definition at line 179 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.
|
private |
Definition at line 188 of file itkSmoothingRecursiveYvvGaussianImageFilter.h.