18 #ifndef sitkDiscreteGaussianImageFilter_h
19 #define sitkDiscreteGaussianImageFilter_h
76 SITK_RETURN_SELF_TYPE_HEADER
SetVariance ( std::vector<double> Variance ) { this->m_Variance = std::move(Variance);
return *
this; }
79 SITK_RETURN_SELF_TYPE_HEADER
SetVariance(
double value ) { this->m_Variance = std::vector<double>(3, value);
return *
this; }
84 std::vector<double>
GetVariance()
const {
return this->m_Variance; }\
89 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumKernelWidth (
unsigned int MaximumKernelWidth ) { this->m_MaximumKernelWidth = MaximumKernelWidth;
return *
this; }
98 SITK_RETURN_SELF_TYPE_HEADER
SetMaximumError ( std::vector<double> MaximumError ) { this->m_MaximumError = std::move(MaximumError);
return *
this; }
101 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; }
123 std::string
GetName()
const {
return std::string (
"DiscreteGaussianImageFilter"); }
126 std::string ToString()
const;
138 template <
class TImageType>
Image ExecuteInternal (
const Image& image1 );
146 std::vector<double> m_Variance{std::vector<double>(3,1.0)};
148 unsigned int m_MaximumKernelWidth{32u};
150 std::vector<double> m_MaximumError{std::vector<double>(3, 0.01)};
152 bool m_UseImageSpacing{
true};
167 SITKBasicFilters_EXPORT Image DiscreteGaussian (
const Image& image1, std::vector<double> variance = std::vector<double>(3,1.0),
unsigned int maximumKernelWidth = 32u, std::vector<double> maximumError = std::vector<double>(3, 0.01),
bool useImageSpacing =
true );