18 #ifndef sitkDiscreteGaussianImageFilter_h
19 #define sitkDiscreteGaussianImageFilter_h
74 SITK_RETURN_SELF_TYPE_HEADER
SetVariance (
const std::vector<double> & Variance ) { this->m_Variance = Variance;
return *
this; }
77 SITK_RETURN_SELF_TYPE_HEADER
SetVariance(
double value ) { this->m_Variance = std::vector<double>(3, value);
return *
this; }
83 std::vector<double>
GetVariance()
const {
return this->m_Variance; }
88 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumKernelWidth (
unsigned int MaximumKernelWidth ) { this->m_MaximumKernelWidth = MaximumKernelWidth;
return *
this; }
97 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumError (
const std::vector<double> & MaximumError ) { this->m_MaximumError = MaximumError;
return *
this; }
100 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumError(
double value ) { this->m_MaximumError = std::vector<double>(3, value);
return *
this; }
111 SITK_RETURN_SELF_TYPE_HEADER
SetUseImageSpacing (
bool UseImageSpacing ) { this->m_UseImageSpacing = UseImageSpacing;
return *
this; }
122 std::string
GetName()
const {
return std::string (
"DiscreteGaussianImageFilter"); }
125 std::string ToString()
const;
133 Image Execute (
const Image& image1,
const std::vector<double> & variance,
unsigned int maximumKernelWidth,
const std::vector<double> & maximumError,
bool useImageSpacing );
139 typedef Image (Self::*MemberFunctionType)(
const Image& image1 );
140 template <
class TImageType>
Image ExecuteInternal (
const Image& image1 );
163 SITKBasicFilters_EXPORT Image DiscreteGaussian (
const Image& image1,
const std::vector<double> & variance = std::vector<double>(3,1.0),
unsigned int maximumKernelWidth = 32u,
const std::vector<double> & maximumError = std::vector<double>(3, 0.01),
bool useImageSpacing =
true );
bool GetUseImageSpacing() const
Self & SetMaximumError(const std::vector< double > &MaximumError)
#define SITKBasicFilters_EXPORT
Self & UseImageSpacingOff()
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
std::vector< double > m_Variance
Self & UseImageSpacingOn()
Self & SetUseImageSpacing(bool UseImageSpacing)
std::vector< double > m_MaximumError
BasicPixelIDTypeList PixelIDTypeList
unsigned int GetMaximumKernelWidth() const
Image DiscreteGaussian(const Image &image1, double variance, unsigned int maximumKernelWidth=32u, double maximumError=0.01, bool useImageSpacing=true)
Blurs an image by separable convolution with discrete gaussian kernels. This filter performs Gaussian...
std::string GetName() const
The Image class for SimpleITK.
Self & SetMaximumKernelWidth(unsigned int MaximumKernelWidth)
DiscreteGaussianImageFilter Self
Self & SetVariance(double value)
Blurs an image by separable convolution with discrete gaussian kernels. This filter performs Gaussian...
Self & SetMaximumError(double value)
Self & SetVariance(const std::vector< double > &Variance)
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
unsigned int m_MaximumKernelWidth
The base interface for SimpleITK filters that take one input image.
std::vector< double > GetVariance() const
std::vector< double > GetMaximumError() const