14 #ifndef __itkGenericMultiResolutionPyramidImageFilter_h
15 #define __itkGenericMultiResolutionPyramidImageFilter_h
17 #include "itkMultiResolutionPyramidImageFilter.h"
104 template<
class TInputImage,
class TOutputImage >
106 public MultiResolutionPyramidImageFilter< TInputImage, TOutputImage >
112 typedef MultiResolutionPyramidImageFilter<
123 MultiResolutionPyramidImageFilter );
127 TInputImage::ImageDimension );
129 TOutputImage::ImageDimension );
138 typedef typename Superclass::InputImageType::SpacingType
SpacingType;
172 return this->m_Schedule;
196 itkGetConstReferenceMacro( CurrentLevel,
unsigned int );
201 itkGetConstMacro( ComputeOnlyForCurrentLevel,
bool );
202 itkBooleanMacro( ComputeOnlyForCurrentLevel );
209 itkSetMacro( UseMultiResolutionRescaleSchedule,
bool );
210 itkGetConstMacro( UseMultiResolutionRescaleSchedule,
bool );
211 itkBooleanMacro( UseMultiResolutionRescaleSchedule );
217 itkSetMacro( UseMultiResolutionSmoothingSchedule,
bool );
218 itkGetConstMacro( UseMultiResolutionSmoothingSchedule,
bool );
219 itkBooleanMacro( UseMultiResolutionSmoothingSchedule );
221 #ifdef ITK_USE_CONCEPT_CHECKING
223 itkConceptMacro( SameDimensionCheck,
224 ( Concept::SameDimension< ImageDimension, OutputImageDimension > ) );
225 itkConceptMacro( OutputHasNumericTraitsCheck,
226 ( Concept::HasNumericTraits< typename TOutputImage::PixelType > ) );
234 void PrintSelf( std::ostream & os, Indent indent )
const;
281 const unsigned int * factors,
310 #ifndef ITK_MANUAL_INSTANTIATION
311 #include "itkGenericMultiResolutionPyramidImageFilter.hxx"
bool m_SmoothingScheduleDefined
virtual void SetCurrentLevel(unsigned int level)
unsigned int m_CurrentLevel
ScheduleType RescaleScheduleType
Superclass::ScheduleType ScheduleType
virtual void SetNumberOfLevels(unsigned int num)
Superclass::OutputImagePointer OutputImagePointer
SigmaArrayType RescaleFactorArrayType
virtual void SetRescaleSchedule(const RescaleScheduleType &schedule)
SmoothingScheduleType m_SmoothingSchedule
~GenericMultiResolutionPyramidImageFilter()
GenericMultiResolutionPyramidImageFilter Self
virtual void SetSchedule(const ScheduleType &schedule)
Superclass::Superclass SuperSuperclass
Framework for creating images in a multi-resolution pyramid.
virtual void GenerateData(void)
InputImageType::PixelType PixelType
SmartPointer< const Self > ConstPointer
void PrintSelf(std::ostream &os, Indent indent) const
FixedArray< ScalarRealType, itkGetStaticConstMacro(ImageDimension) > SigmaArrayType
void ReleaseOutputs(void)
virtual void GenerateOutputRequestedRegion(DataObject *output)
Array2D< ScalarRealType > SmoothingScheduleType
virtual void SetComputeOnlyForCurrentLevel(const bool _arg)
Superclass::InputImageConstPointer InputImageConstPointer
NumericTraits< PixelType >::ScalarRealType ScalarRealType
bool m_UseMultiResolutionRescaleSchedule
bool m_ComputeOnlyForCurrentLevel
bool ComputeForCurrentLevel(const unsigned int level) const
double GetDefaultSigma(const unsigned int dim, const unsigned int *factors, const SpacingType &spacing) const
bool m_UseMultiResolutionSmoothingSchedule
virtual void GenerateInputRequestedRegion(void)
Superclass::InputImagePointer InputImagePointer
virtual void GenerateOutputInformation(void)
bool AreSigmasAllZeros(const SigmaArrayType &sigmaArray) const
bool AreRescaleFactorsAllOnes(const RescaleFactorArrayType &rescaleFactorArray) const
Superclass::InputImageType InputImageType
SmartPointer< Self > Pointer
bool IsCasterNeeded(void) const
SigmaArrayType GetSigma(const unsigned int level, SigmaArrayType &sigmaArray) const
GenericMultiResolutionPyramidImageFilter()
virtual void SetSmoothingSchedule(const SmoothingScheduleType &schedule)
MultiResolutionPyramidImageFilter< TInputImage, TOutputImage > Superclass
void SetSmoothingScheduleToDefault(void)
void operator=(const Self &)
Superclass::InputImageType::SpacingType SpacingType
Superclass::OutputImageType OutputImageType
itkStaticConstMacro(ImageDimension, unsigned int, TInputImage::ImageDimension)
const RescaleScheduleType & GetRescaleSchedule(void) const