18 #ifndef __itkGaussianDerivativeOperator_h
19 #define __itkGaussianDerivativeOperator_h
75 template<
class TPixel,
unsigned int VDimension = 2,
76 class TAllocator = NeighborhoodAllocator< TPixel > >
97 Self & operator=(
const Self & other);
110 itkBooleanMacro(NormalizeAcrossScale);
116 void SetVariance(
const double variance) { m_Variance = variance; }
121 void SetSpacing(
const double spacing) { m_Spacing = spacing; }
129 void SetMaximumError(
const double maxerror)
131 const double Min = 0.00001;
132 const double Max = 1.0 - Min;
134 m_MaximumError = std::max( Min, std::min( Max, maxerror ) );
142 void SetMaximumKernelWidth(
unsigned int n)
144 m_MaximumKernelWidth = n;
148 void SetOrder(
const unsigned int order) { m_Order = order;}
153 virtual void PrintSelf(std::ostream & os,
Indent i)
const;
161 static double ModifiedBesselI0(
double);
165 static double ModifiedBesselI1(
double);
169 static double ModifiedBesselI(
int,
double);
176 { this->FillCenteredDirectional(coeff); }
182 CoefficientVector GenerateGaussianCoefficients()
const;
185 const char * GetNameOfClass()
const
187 return "itkGaussianDerivativeOperator";
213 #ifndef ITK_MANUAL_INSTANTIATION
214 #include "itkGaussianDerivativeOperator.hxx"