18#ifndef itkFFTConvolutionImageFilter_h
19#define itkFFTConvolutionImageFilter_h
56template <
typename TInputImage,
57 typename TKernelImage = TInputImage,
58 typename TOutputImage = TInputImage,
59 typename TInternalPrecision =
double>
146 float progressWeight);
154 float progressWeight);
161 float progressWeight);
168 float progressWeight);
177 float progressWeight);
215#ifndef ITK_MANUAL_INSTANTIATION
216# include "itkFFTConvolutionImageFilter.hxx"
ConvolutionImageFilterBase()
ImageBoundaryCondition< TInputImage > BoundaryConditionType
void CropOutput(InternalImageType *paddedOutput, ProgressAccumulator *progress, float progressWeight)
typename OutputImageType::IndexType OutputIndexType
KernelSizeType GetKernelRadius() const
typename InternalImageType::SizeType InternalSizeType
void TransformPaddedInput(const InternalImageType *paddedInput, InternalComplexImagePointerType &transformedInput, ProgressAccumulator *progress, float progressWeight)
static constexpr unsigned int ImageDimension
void PrintSelf(std::ostream &os, Indent indent) const override
void PrepareInput(const InputImageType *input, InternalComplexImagePointerType &preparedInput, ProgressAccumulator *progress, float progressWeight)
typename KernelImageType::SizeType KernelSizeType
typename InternalImageType::IndexType InternalIndexType
typename OutputImageType::PixelType OutputPixelType
typename OutputImageType::RegionType OutputRegionType
bool GetXDimensionIsOdd() const
void PrepareInputs(const InputImageType *input, const KernelImageType *kernel, InternalComplexImagePointerType &preparedInput, InternalComplexImagePointerType &preparedKernel, ProgressAccumulator *progress, float progressWeight)
void PadInput(const InputImageType *input, InternalImagePointerType &paddedInput, ProgressAccumulator *progress, float progressWeight)
typename InputImageType::IndexType InputIndexType
HalfHermitianToRealInverseFFTImageFilter< InternalComplexImageType, InternalImageType > IFFTFilterType
void ProduceOutput(InternalComplexImageType *paddedOutput, ProgressAccumulator *progress, float progressWeight)
typename InputImageType::PixelType InputPixelType
FFTConvolutionImageFilter Self
TOutputImage OutputImageType
Image< TInternalPrecision, TInputImage::ImageDimension > InternalImageType
void GenerateInputRequestedRegion() override
RealToHalfHermitianForwardFFTImageFilter< InternalImageType, InternalComplexImageType > FFTFilterType
std::complex< TInternalPrecision > InternalComplexType
Image< InternalComplexType, TInputImage::ImageDimension > InternalComplexImageType
void GenerateData() override
InternalRegionType m_PaddedInputRegion
SizeValueType m_SizeGreatestPrimeFactor
~FFTConvolutionImageFilter() override=default
SmartPointer< Self > Pointer
InternalSizeType GetFFTPadSize() const
SmartPointer< const Self > ConstPointer
typename KernelImageType::IndexType KernelIndexType
FFTConvolutionImageFilter()
typename OutputImageType::SizeType OutputSizeType
typename InputImageType::RegionType InputRegionType
TInputImage InputImageType
typename InternalComplexImageType::Pointer InternalComplexImagePointerType
typename KernelImageType::RegionType KernelRegionType
void PrepareKernel(const KernelImageType *kernel, InternalComplexImagePointerType &preparedKernel, ProgressAccumulator *progress, float progressWeight)
typename KernelImageType::PixelType KernelPixelType
InternalSizeType m_FFTPadSize
typename InputSizeType::SizeValueType SizeValueType
TKernelImage KernelImageType
typename InternalImageType::RegionType InternalRegionType
ConvolutionImageFilterBase< TInputImage, TKernelImage, TOutputImage > Superclass
typename InternalImageType::Pointer InternalImagePointerType
typename InputImageType::SizeType InputSizeType
Base class for specialized complex-to-real inverse Fast Fourier Transform.
Templated n-dimensional image class.
Size< VImageDimension > SizeType
ImageRegion< VImageDimension > RegionType
SmartPointer< Self > Pointer
Index< VImageDimension > IndexType
Control indentation during Print() invocation.
Facilitates progress reporting for filters that wrap around multiple other filters.
Base class for specialized real-to-complex forward Fast Fourier Transform.
Implements transparent reference counting.
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....