18 #ifndef itkMultiScaleHessianBasedMeasureImageFilter_h
19 #define itkMultiScaleHessianBasedMeasureImageFilter_h
64 template<
typename TInputImage,
65 typename THessianImage,
66 typename TOutputImage = TInputImage >
90 itkStaticConstMacro(
ImageDimension,
unsigned int, InputImageType ::ImageDimension);
115 itkSetMacro(SigmaMinimum,
double);
116 itkGetConstMacro(SigmaMinimum,
double);
120 itkSetMacro(SigmaMaximum,
double);
121 itkGetConstMacro(SigmaMaximum,
double);
125 itkSetMacro(NumberOfSigmaSteps,
unsigned int);
126 itkGetConstMacro(NumberOfSigmaSteps,
unsigned int);
142 itkSetMacro(NonNegativeHessianBasedMeasure,
bool);
143 itkGetConstMacro(NonNegativeHessianBasedMeasure,
bool);
144 itkBooleanMacro(NonNegativeHessianBasedMeasure);
172 itkSetMacro(GenerateScalesOutput,
bool);
173 itkGetConstMacro(GenerateScalesOutput,
bool);
174 itkBooleanMacro(GenerateScalesOutput);
179 itkSetMacro(GenerateHessianOutput,
bool);
180 itkGetConstMacro(GenerateHessianOutput,
bool);
181 itkBooleanMacro(GenerateHessianOutput);
209 void operator=(const Self &);
230 #ifndef ITK_MANUAL_INSTANTIATION
231 #include "itkMultiScaleHessianBasedMeasureImageFilter.hxx"
double ComputeSigmaValue(int scaleLevel)
MultiScaleHessianBasedMeasureImageFilter()
TInputImage InputImageType
void AllocateUpdateBuffer()
Image< double, itkGetStaticConstMacro(ImageDimension) > UpdateBufferType
void PrintSelf(std::ostream &os, Indent indent) const override
UpdateBufferType::Pointer m_UpdateBuffer
void EnlargeOutputRequestedRegion(DataObject *) override
Image< ScalesPixelType, itkGetStaticConstMacro(ImageDimension) > ScalesImageType
void GenerateData() override
bool m_GenerateScalesOutput
const HessianImageType * GetHessianOutput() const
void UpdateMaximumResponse(double sigma)
Base class for all process objects that output image data.
static const unsigned int ImageDimension
HessianRecursiveGaussianImageFilter< InputImageType, HessianImageType > HessianFilterType
A filter to enhance structures using Hessian eigensystem-based measures in a multiscale framework...
MultiScaleHessianBasedMeasureImageFilter Self
TOutputImage::PixelType OutputPixelType
ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
const ScalesImageType * GetScalesOutput() const
DataObjectPointerArray::size_type DataObjectPointerArraySizeType
TInputImage::PixelType InputPixelType
THessianImage HessianImageType
void SetSigmaStepMethodToLogarithmic()
Computes the Hessian matrix of an image by convolution with the Second and Cross derivatives of a Gau...
SigmaStepMethodType m_SigmaStepMethod
HessianFilterType::Pointer m_HessianFilter
bool m_GenerateHessianOutput
HessianToMeasureFilterType::Pointer m_HessianToMeasureFilter
virtual DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx) override
Superclass::DataObjectPointer DataObjectPointer
void SetSigmaStepMethodToEquispaced()
Base class for filters that take an image as input and produce an image as output.
Control indentation during Print() invocation.
SmartPointer< Self > Pointer
TOutputImage OutputImageType
UpdateBufferType::ValueType BufferValueType
ImageToImageFilter< HessianImageType, OutputImageType > HessianToMeasureFilterType
SmartPointer< const Self > ConstPointer
~MultiScaleHessianBasedMeasureImageFilter()
bool m_NonNegativeHessianBasedMeasure
Base class for all data objects in ITK.
Templated n-dimensional image class.
TOutputImage::RegionType OutputRegionType
ImageToImageFilter< TInputImage, TOutputImage > Superclass
unsigned int m_NumberOfSigmaSteps