![]() |
Orfeo Toolbox
3.16
|
A NeighborhoodOperator whose coefficients are a one dimensional, discrete Gaussian kernel. More...
#include <itkGaussianOperator.h>
Inheritance diagram for itk::GaussianOperator< TPixel, VDimension, TAllocator >:
Collaboration diagram for itk::GaussianOperator< TPixel, VDimension, TAllocator >:Public Types | |
| typedef TAllocator | AllocatorType |
| typedef AllocatorType::const_iterator | ConstIterator |
| typedef AllocatorType::iterator | Iterator |
| typedef Offset< VDimension > | OffsetType |
| typedef NumericTraits< TPixel > ::RealType | PixelRealType |
| typedef TPixel | PixelType |
| typedef ::itk::Size< VDimension > | RadiusType |
| typedef GaussianOperator | Self |
| typedef Superclass::SizeType | SizeType |
| typedef SizeType::SizeValueType | SizeValueType |
| typedef SliceIterator< TPixel, Self > | SliceIteratorType |
| typedef NeighborhoodOperator < TPixel, VDimension, TAllocator > | Superclass |
Public Member Functions | |
| GaussianOperator () | |
| GaussianOperator (const Self &other) | |
| Iterator | Begin () |
| ConstIterator | Begin () const |
| virtual void | CreateDirectional () |
| virtual void | CreateToRadius (const SizeType &) |
| virtual void | CreateToRadius (const unsigned long) |
| Iterator | End () |
| ConstIterator | End () const |
| virtual void | FlipAxes () |
| AllocatorType & | GetBufferReference () |
| const AllocatorType & | GetBufferReference () const |
| unsigned int | GetCenterNeighborhoodIndex () const |
| TPixel | GetCenterValue () const |
| unsigned long | GetDirection () const |
| TPixel & | GetElement (unsigned int i) |
| double | GetMaximumError () |
| unsigned int | GetMaximumKernelWidth () const |
| virtual unsigned int | GetNeighborhoodIndex (const OffsetType &) const |
| OffsetType | GetOffset (unsigned int i) const |
| const SizeType | GetRadius () const |
| unsigned long | GetRadius (const unsigned long n) const |
| unsigned long | GetSize (const unsigned long n) const |
| SizeType | GetSize () const |
| std::slice | GetSlice (unsigned int) const |
| unsigned | GetStride (const unsigned axis) const |
| double | GetVariance () |
| bool | operator!= (const Self &other) const |
| Self & | operator= (const Self &other) |
| bool | operator== (const Self &other) const |
| TPixel & | operator[] (unsigned int i) |
| const TPixel & | operator[] (unsigned int i) const |
| TPixel & | operator[] (const OffsetType &o) |
| const TPixel & | operator[] (const OffsetType &o) const |
| void | Print (std::ostream &os) const |
| virtual void | PrintSelf (std::ostream &os, Indent i) const |
| void | ScaleCoefficients (PixelRealType) |
| void | SetDirection (const unsigned long &direction) |
| void | SetMaximumError (const double &max_error) |
| void | SetMaximumKernelWidth (unsigned int n) |
| void | SetRadius (const SizeType &) |
| void | SetRadius (const unsigned long *rad) |
| void | SetRadius (const unsigned long) |
| void | SetVariance (const double &variance) |
| unsigned int | Size () const |
Static Public Attributes | |
| static const unsigned int | NeighborhoodDimension = VDimension |
Protected Types | |
| typedef Superclass::CoefficientVector | CoefficientVector |
Protected Member Functions | |
| virtual void | Allocate (unsigned int i) |
| virtual void | ComputeNeighborhoodOffsetTable () |
| virtual void | ComputeNeighborhoodStrideTable () |
| void | Fill (const CoefficientVector &coeff) |
| virtual void | FillCenteredDirectional (const CoefficientVector &) |
| CoefficientVector | GenerateCoefficients () |
| void | InitializeToZero () |
| double | ModifiedBesselI (int, double) |
| double | ModifiedBesselI0 (double) |
| double | ModifiedBesselI1 (double) |
| void | SetSize () |
Private Member Functions | |
| const char * | GetNameOfClass () |
Private Attributes | |
| double | m_MaximumError |
| unsigned int | m_MaximumKernelWidth |
| double | m_Variance |
A NeighborhoodOperator whose coefficients are a one dimensional, discrete Gaussian kernel.
GaussianOperator can be used to perform Gaussian blurring by taking its inner product with to a Neighborhood (NeighborhooIterator) that is swept across an image region. It is a directional operator. N successive applications oriented along each dimensional direction will effect separable, efficient, N-D Gaussian blurring of an image region.
GaussianOperator takes two parameters:
(1) The floating-point variance of the desired Gaussian function.
(2) The "maximum error" allowed in the discrete Gaussian function. "Maximum errror" is defined as the difference between the area under the discrete Gaussian curve and the area under the continuous Gaussian. Maximum error affects the Gaussian operator size. Care should be taken not to make this value too small relative to the variance lest the operator size become unreasonably large.
References: The Gaussian kernel contained in this operator was described by Tony Lindeberg (Discrete Scale-Space Theory and the Scale-Space Primal Sketch. Dissertation. Royal Institute of Technology, Stockholm, Sweden. May 1991.).
Definition at line 61 of file itkGaussianOperator.h.
|
inherited |
External support for allocator type.
Reimplemented in itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, and itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >.
Definition at line 63 of file itkNeighborhood.h.
|
protected |
Typedef support for coefficient vector type. Necessary to fix bug in the microsoft VC++ compiler.
Reimplemented from itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 144 of file itkGaussianOperator.h.
|
inherited |
Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::NeighborhoodIterator< TImage, TBoundaryCondition >, itk::NeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ShapedNeighborhoodIterator< ImageType >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstNeighborhoodIterator< TInputImage >, itk::ConstNeighborhoodIterator< TImage >, itk::ConstNeighborhoodIterator< TInput >, itk::ConstNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< FixedImageType >, itk::ConstNeighborhoodIterator< TImageType >, itk::ConstNeighborhoodIterator< TDeformationField >, itk::ConstNeighborhoodIterator< TSparseImageType >, itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >, and itk::FlatStructuringElement< VDimension >.
Definition at line 75 of file itkNeighborhood.h.
|
inherited |
Iterator typedef support. Note the naming is intentional, i.e., ::iterator and ::const_iterator, because the allocator may be a vnl object or other type, which uses this form.
Reimplemented in itk::NeighborhoodIterator< TImage, TBoundaryCondition >, itk::NeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstNeighborhoodIterator< TInputImage >, itk::ConstNeighborhoodIterator< TImage >, itk::ConstNeighborhoodIterator< TInput >, itk::ConstNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< FixedImageType >, itk::ConstNeighborhoodIterator< TImageType >, itk::ConstNeighborhoodIterator< TDeformationField >, itk::ConstNeighborhoodIterator< TSparseImageType >, itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >, and itk::FlatStructuringElement< VDimension >.
Definition at line 74 of file itkNeighborhood.h.
|
inherited |
Offset type used to reference neighbor locations
Reimplemented in itk::NeighborhoodIterator< TImage, TBoundaryCondition >, itk::NeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ShapedNeighborhoodIterator< ImageType >, itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::AnnulusOperator< TPixel, TDimension, TAllocator >, itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstNeighborhoodIterator< TInputImage >, itk::ConstNeighborhoodIterator< TImage >, itk::ConstNeighborhoodIterator< TInput >, itk::ConstNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< FixedImageType >, itk::ConstNeighborhoodIterator< TImageType >, itk::ConstNeighborhoodIterator< TDeformationField >, itk::ConstNeighborhoodIterator< TSparseImageType >, and itk::FlatStructuringElement< VDimension >.
Definition at line 85 of file itkNeighborhood.h.
|
inherited |
Reimplemented in itk::DerivativeOperator< TPixel, VDimension, TAllocator >, itk::DerivativeOperator< ScalarValueType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< OutputImagePixelType, itkGetStaticConstMacro(ImageDimension)>, and itk::DerivativeOperator< PixelType, itkGetStaticConstMacro(ImageDimension)>.
Definition at line 136 of file itkNeighborhoodOperator.h.
|
inherited |
External support for pixel type
Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.
Reimplemented in itk::AnnulusOperator< TPixel, TDimension, TAllocator >, otb::WaveletOperatorBase< TMotherWaveletOperator, TPixel, VDimension, TAllocator >, itk::SobelOperator< TPixel, VDimension, TAllocator >, itk::SobelOperator< FixedGradientPixelType, itkGetStaticConstMacro(FixedImageDimension) >, itk::SobelOperator< MovedGradientPixelType, itkGetStaticConstMacro(MovedImageDimension) >, otb::WaveletHighPassOperator< TMotherWaveletOperator, TDirectionOfTransformation, TPixel, VDimension, TAllocator >, otb::WaveletLowPassOperator< TMotherWaveletOperator, TDirectionOfTransformation, TPixel, VDimension, TAllocator >, itk::LaplacianOperator< TPixel, VDimension, TAllocator >, itk::DerivativeOperator< TPixel, VDimension, TAllocator >, itk::DerivativeOperator< ScalarValueType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< OutputImagePixelType, itkGetStaticConstMacro(ImageDimension)>, itk::DerivativeOperator< PixelType, itkGetStaticConstMacro(ImageDimension)>, itk::BackwardDifferenceOperator< TPixel, TDimension, TAllocator >, and itk::ForwardDifferenceOperator< TPixel, VDimension, TAllocator >.
Definition at line 76 of file itkNeighborhoodOperator.h.
|
inherited |
Radius typedef support.
Reimplemented in itk::NeighborhoodIterator< TImage, TBoundaryCondition >, itk::NeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ShapedNeighborhoodIterator< ImageType >, itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstNeighborhoodIterator< TInputImage >, itk::ConstNeighborhoodIterator< TImage >, itk::ConstNeighborhoodIterator< TInput >, itk::ConstNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< FixedImageType >, itk::ConstNeighborhoodIterator< TImageType >, itk::ConstNeighborhoodIterator< TDeformationField >, itk::ConstNeighborhoodIterator< TSparseImageType >, and itk::FlatStructuringElement< VDimension >.
Definition at line 82 of file itkNeighborhood.h.
| typedef GaussianOperator itk::GaussianOperator< TPixel, VDimension, TAllocator >::Self |
Standard class typedefs.
Reimplemented from itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 66 of file itkGaussianOperator.h.
|
inherited |
Size object typedef support
Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.
Reimplemented in otb::WaveletOperatorBase< TMotherWaveletOperator, TPixel, VDimension, TAllocator >, itk::AnnulusOperator< TPixel, TDimension, TAllocator >, itk::LaplacianOperator< TPixel, VDimension, TAllocator >, otb::WaveletHighPassOperator< TMotherWaveletOperator, TDirectionOfTransformation, TPixel, VDimension, TAllocator >, and otb::WaveletLowPassOperator< TMotherWaveletOperator, TDirectionOfTransformation, TPixel, VDimension, TAllocator >.
Definition at line 73 of file itkNeighborhoodOperator.h.
|
inherited |
Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ShapedNeighborhoodIterator< ImageType >, itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::AnnulusOperator< TPixel, TDimension, TAllocator >, itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ConstNeighborhoodIterator< TInputImage >, itk::ConstNeighborhoodIterator< TImage >, itk::ConstNeighborhoodIterator< TInput >, itk::ConstNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >, itk::ConstNeighborhoodIterator< FixedImageType >, itk::ConstNeighborhoodIterator< TImageType >, itk::ConstNeighborhoodIterator< TDeformationField >, itk::ConstNeighborhoodIterator< TSparseImageType >, itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >, and itk::FlatStructuringElement< VDimension >.
Definition at line 79 of file itkNeighborhood.h.
|
inherited |
Slice iterator typedef support
Reimplemented from itk::Neighborhood< TPixel, VDimension, TAllocator >.
Definition at line 79 of file itkNeighborhoodOperator.h.
| typedef NeighborhoodOperator<TPixel, VDimension, TAllocator> itk::GaussianOperator< TPixel, VDimension, TAllocator >::Superclass |
Reimplemented from itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 67 of file itkGaussianOperator.h.
|
inline |
Constructor.
Definition at line 70 of file itkGaussianOperator.h.
|
inline |
Copy constructor
Definition at line 73 of file itkGaussianOperator.h.
References itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_MaximumError, itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_MaximumKernelWidth, and itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_Variance.
|
inlineprotectedvirtualinherited |
Allocates the neighborhood's memory buffer.
Definition at line 236 of file itkNeighborhood.h.
|
inlineinherited |
Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ShapedNeighborhoodIterator< ImageType >.
Definition at line 154 of file itkNeighborhood.h.
Referenced by itk::FlatStructuringElement< VDimension >::Annulus(), itk::FlatStructuringElement< VDimension >::Ball(), itk::FlatStructuringElement< VDimension >::Box(), itk::MinMaxCurvatureFlowFunction< TImage >::ComputeThreshold(), itk::FlatStructuringElement< VDimension >::Cross(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNeighborhood(), itk::VectorNeighborhoodInnerProduct< TImage >::operator()(), itk::NeighborhoodInnerProduct< TImage, TOperator, TComputation >::operator()(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), and itk::NeighborhoodIterator< TImage, TBoundaryCondition >::SetNeighborhood().
|
inlineinherited |
Reimplemented in itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.
Definition at line 158 of file itkNeighborhood.h.
|
protectedvirtualinherited |
Fills entries into the offset lookup table. Called once on initialization.
Definition at line 49 of file itkNeighborhood.txx.
|
protectedvirtualinherited |
Computes the entries for the stride table
Definition at line 28 of file itkNeighborhood.txx.
|
virtualinherited |
Creates the operator with length only in the specified direction. The radius of the operator will be 0 except along the axis on which the operator will work.
Reimplemented in itk::SobelOperator< TPixel, VDimension, TAllocator >, itk::SobelOperator< FixedGradientPixelType, itkGetStaticConstMacro(FixedImageDimension) >, and itk::SobelOperator< MovedGradientPixelType, itkGetStaticConstMacro(MovedImageDimension) >.
Definition at line 59 of file itkNeighborhoodOperator.txx.
Referenced by itk::VectorAnisotropicDiffusionFunction< TImage >::CalculateAverageGradientMagnitudeSquared(), itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateData(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::GenerateInputRequestedRegion(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianDerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), main(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
virtualinherited |
Creates the operator with a specified radius. The spatial location of the coefficients within the operator is defined by the subclass implementation of the Fill method.
Definition at line 83 of file itkNeighborhoodOperator.txx.
Referenced by itk::ConvolutionImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData().
|
virtualinherited |
Creates the operator with a specified radius ("square", same length on each side). The spatial location of the coefficients within the operator is defined by the subclass implementation of the Fill method.
Definition at line 94 of file itkNeighborhoodOperator.txx.
|
inlineinherited |
STL-style iterator support.
Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ShapedNeighborhoodIterator< ImageType >.
Definition at line 152 of file itkNeighborhood.h.
Referenced by itk::FlatStructuringElement< VDimension >::Box(), itk::MinMaxCurvatureFlowFunction< TImage >::ComputeThreshold(), itk::FlatStructuringElement< VDimension >::Cross(), itk::VectorNeighborhoodInnerProduct< TImage >::operator()(), itk::NeighborhoodInnerProduct< TImage, TOperator, TComputation >::operator()(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), and itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel().
|
inlineinherited |
Reimplemented in itk::ShapedNeighborhoodIterator< TImage, TBoundaryCondition >, itk::ShapedNeighborhoodIterator< ImageType >, itk::ConstShapedNeighborhoodIterator< TImage, TBoundaryCondition >, and itk::ConstShapedNeighborhoodIterator< ImageType, ZeroFluxNeumannBoundaryCondition< ImageType > >.
Definition at line 156 of file itkNeighborhood.h.
|
inlineprotectedvirtual |
Arranges coefficients spatially in the memory buffer.
Implements itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 161 of file itkGaussianOperator.h.
|
protectedvirtualinherited |
A pre-defined Fill function that can be called by a subclass Fill function to center coefficients along the axis specified by the SetDirection method. Useful for creating directional operators, or centering coefficients in an N-dimensional neighborhood.
Definition at line 107 of file itkNeighborhoodOperator.txx.
References itk::SliceIterator< TPixel, TContainer >::Begin(), and itk::SliceIterator< TPixel, TContainer >::End().
|
virtualinherited |
Reverses the direction of all axes of the operator by reversing the order of the coefficients.
Definition at line 38 of file itkNeighborhoodOperator.txx.
Referenced by itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
protectedvirtual |
Calculates operator coefficients.
Implements itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 29 of file itkGaussianOperator.txx.
|
inlineinherited |
Returns a reference to the data buffer structure.
Definition at line 200 of file itkNeighborhood.h.
|
inlineinherited |
Definition at line 202 of file itkNeighborhood.h.
|
inlineinherited |
Definition at line 218 of file itkNeighborhood.h.
Referenced by otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeDescriptor(), otb::MRFEnergy< TInput1, TInput2 >::GetValue(), otb::MRFEnergy< TInput2, TInput2 >::GetValue(), and otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremum().
|
inlineinherited |
Returns the element at the center of the neighborhood.
Definition at line 174 of file itkNeighborhood.h.
Referenced by itk::MRFImageFilter< TInputImage, TClassifiedImage >::DoNeighborhoodOperation().
|
inlineinherited |
Returns the direction (dimension number) of a directional operator.
Definition at line 103 of file itkNeighborhoodOperator.h.
|
inlineinherited |
Definition at line 170 of file itkNeighborhood.h.
|
inline |
Returns the maximum error of the gaussian approximation. Maximum error is the difference between the area under the discrete Gaussian curve and the area under the continuous Gaussian. Maximum error affects the Gaussian operator size.
Definition at line 119 of file itkGaussianOperator.h.
|
inline |
Returns the maximum allowed kernel width.
Definition at line 130 of file itkGaussianOperator.h.
|
inlineprivate |
For compatibility with itkWarningMacro
Definition at line 178 of file itkGaussianOperator.h.
|
virtualinherited |
Definition at line 147 of file itkNeighborhood.txx.
|
inlineinherited |
Returns the itk::Offset from the center of the Neighborhood to the requested neighbor index.
Definition at line 213 of file itkNeighborhood.h.
Referenced by itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel >::AnalyzeKernel(), otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::FillWeightOffsetTable(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), and itk::WindowedSincInterpolateImageFunction< TInputImage, VRadius, TWindowFunction, TBoundaryCondition, TCoordRep >::SetInputImage().
|
inlineinherited |
Returns the radius of the neighborhood.
Definition at line 128 of file itkNeighborhood.h.
Referenced by itk::FlatStructuringElement< VDimension >::Annulus(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::AssignOrientation(), itk::FlatStructuringElement< VDimension >::Ball(), itk::VectorAnisotropicDiffusionFunction< TImage >::CalculateAverageGradientMagnitudeSquared(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeDescriptor(), itk::NCCRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ComputeUpdate(), otb::NCCRegistrationFunction< TFixedImage, TMovingImage, TDeformationField >::ComputeUpdate(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::LaplacianSharpeningImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::GenerateInputRequestedRegion(), itk::SobelEdgeDetectionImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::LaplacianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianDerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), main(), itk::PeriodicBoundaryCondition< TImage >::operator()(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
inlineinherited |
Returns the radius of the neighborhood along a specified dimension.
Definition at line 133 of file itkNeighborhood.h.
|
inlineinherited |
Returns the size (total length) of the neighborhood along a specified dimension.
Definition at line 138 of file itkNeighborhood.h.
Referenced by itk::FlatStructuringElement< VDimension >::Annulus(), itk::FlatStructuringElement< VDimension >::Ball(), otb::LineSegmentDetector< TInputImage, TPrecision >::GrowRegion(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
inlineinherited |
Returns the size (total length of sides) of the neighborhood.
Definition at line 142 of file itkNeighborhood.h.
|
inherited |
Definition at line 134 of file itkNeighborhood.txx.
|
inlineinherited |
Returns the stride length for the specified dimension. Stride length is the number of pixels between adjacent pixels along the given dimension.
Definition at line 148 of file itkNeighborhood.h.
Referenced by itk::CannyEdgeDetectionImageFilter< TInputImage, TOutputImage >::CannyEdgeDetectionImageFilter(), itk::SparseFieldFourthOrderLevelSetImageFilter< TInputImage, TOutputImage >::ComputeCurvatureFromSparseImageNeighborhood(), itk::MinMaxCurvatureFlowFunction< TImage >::ComputeThreshold(), itk::CurvatureFlowFunction< TImage >::ComputeUpdate(), itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::CurvatureNDAnisotropicDiffusionFunction(), itk::GradientNDAnisotropicDiffusionFunction< TImage >::GradientNDAnisotropicDiffusionFunction(), itk::RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Initialize(), itk::LevelSetFunction< TImageType >::Initialize(), itk::ImplicitManifoldNormalVectorFilter< TInputImage, TSparseOutputImage >::InitializeNormalBandNode(), itk::PeriodicBoundaryCondition< TImage >::operator()(), itk::ZeroFluxNeumannBoundaryCondition< TImage >::operator()(), itk::NormalVectorDiffusionFunction< TSparseImageType >::PrecomputeSparseUpdate(), itk::ZeroCrossingImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), itk::IsoContourDistanceImageFilter< TInputImage, TOutputImage >::ThreadedGenerateDataBand(), itk::VectorCurvatureNDAnisotropicDiffusionFunction< TImage >::VectorCurvatureNDAnisotropicDiffusionFunction(), and itk::VectorGradientNDAnisotropicDiffusionFunction< TImage >::VectorGradientNDAnisotropicDiffusionFunction().
|
inline |
Returns the variance of the Gaussian (scale) for the operator.
Definition at line 112 of file itkGaussianOperator.h.
|
inlineprotectedinherited |
Initializes all the coefficients in the neighborhood to zero values
Definition at line 162 of file itkNeighborhoodOperator.h.
|
protected |
Returns the value of the modified Bessel function Ik(x) at a point x>=0, where k>=2.
Definition at line 145 of file itkGaussianOperator.txx.
|
protected |
Returns the value of the modified Bessel function I0(x) at a point x >= 0.
Definition at line 81 of file itkGaussianOperator.txx.
|
protected |
Returns the value of the modified Bessel function I1(x) at a point x, x real.
Definition at line 108 of file itkGaussianOperator.txx.
|
inlineinherited |
Not Equal operator.
Definition at line 120 of file itkNeighborhood.h.
|
inline |
Assignment operator
Definition at line 82 of file itkGaussianOperator.h.
References itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_MaximumError, itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_MaximumKernelWidth, and itk::GaussianOperator< TPixel, VDimension, TAllocator >::m_Variance.
|
inlineinherited |
Comparison operator.
Definition at line 112 of file itkNeighborhood.h.
|
inlineinherited |
Pass-through data access methods to the buffer.
Definition at line 166 of file itkNeighborhood.h.
|
inlineinherited |
Definition at line 168 of file itkNeighborhood.h.
|
inlineinherited |
Get pixel value by offset
Definition at line 206 of file itkNeighborhood.h.
Referenced by itk::Neighborhood< PixelType, itkGetStaticConstMacro(ImageDimension)>::operator[]().
|
inlineinherited |
Definition at line 208 of file itkNeighborhood.h.
Referenced by itk::Neighborhood< PixelType, itkGetStaticConstMacro(ImageDimension)>::operator[]().
|
inlineinherited |
Standard itk object method.
Definition at line 196 of file itkNeighborhood.h.
|
inlinevirtual |
Prints some debugging information.
Reimplemented from itk::NeighborhoodOperator< TPixel, VDimension, TAllocator >.
Definition at line 134 of file itkGaussianOperator.h.
References itk::Indent::GetNextIndent().
|
inherited |
Multiplies all of the coefficients of the kernel by a single scalar value.
Definition at line 27 of file itkNeighborhoodOperator.txx.
Referenced by itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateData(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
inlineinherited |
Sets the dimensional direction of a directional operator.
Definition at line 99 of file itkNeighborhoodOperator.h.
Referenced by itk::VectorAnisotropicDiffusionFunction< TImage >::CalculateAverageGradientMagnitudeSquared(), itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateData(), itk::SobelEdgeDetectionImageFilter< TInputImage, TOutputImage >::GenerateData(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::GenerateInputRequestedRegion(), itk::RecursiveMultiResolutionPyramidImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianDerivativeImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::MultiResolutionPyramidImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), main(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), and itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData().
|
inline |
Sets the desired maximum error of the gaussian approximation. Maximum error is the difference between the area under the discrete Gaussian curve and the area under the continuous Gaussian. Maximum error affects the Gaussian operator size. The value must be between 0.0 and 1.0.
Definition at line 101 of file itkGaussianOperator.h.
Referenced by itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), itk::RecursiveMultiResolutionPyramidImageFilter< TInputImage, TOutputImage >::GenerateOutputRequestedRegion(), and itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel().
|
inline |
Sets a limit for growth of the kernel. Small maximum error values with large variances will yield very large kernel sizes. This value can be used to truncate a kernel in such instances. A warning will be given on truncation of the kernel.
Definition at line 126 of file itkGaussianOperator.h.
Referenced by itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), and itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel().
|
inherited |
Sets the radius for the neighborhood, calculates size from the radius, and allocates storage.
Definition at line 91 of file itkNeighborhood.txx.
References itk::Size< VDimension >::m_Size.
Referenced by itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel >::AnalyzeKernel(), itk::FlatStructuringElement< VDimension >::Annulus(), itk::FlatStructuringElement< VDimension >::Ball(), itk::FlatStructuringElement< VDimension >::Box(), itk::CannyEdgeDetectionImageFilter< TInputImage, TOutputImage >::CannyEdgeDetectionImageFilter(), itk::FlatStructuringElement< VDimension >::Cross(), itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::CurvatureNDAnisotropicDiffusionFunction(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNeighborhood(), itk::GradientNDAnisotropicDiffusionFunction< TImage >::GradientNDAnisotropicDiffusionFunction(), itk::RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Initialize(), itk::LevelSetFunction< TImageType >::Initialize(), itk::FlatStructuringElement< VDimension >::Poly(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeContinuousGaussianKernel(), itk::GaussianDerivativeImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel(), itk::Statistics::ScalarImageToGreyLevelRunLengthMatrixGenerator< TImageType, THistogramFrequencyContainer >::ScalarImageToGreyLevelRunLengthMatrixGenerator(), itk::NormalizedCorrelationImageFilter< TInputImage, TMaskImage, TOutputImage, TOperatorValueType >::ThreadedGenerateData(), itk::VectorCurvatureNDAnisotropicDiffusionFunction< TImage >::VectorCurvatureNDAnisotropicDiffusionFunction(), and itk::VectorGradientNDAnisotropicDiffusionFunction< TImage >::VectorGradientNDAnisotropicDiffusionFunction().
|
inlineinherited |
Sets the radius for the neighborhood. Overloaded to support an unsigned long array.
Definition at line 183 of file itkNeighborhood.h.
|
inherited |
Overloads SetRadius to allow a single long integer argument that is used as the radius of all the dimensions of the Neighborhood (resulting in a "square" neighborhood).
Definition at line 78 of file itkNeighborhood.txx.
|
inlineprotectedinherited |
Sets the length along each dimension.
Definition at line 227 of file itkNeighborhood.h.
|
inline |
Sets the desired variance of the Gaussian kernel.
Definition at line 92 of file itkGaussianOperator.h.
Referenced by itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::DiscreteGaussianImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion(), main(), and itk::GaussianBlurImageFunction< TInputImage, TOutput >::RecomputeGaussianKernel().
|
inlineinherited |
More STL-style support.
Definition at line 162 of file itkNeighborhood.h.
Referenced by itk::BinaryMorphologyImageFilter< TInputImage, TOutputImage, TKernel >::AnalyzeKernel(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::AssignOrientation(), itk::CannyEdgeDetectionImageFilter< TInputImage, TOutputImage >::CannyEdgeDetectionImageFilter(), itk::VectorFuzzyConnectednessImageFilter< TInputImage, TOutputImage >::Compute_Scale(), itk::SparseFieldFourthOrderLevelSetImageFilter< TInputImage, TOutputImage >::ComputeCurvatureFromSparseImageNeighborhood(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeDescriptor(), itk::MinMaxCurvatureFlowFunction< TImage >::ComputeThreshold(), itk::CurvatureFlowFunction< TImage >::ComputeUpdate(), itk::CurvatureNDAnisotropicDiffusionFunction< TImage >::CurvatureNDAnisotropicDiffusionFunction(), otb::GenericInterpolateImageFunction< TInputImage, TFunction, TBoundaryCondition, TCoordRep >::FillWeightOffsetTable(), itk::GaussianDerivativeOperator< TPixel, VDimension, TAllocator >::GenerateCoefficients(), itk::StochasticFractalDimensionImageFilter< TInputImage, TMaskImage, TOutputImage >::GenerateData(), otb::MRFEnergy< TInput1, TInput2 >::GetValue(), otb::MRFEnergy< TInput2, TInput2 >::GetValue(), itk::GradientNDAnisotropicDiffusionFunction< TImage >::GradientNDAnisotropicDiffusionFunction(), itk::RegionBasedLevelSetFunction< TInputImage, TFeatureImage, TSharedData >::Initialize(), itk::LevelSetFunction< TImageType >::Initialize(), itk::SparseFieldLevelSetImageFilter< TInputImage, TOutputImage >::InitializeActiveLayerValues(), itk::ParallelSparseFieldLevelSetImageFilter< TInputImage, TOutputImage >::InitializeActiveLayerValues(), itk::ImplicitManifoldNormalVectorFilter< TInputImage, TSparseOutputImage >::InitializeNormalBandNode(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremum(), otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremumAround(), otb::Functor::SSDBlockMatching< TInputImage, TOutputMetricImage >::operator()(), itk::NeighborhoodInnerProduct< ImageType >::operator()(), itk::VectorNeighborhoodInnerProduct< ImageType >::operator()(), otb::Functor::NCCBlockMatching< TInputImage, TOutputMetricImage >::operator()(), otb::Functor::LPBlockMatching< TInputImage, TOutputMetricImage >::operator()(), itk::NormalVectorDiffusionFunction< TSparseImageType >::PrecomputeSparseUpdate(), itk::WindowedSincInterpolateImageFunction< TInputImage, VRadius, TWindowFunction, TBoundaryCondition, TCoordRep >::SetInputImage(), itk::GradientMagnitudeImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), itk::ZeroCrossingImageFilter< TInputImage, TOutputImage >::ThreadedGenerateData(), itk::GradientImageFilter< TInputImage, TOperatorValueType, TOutputValueType >::ThreadedGenerateData(), itk::VectorCurvatureNDAnisotropicDiffusionFunction< TImage >::VectorCurvatureNDAnisotropicDiffusionFunction(), and itk::VectorGradientNDAnisotropicDiffusionFunction< TImage >::VectorGradientNDAnisotropicDiffusionFunction().
|
private |
Difference between the areas under the curves of the continuous and discrete Gaussian functions.
Definition at line 170 of file itkGaussianOperator.h.
Referenced by itk::GaussianOperator< TPixel, VDimension, TAllocator >::GaussianOperator(), and itk::GaussianOperator< TPixel, VDimension, TAllocator >::operator=().
|
private |
Maximum kernel size allowed. This value is used to truncate a kernel that has grown too large. A warning is given when the specified maximum error causes the kernel to exceed this size.
Definition at line 175 of file itkGaussianOperator.h.
Referenced by itk::GaussianOperator< TPixel, VDimension, TAllocator >::GaussianOperator(), and itk::GaussianOperator< TPixel, VDimension, TAllocator >::operator=().
|
private |
Desired variance of the discrete Gaussian function.
Definition at line 166 of file itkGaussianOperator.h.
Referenced by itk::GaussianOperator< TPixel, VDimension, TAllocator >::GaussianOperator(), and itk::GaussianOperator< TPixel, VDimension, TAllocator >::operator=().
|
staticinherited |
External support for dimensionality.
Reimplemented in itk::FlatStructuringElement< VDimension >, itk::BinaryBallStructuringElement< TPixel, VDimension, TAllocator >, and itk::BinaryCrossStructuringElement< TPixel, VDimension, TAllocator >.
Definition at line 66 of file itkNeighborhood.h.