18#ifndef itkLandweberDeconvolutionImageFilter_h
19#define itkLandweberDeconvolutionImageFilter_h
35template <
typename TInput1,
typename TInput2,
typename TInput3,
typename TOutput>
48 operator()(
const TInput1 & estimateFT,
const TInput2 & kernelFT,
const TInput2 & inputFT)
const
50 return m_Alpha * std::conj(kernelFT) * inputFT +
94template <
typename TInputImage,
95 typename TKernelImage = TInputImage,
96 typename TOutputImage = TInputImage,
97 typename TInternalPrecision =
double>
129 itkSetMacro(Alpha,
double);
130 itkGetMacro(Alpha,
double);
170#ifndef ITK_MANUAL_INSTANTIATION
171# include "itkLandweberDeconvolutionImageFilter.hxx"
HalfHermitianToRealInverseFFTImageFilter< InternalComplexImageType, InternalImageType > IFFTFilterType
Image< TInternalPrecision, TInputImage::ImageDimension > InternalImageType
RealToHalfHermitianForwardFFTImageFilter< InternalImageType, InternalComplexImageType > FFTFilterType
std::complex< TInternalPrecision > InternalComplexType
Image< InternalComplexType, TInputImage::ImageDimension > InternalComplexImageType
typename InternalComplexImageType::Pointer InternalComplexImagePointerType
typename InternalImageType::Pointer InternalImagePointerType
Functor class for computing a Landweber iteration.
bool operator==(const LandweberMethod &) const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(LandweberMethod)
InternalComplexType::value_type m_Alpha
TOutput operator()(const TInput1 &estimateFT, const TInput2 &kernelFT, const TInput2 &inputFT) const
Control indentation during Print() invocation.
IterativeDeconvolutionImageFilter()
LandweberDeconvolutionImageFilter()
void Finish(ProgressAccumulator *progress, float progressWeight) override
void Initialize(ProgressAccumulator *progress, float progressWeight, float iterationProgressWeight) override
SmartPointer< const Self > ConstPointer
TOutputImage OutputImageType
LandweberFilterType::Pointer m_LandweberFilter
void Iteration(ProgressAccumulator *progress, float iterationProgressWeight) override
TKernelImage KernelImageType
LandweberDeconvolutionImageFilter Self
TInputImage InputImageType
void PrintSelf(std::ostream &os, Indent indent) const override
SmartPointer< Self > Pointer
~LandweberDeconvolutionImageFilter() override
IFFTFilterType::Pointer m_IFFTFilter
Functor::LandweberMethod< InternalComplexType, InternalComplexType, InternalComplexType, InternalComplexType > LandweberFunctor
InternalComplexImagePointerType m_TransformedInput
IterativeDeconvolutionImageFilter< TInputImage, TKernelImage, TOutputImage, TInternalPrecision > Superclass
TernaryGeneratorImageFilter< InternalComplexImageType, InternalComplexImageType, InternalComplexImageType, InternalComplexImageType > LandweberFilterType
Facilitates progress reporting for filters that wrap around multiple other filters.
Implements transparent reference counting.
Implements pixel-wise generic operation of three images or images with constants.
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....