18 #ifndef itkBilateralImageFilter_h
19 #define itkBilateralImageFilter_h
74 template<
typename TInputImage,
typename TOutputImage >
108 itkStaticConstMacro(ImageDimension,
unsigned int,
109 TOutputImage::ImageDimension);
135 itkGetConstMacro(DomainSigma,
const ArrayType);
136 itkSetMacro(DomainMu,
double);
137 itkGetConstReferenceMacro(DomainMu,
double);
138 itkSetMacro(RangeSigma,
double);
139 itkGetConstMacro(RangeSigma,
double);
140 itkGetConstMacro(FilterDimensionality,
unsigned int);
141 itkSetMacro(FilterDimensionality,
unsigned int);
148 m_DomainSigma.Fill(v);
156 itkBooleanMacro(AutomaticKernelSize);
157 itkGetConstMacro(AutomaticKernelSize,
bool);
158 itkSetMacro(AutomaticKernelSize,
bool);
166 itkGetConstReferenceMacro(Radius,
SizeType);
171 itkSetMacro(NumberOfRangeGaussianSamples,
unsigned long);
172 itkGetConstMacro(NumberOfRangeGaussianSamples,
unsigned long);
175 #ifdef ITK_USE_CONCEPT_CHECKING
190 void PrintSelf(std::ostream & os,
Indent indent)
const ITK_OVERRIDE;
193 void BeforeThreadedGenerateData() ITK_OVERRIDE;
197 void ThreadedGenerateData(const OutputImageRegionType & outputRegionForThread,
206 virtual
void GenerateInputRequestedRegion() ITK_OVERRIDE;
225 unsigned int m_FilterDimensionality;
230 bool m_AutomaticKernelSize;
233 unsigned long m_NumberOfRangeGaussianSamples;
234 double m_DynamicRange;
235 double m_DynamicRangeUsed;
236 std::vector<
double > m_RangeGaussianTable;
240 #ifndef ITK_MANUAL_INSTANTIATION
241 #include "itkBilateralImageFilter.hxx"
SmartPointer< const Self > ConstPointer
Neighborhood< double, itkGetStaticConstMacro(ImageDimension) > KernelType
SmartPointer< Self > Pointer
BilateralImageFilter Self
ConstNeighborhoodIterator< TInputImage > NeighborhoodIteratorType
TOutputImage::PixelType OutputPixelType
Base class for all process objects that output image data.
unsigned long SizeValueType
KernelType::ConstIterator KernelConstIteratorType
void SetDomainSigma(const double v)
virtual ~BilateralImageFilter() override
FixedArray< double, itkGetStaticConstMacro(ImageDimension) > ArrayType
TInputImage::PixelType InputPixelType
TOutputImage OutputImageType
Blurs an image while preserving edges.
NumericTraits< OutputPixelType >::RealType OutputPixelRealType
unsigned int ThreadIdType
TOutputImage::InternalPixelType OutputInternalPixelType
TInputImage::InternalPixelType InputInternalPixelType
AllocatorType::iterator Iterator
KernelType::SizeType SizeType
Base class for filters that take an image as input and produce an image as output.
Control indentation during Print() invocation.
AllocatorType::const_iterator ConstIterator
KernelType::Iterator KernelIteratorType
ImageBaseType::SizeType SizeType
KernelType::SizeValueType SizeValueType
Define additional traits for native types such as int or float.
SizeType::SizeValueType SizeValueType
#define itkConceptMacro(name, concept)
Image< double, itkGetStaticConstMacro(ImageDimension) > GaussianImageType
Templated n-dimensional image class.
Superclass::OutputImageRegionType OutputImageRegionType
TInputImage InputImageType
ImageToImageFilter< TInputImage, TOutputImage > Superclass