18 #ifndef sitkProjectedLandweberDeconvolutionImageFilter_h
19 #define sitkProjectedLandweberDeconvolutionImageFilter_h
75 SITK_RETURN_SELF_TYPE_HEADER
SetAlpha (
double Alpha ) { this->m_Alpha = Alpha;
return *
this; }
80 double GetAlpha()
const {
return this->m_Alpha; }
85 SITK_RETURN_SELF_TYPE_HEADER
SetNumberOfIterations (
int NumberOfIterations ) { this->m_NumberOfIterations = NumberOfIterations;
return *
this; }
99 SITK_RETURN_SELF_TYPE_HEADER
NormalizeOn() {
return this->SetNormalize(
true); }
100 SITK_RETURN_SELF_TYPE_HEADER
NormalizeOff() {
return this->SetNormalize(
false); }
106 typedef enum {
ZERO_PAD,ZERO_FLUX_NEUMANN_PAD,PERIODIC_PAD} BoundaryConditionType;
126 std::string
GetName()
const {
return std::string (
"ProjectedLandweberDeconvolutionImageFilter"); }
129 std::string ToString()
const;
143 typedef Image (Self::*MemberFunctionType)(
const Image& image1,
const Image& image2 );
144 template <
class TImageType>
Image ExecuteInternal (
const Image& image1,
const Image& image2 );
bool GetNormalize() const
std::string GetName() const
BoundaryConditionType GetBoundaryCondition() const
#define SITKBasicFilters_EXPORT
typelist::MakeTypeList< BasicPixelID< int8_t >, BasicPixelID< uint8_t >, BasicPixelID< int16_t >, BasicPixelID< uint16_t >, BasicPixelID< int32_t >, BasicPixelID< uint32_t >, BasicPixelID< float >, BasicPixelID< double > >::Type BasicPixelIDTypeList
Image Normalize(const Image &image1)
Normalize an image by setting its mean to zero and variance to one.
Self & SetNumberOfIterations(int NumberOfIterations)
Self & SetNormalize(bool Normalize)
OutputRegionModeType GetOutputRegionMode() const
BoundaryConditionType m_BoundaryCondition
ProjectedLandweberDeconvolutionImageFilter Self
int GetNumberOfIterations() const
The Image class for SimpleITK.
Self & SetBoundaryCondition(BoundaryConditionType BoundaryCondition)
OutputRegionModeType m_OutputRegionMode
Self & SetOutputRegionMode(OutputRegionModeType OutputRegionMode)
Deconvolve an image using the projected Landweber deconvolution algorithm.
Image ProjectedLandweberDeconvolution(const Image &image1, const Image &image2, double alpha=0.1, int numberOfIterations=1, bool normalize=false, ProjectedLandweberDeconvolutionImageFilter::BoundaryConditionType boundaryCondition=itk::simple::ProjectedLandweberDeconvolutionImageFilter::ZERO_FLUX_NEUMANN_PAD, ProjectedLandweberDeconvolutionImageFilter::OutputRegionModeType outputRegionMode=itk::simple::ProjectedLandweberDeconvolutionImageFilter::SAME)
Deconvolve an image using the projected Landweber deconvolution algorithm.
The base interface for SimpleITK filters that take one input image.
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
Self & SetAlpha(double Alpha)
BasicPixelIDTypeList PixelIDTypeList