18 #ifndef sitkGaussianImageSource_h
19 #define sitkGaussianImageSource_h
72 SITK_RETURN_SELF_TYPE_HEADER
SetSize (
const std::vector<unsigned int> &
Size ) { this->m_Size = Size;
return *
this; }
76 std::vector<unsigned int>
GetSize()
const {
return this->m_Size; }
81 SITK_RETURN_SELF_TYPE_HEADER
SetSigma (
const std::vector<double> & Sigma ) { this->m_Sigma = Sigma;
return *
this; }
84 SITK_RETURN_SELF_TYPE_HEADER
SetSigma(
double value ) { this->m_Sigma = std::vector<double>(3, value);
return *
this; }
90 std::vector<double>
GetSigma()
const {
return this->m_Sigma; }
95 SITK_RETURN_SELF_TYPE_HEADER
SetMean (
const std::vector<double> &
Mean ) { this->m_Mean =
Mean;
return *
this; }
98 SITK_RETURN_SELF_TYPE_HEADER
SetMean(
double value ) { this->m_Mean = std::vector<double>(3, value);
return *
this; }
104 std::vector<double>
GetMean()
const {
return this->m_Mean; }
109 SITK_RETURN_SELF_TYPE_HEADER
SetScale (
double Scale ) { this->m_Scale = Scale;
return *
this; }
118 SITK_RETURN_SELF_TYPE_HEADER
SetOrigin (
const std::vector<double> & Origin ) { this->m_Origin = Origin;
return *
this; }
122 std::vector<double>
GetOrigin()
const {
return this->m_Origin; }
126 SITK_RETURN_SELF_TYPE_HEADER
SetSpacing (
const std::vector<double> & Spacing ) { this->m_Spacing = Spacing;
return *
this; }
130 std::vector<double>
GetSpacing()
const {
return this->m_Spacing; }
134 SITK_RETURN_SELF_TYPE_HEADER
SetDirection ( std::vector<double> Direction ) { this->m_Direction = Direction;
return *
this; }
143 SITK_RETURN_SELF_TYPE_HEADER
SetNormalized (
bool Normalized ) { this->m_Normalized = Normalized;
return *
this; }
146 SITK_RETURN_SELF_TYPE_HEADER
NormalizedOn() {
return this->SetNormalized(
true); }
147 SITK_RETURN_SELF_TYPE_HEADER
NormalizedOff() {
return this->SetNormalized(
false); }
154 std::string
GetName()
const {
return std::string (
"GaussianImageSource"); }
157 std::string ToString()
const;
165 Image Execute (
PixelIDValueEnum outputPixelType,
const std::vector<unsigned int> & size,
const std::vector<double> & sigma,
const std::vector<double> & mean,
double scale,
const std::vector<double> & origin,
const std::vector<double> & spacing, std::vector<double> direction,
bool normalized );
172 typedef Image (Self::*MemberFunctionType)( );
173 template <
class TImageType>
Image ExecuteInternal ( );
206 SITKBasicFilters_EXPORT Image GaussianSource (
PixelIDValueEnum outputPixelType =
itk::simple::sitkFloat32,
const std::vector<unsigned int> & size = std::vector<unsigned int>(3, 64),
const std::vector<double> & sigma = std::vector<double>(3, 16.0),
const std::vector<double> & mean = std::vector<double>(3, 32.0),
double scale = 255,
const std::vector<double> & origin = std::vector<double>(3, 0.0),
const std::vector<double> & spacing = std::vector<double>(3, 1.0), std::vector<double> direction = std::vector<double>(),
bool normalized =
false );
Self & SetMean(const std::vector< double > &Mean)
std::vector< double > GetSpacing() const
Image GaussianSource(PixelIDValueEnum outputPixelType=itk::simple::sitkFloat32, const std::vector< unsigned int > &size=std::vector< unsigned int >(3, 64), const std::vector< double > &sigma=std::vector< double >(3, 16.0), const std::vector< double > &mean=std::vector< double >(3, 32.0), double scale=255, const std::vector< double > &origin=std::vector< double >(3, 0.0), const std::vector< double > &spacing=std::vector< double >(3, 1.0), std::vector< double > direction=std::vector< double >(), bool normalized=false)
Generate an n-dimensional image of a Gaussian.
std::vector< double > GetOrigin() const
Generate an n-dimensional image of a Gaussian.
#define SITKBasicFilters_EXPORT
std::vector< double > m_Origin
Self & SetOrigin(const std::vector< double > &Origin)
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
Self & SetSpacing(const std::vector< double > &Spacing)
std::string GetName() const
Self & SetScale(double Scale)
Self & SetSigma(double value)
PixelIDValueEnum
Enumerated values of pixelIDs.
Self & SetMean(double value)
Self & SetNormalized(bool Normalized)
bool GetNormalized() const
std::vector< double > GetMean() const
Self & SetOutputPixelType(PixelIDValueEnum OutputPixelType)
BasicPixelIDTypeList PixelIDTypeList
Image Mean(const Image &image1, const std::vector< unsigned int > &radius=std::vector< unsigned int >(3, 1))
Applies an averaging filter to an image.
The Image class for SimpleITK.
std::vector< double > m_Mean
std::vector< unsigned int > m_Size
PixelIDValueEnum GetOutputPixelType() const
nsstd::auto_ptr< detail::MemberFunctionFactory< MemberFunctionType > > m_MemberFactory
std::vector< double > m_Sigma
std::vector< double > GetSigma() const
Self & SetDirection(std::vector< double > Direction)
PixelIDValueEnum m_OutputPixelType
std::vector< double > m_Spacing
std::vector< double > GetDirection() const
std::vector< double > m_Direction
Self & SetSize(const std::vector< unsigned int > &Size)
std::vector< unsigned int > GetSize() const
The base interface for SimpleITK filters that take one input image.
Self & SetSigma(const std::vector< double > &Sigma)