18 #ifndef itkDiscreteGradientMagnitudeGaussianImageFunction_h
19 #define itkDiscreteGradientMagnitudeGaussianImageFunction_h
46 template<
typename TInputImage,
typename TOutput =
double >
77 itkStaticConstMacro(ImageDimension2,
unsigned int,
78 InputImageType::ImageDimension);
113 virtual OutputType Evaluate(
const PointType & point)
const ITK_OVERRIDE;
116 virtual OutputType EvaluateAtIndex(
const IndexType & index)
const ITK_OVERRIDE;
119 virtual OutputType EvaluateAtContinuousIndex(
120 const ContinuousIndexType & index)
const ITK_OVERRIDE;
126 itkSetMacro(Variance, VarianceArrayType);
127 itkGetConstMacro(Variance,
const VarianceArrayType);
128 itkSetVectorMacro(Variance,
double, VarianceArrayType::Length);
134 m_Variance.Fill(variance);
143 SetVariance(sigma * sigma);
151 itkSetClampMacro(MaximumError,
double, 0.00001, 0.99999);
152 itkGetConstMacro(MaximumError,
double);
158 itkSetMacro(NormalizeAcrossScale,
bool);
159 itkGetConstMacro(NormalizeAcrossScale,
bool);
160 itkBooleanMacro(NormalizeAcrossScale);
164 itkSetMacro(UseImageSpacing,
bool);
165 itkGetConstMacro(UseImageSpacing,
bool);
166 itkBooleanMacro(UseImageSpacing);
173 itkSetMacro(MaximumKernelWidth,
unsigned int);
174 itkGetConstMacro(MaximumKernelWidth,
unsigned int);
178 itkSetMacro(InterpolationMode, InterpolationModeType);
179 itkGetConstMacro(InterpolationMode, InterpolationModeType);
186 virtual void SetInputImage(
const InputImageType *ptr) ITK_OVERRIDE;
200 void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
202 void RecomputeGaussianKernel();
243 #ifndef ITK_MANUAL_INSTANTIATION
244 #include "itkDiscreteGradientMagnitudeGaussianImageFunction.hxx"
~DiscreteGradientMagnitudeGaussianImageFunction() override
SmartPointer< const Self > ConstPointer
DiscreteGradientMagnitudeGaussianImageFunction Self
Light weight base class for most itk classes.
Superclass::InputPixelType InputPixelType
void operator=(const Self &)
FixedArray< KernelType, itkGetStaticConstMacro(ImageDimension2) > KernelArrayType
signed long IndexValueType
Superclass::IndexValueType IndexValueType
DiscreteGradientMagnitudeGaussianImageFunction(const Self &)
InterpolationModeType m_InterpolationMode
GaussianDerivativeOperatorArrayType m_OperatorArray
FixedArray< double, itkGetStaticConstMacro(ImageDimension2) > VarianceArrayType
Compute the convolution of a neighborhood operator with the image at a specific location in space...
FixedArray< GaussianDerivativeOperatorType, 2 *itkGetStaticConstMacro(ImageDimension2) > GaussianDerivativeOperatorArrayType
KernelArrayType m_KernelArray
Superclass::PointType PointType
virtual void SetVariance(double variance)
VarianceArrayType m_Variance
virtual void Initialize()
unsigned int m_MaximumKernelWidth
ImageBaseType::PointType PointType
A NeighborhoodOperator whose coefficients are a one dimensional, discrete derivative Gaussian kernel...
Compute the discrete gradient magnitude gaussian of an the image at a specific location in space...
Superclass::IndexType IndexType
FixedArray< unsigned int, itkGetStaticConstMacro(ImageDimension2) > OrderArrayType
Neighborhood< TOutput, itkGetStaticConstMacro(ImageDimension2) > KernelType
OperatorImageFunctionPointer m_OperatorImageFunction
bool m_NormalizeAcrossScale
Superclass::OutputType OutputType
ImageFunction< TInputImage, TOutput, TOutput > Superclass
OperatorImageFunctionType::Pointer OperatorImageFunctionPointer
Control indentation during Print() invocation.
itk::GaussianDerivativeOperator< TOutput, itkGetStaticConstMacro(ImageDimension2) > GaussianDerivativeOperatorType
SmartPointer< Self > Pointer
Superclass::ContinuousIndexType ContinuousIndexType
void SetSigma(const double sigma)
Evaluates a function of an image at specified position.
ImageBaseType::IndexType IndexType
Superclass::InputImageType InputImageType
NeighborhoodOperatorImageFunction< InputImageType, TOutput > OperatorImageFunctionType