Go to the documentation of this file.
18 #ifndef __itkGenericMultiResolutionPyramidImageFilter_h
19 #define __itkGenericMultiResolutionPyramidImageFilter_h
21 #include "itkMultiResolutionPyramidImageFilter.h"
22 #include "itkSmoothingRecursiveGaussianImageFilter.h"
116 template<
class TInputImage,
class TOutputImage,
class TPrecisionType =
double >
118 public MultiResolutionPyramidImageFilter< TInputImage, TOutputImage >
124 typedef MultiResolutionPyramidImageFilter<
135 MultiResolutionPyramidImageFilter );
139 TInputImage::ImageDimension );
141 TOutputImage::ImageDimension );
150 typedef typename Superclass::InputImageType::SpacingType
SpacingType;
187 return this->m_Schedule;
215 itkGetConstReferenceMacro( CurrentLevel,
unsigned int );
220 itkGetConstMacro( ComputeOnlyForCurrentLevel,
bool );
221 itkBooleanMacro( ComputeOnlyForCurrentLevel );
223 #ifdef ITK_USE_CONCEPT_CHECKING
225 itkConceptMacro( SameDimensionCheck,
226 ( Concept::SameDimension< ImageDimension, OutputImageDimension > ) );
227 itkConceptMacro( OutputHasNumericTraitsCheck,
228 ( Concept::HasNumericTraits< typename TOutputImage::PixelType > ) );
238 void PrintSelf( std::ostream & os, Indent indent )
const;
275 typedef SmoothingRecursiveGaussianImageFilter<
282 typedef ImageToImageFilter< OutputImageType, OutputImageType >
284 typedef ImageToImageFilter< InputImageType, OutputImageType >
291 typename SmootherType::Pointer & smoother,
298 typename SmootherType::Pointer & smoother,
302 typename ImageToImageFilterSameTypes::Pointer & rescaleSameTypes,
303 typename ImageToImageFilterDifferentTypes::Pointer & rescaleDifferentTypes );
310 typename ImageToImageFilterSameTypes::Pointer & rescaleSameTypes,
311 typename ImageToImageFilterDifferentTypes::Pointer & rescaleDifferentTypes );
323 const unsigned int dim,
324 const unsigned int * factors,
360 #ifndef ITK_MANUAL_INSTANTIATION
361 #include "itkGenericMultiResolutionPyramidImageFilter.hxx"
Framework for creating images in a multi-resolution pyramid.
GenericMultiResolutionPyramidImageFilter(const Self &)
ImageToImageFilter< OutputImageType, OutputImageType > ImageToImageFilterSameTypes
bool m_ComputeOnlyForCurrentLevel
MultiResolutionPyramidImageFilter< TInputImage, TOutputImage > Superclass
Superclass::InputImagePointer InputImagePointer
virtual void SetSchedule(const ScheduleType &schedule)
SmoothingScheduleType m_SmoothingSchedule
GenericMultiResolutionPyramidImageFilter Self
virtual void SetSmoothingScheduleToZero(void)
const RescaleScheduleType & GetRescaleSchedule(void) const
int SetupShrinkerOrResampler(const unsigned int level, typename SmootherType::Pointer &smoother, const bool sameType, const InputImageConstPointer &input, const OutputImagePointer &outputPtr, typename ImageToImageFilterSameTypes::Pointer &rescaleSameTypes, typename ImageToImageFilterDifferentTypes::Pointer &rescaleDifferentTypes)
virtual void GenerateOutputRequestedRegion(DataObject *output)
itkStaticConstMacro(OutputImageDimension, unsigned int, TOutputImage::ImageDimension)
unsigned int m_CurrentLevel
Superclass::InputImageConstPointer InputImageConstPointer
SmartPointer< const Self > ConstPointer
virtual void SetSmoothingSchedule(const SmoothingScheduleType &schedule)
virtual void SetRescaleSchedule(const RescaleScheduleType &schedule)
bool IsSmoothingUsed(void) const
void DefineShrinkerOrResampler(const bool sameType, const RescaleFactorArrayType &shrinkFactors, const OutputImagePointer &outputPtr, typename ImageToImageFilterSameTypes::Pointer &rescaleSameTypes, typename ImageToImageFilterDifferentTypes::Pointer &rescaleDifferentTypes)
itkStaticConstMacro(ImageDimension, unsigned int, TInputImage::ImageDimension)
~GenericMultiResolutionPyramidImageFilter()
virtual void GenerateInputRequestedRegion(void)
SmartPointer< Self > Pointer
void ReleaseOutputs(void)
SigmaArrayType RescaleFactorArrayType
SmoothingRecursiveGaussianImageFilter< InputImageType, OutputImageType > SmootherType
GenericMultiResolutionPyramidImageFilter()
ScheduleType RescaleScheduleType
InputImageType::PixelType PixelType
void GetShrinkFactors(const unsigned int level, RescaleFactorArrayType &shrinkFactors) const
bool AreSigmasAllZeros(const SigmaArrayType &sigmaArray) const
bool IsRescaleUsed(void) const
Superclass::InputImageType::SpacingType SpacingType
virtual void GenerateData(void)
virtual void SetRescaleScheduleToUnity(void)
virtual void SetCurrentLevel(unsigned int level)
void SetSmoothingScheduleToDefault(void)
virtual void SetComputeOnlyForCurrentLevel(const bool _arg)
Superclass::InputImageType InputImageType
Superclass::OutputImageType OutputImageType
NumericTraits< PixelType >::ScalarRealType ScalarRealType
bool SetupSmoother(const unsigned int level, typename SmootherType::Pointer &smoother, const InputImageConstPointer &input)
void GetSigma(const unsigned int level, SigmaArrayType &sigmaArray) const
void PrintSelf(std::ostream &os, Indent indent) const
Superclass::Superclass SuperSuperclass
virtual void SetNumberOfLevels(unsigned int num)
bool ComputeForCurrentLevel(const unsigned int level) const
bool AreRescaleFactorsAllOnes(const RescaleFactorArrayType &rescaleFactorArray) const
Superclass::OutputImagePointer OutputImagePointer
Superclass::ScheduleType ScheduleType
void operator=(const Self &)
virtual void GenerateOutputInformation(void)
double GetDefaultSigma(const unsigned int level, const unsigned int dim, const unsigned int *factors, const SpacingType &spacing) const
Array2D< ScalarRealType > SmoothingScheduleType
FixedArray< ScalarRealType, itkGetStaticConstMacro(ImageDimension) > SigmaArrayType
ImageToImageFilter< InputImageType, OutputImageType > ImageToImageFilterDifferentTypes
bool m_SmoothingScheduleDefined
Generated on OURCE_DATE_EPOCH for elastix by 1.8.18 |
|