18#ifndef itkTikhonovDeconvolutionImageFilter_h
19#define itkTikhonovDeconvolutionImageFilter_h
50template <
typename TInputImage,
51 typename TKernelImage = TInputImage,
52 typename TOutputImage = TInputImage,
53 typename TInternalPrecision =
double>
103 itkSetMacro(RegularizationConstant,
double);
104 itkGetConstMacro(RegularizationConstant,
double);
124template <
typename TInput1,
typename TInput2,
typename TOutput>
146 const typename TOutput::value_type normH = std::norm(H);
151 value =
static_cast<TOutput
>(I * (std::conj(H) / denominator));
193#ifndef ITK_MANUAL_INSTANTIATION
194# include "itkTikhonovDeconvolutionImageFilter.hxx"
typename KernelImageType::IndexType KernelIndexType
typename KernelImageType::PixelType KernelPixelType
typename KernelImageType::SizeType KernelSizeType
typename OutputImageType::PixelType OutputPixelType
typename OutputImageType::RegionType OutputRegionType
typename OutputImageType::IndexType OutputIndexType
typename KernelImageType::RegionType KernelRegionType
typename InputSizeType::SizeValueType SizeValueType
typename InputImageType::PixelType InputPixelType
typename OutputImageType::SizeType OutputSizeType
typename InputImageType::IndexType InputIndexType
typename InputImageType::RegionType InputRegionType
typename InputImageType::SizeType InputSizeType
Image< TInternalPrecision, TInputImage::ImageDimension > InternalImageType
std::complex< TInternalPrecision > InternalComplexType
Image< InternalComplexType, TInputImage::ImageDimension > InternalComplexImageType
typename InternalComplexImageType::Pointer InternalComplexImagePointerType
typename InternalImageType::Pointer InternalImagePointerType
double m_KernelZeroMagnitudeThreshold
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(TikhonovDeconvolutionFunctor)
bool operator==(const TikhonovDeconvolutionFunctor &) const
double GetRegularizationConstant() const
double m_RegularizationConstant
~TikhonovDeconvolutionFunctor()=default
void SetRegularizationConstant(double constant)
TOutput operator()(const TInput1 &I, const TInput2 &H) const
TikhonovDeconvolutionFunctor(const TikhonovDeconvolutionFunctor &f)
void SetKernelZeroMagnitudeThreshold(double mu)
TikhonovDeconvolutionFunctor()=default
double GetKernelZeroMagnitudeThreshold() const
Control indentation during Print() invocation.
InverseDeconvolutionImageFilter()
Implements transparent reference counting.
TikhonovDeconvolutionImageFilter Self
TikhonovDeconvolutionImageFilter()
double m_RegularizationConstant
SmartPointer< Self > Pointer
TInputImage InputImageType
InverseDeconvolutionImageFilter< TInputImage, TKernelImage, TOutputImage, TInternalPrecision > Superclass
SmartPointer< const Self > ConstPointer
TKernelImage KernelImageType
~TikhonovDeconvolutionImageFilter() override=default
void GenerateData() override
TOutputImage OutputImageType
static constexpr unsigned int ImageDimension
void PrintSelf(std::ostream &os, Indent indent) const override
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....