19 #ifndef rtkDeconstructImageFilter_h 20 #define rtkDeconstructImageFilter_h 127 template <
class TImage>
144 #ifdef itkOverrideGetNameOfClassMacro 152 static constexpr
unsigned int ImageDimension = TImage::ImageDimension;
172 this->m_NumberOfLevels = levels;
173 this->ModifyInputOutputStorage();
181 return this->m_NumberOfLevels;
189 GenerateOutputInformation()
override;
192 GenerateInputRequestedRegion()
override;
195 itkGetMacro(Order,
unsigned int);
206 typename InputImageType::SizeType *
209 return m_Sizes.data();
219 typename InputImageType::IndexType *
222 return m_Indices.data();
229 PrintSelf(std::ostream & os,
itk::Indent indent)
const override;
235 ModifyInputOutputStorage();
239 GenerateData()
override;
243 CalculateNumberOfOutputs();
247 GeneratePassVectors();
250 unsigned int m_NumberOfLevels{ 5 };
251 unsigned int m_Order{ 3 };
252 bool m_PipelineConstructed{
256 typename std::vector<typename InputImageType::SizeType>
m_Sizes;
257 typename std::vector<typename InputImageType::IndexType>
m_Indices;
259 typename std::vector<typename ConvolutionFilterType::Pointer>
261 typename std::vector<typename DownsampleImageFilterType::Pointer>
264 typename std::vector<typename ConvolutionFilterType::PassVector>
m_PassVectors;
270 #ifndef rtk_MANUAL_INSTANTIATION 271 # include "rtkDeconstructImageFilter.hxx" typename OutputImageType::Pointer OutputImagePointer
std::vector< typename ConvolutionFilterType::PassVector > m_PassVectors
virtual void SetNumberOfLevels(unsigned int levels)
typename Superclass::InputImagePointer InputImagePointer
typename Superclass::InputImageConstPointer InputImageConstPointer
std::vector< typename InputImageType::IndexType > m_Indices
std::vector< typename ConvolutionFilterType::Pointer > m_ConvolutionFilters
std::vector< typename PadFilterType::Pointer > m_PadFilters
#define itkSetMacro(name, type)
InputImageType::IndexType * GetIndices()
TOutputImage OutputImageType
typename TImage::InternalPixelType InternalPixelType
typename TImage::PixelType PixelType
virtual unsigned int GetNumberOfLevels()
std::vector< typename DownsampleImageFilterType::Pointer > m_DownsampleFilters
InputImageType::SizeType * GetSizes()
typename Superclass::InputImageType InputImageType
Creates a Daubechies wavelets kernel image with the requested attributes (order, type, pass along each dimension)
An image filter that deconstructs an image using Daubechies wavelets.
std::vector< typename InputImageType::SizeType > m_Sizes
Downsamples an image by a factor in each dimension.