18 #ifndef itkMaskedStatisticsImageFilter_h
19 #define itkMaskedStatisticsImageFilter_h
21 #include <itkImageToImageFilter.h>
22 #include <itkNumericTraits.h>
24 #include <itkSimpleDataObjectDecorator.h>
44 template<
typename TInputImage ,
typename TMaskImage = ::itk::Image<
unsigned char, TInputImage::ImageDimension> >
46 public ImageToImageFilter< TInputImage, TInputImage >
51 typedef ImageToImageFilter< TInputImage, TInputImage >
Superclass;
66 typedef typename TInputImage::SizeType
SizeType;
72 TInputImage::ImageDimension);
75 typedef typename NumericTraits< PixelType >::RealType
RealType;
133 using Superclass::MakeOutput;
139 #ifdef ITK_USE_CONCEPT_CHECKING
141 itkConceptMacro( InputHasNumericTraitsCheck,
142 ( Concept::HasNumericTraits< PixelType > ) );
149 void PrintSelf(std::ostream & os, Indent indent)
const override;
165 outputRegionForThread,
166 ThreadIdType threadId)
override;
176 void operator=(
const Self &);
178 Array< RealType > m_ThreadSum;
179 Array< RealType > m_SumOfSquares;
180 Array< SizeValueType > m_Count;
181 Array< PixelType > m_ThreadMin;
182 Array< PixelType > m_ThreadMax;
187 #ifndef ITK_MANUAL_INSTANTIATION
188 #include <itkMaskedStatisticsImageFilter.tpp>
Compute min. max, variance and mean of an (masked) Image.
NumericTraits< PixelType >::RealType RealType
MaskedStatisticsImageFilter()
void AfterThreadedGenerateData() override
const PixelObjectType * GetMaximumOutput() const
PixelObjectType * GetMinimumOutput()
MaskImageType::RegionType MaskImageRegionType
void PrintSelf(std::ostream &os, Indent indent) const override
void ThreadedGenerateData(const RegionType &outputRegionForThread, ThreadIdType threadId) override
SimpleDataObjectDecorator< PixelType > PixelObjectType
SmartPointer< Self > Pointer
TInputImage::SizeType SizeType
Superclass::InputImagePointer InputImagePointer
RealObjectType * GetVarianceOutput()
RealObjectType * GetMeanOutput()
SmartPointer< const Self > ConstPointer
void GenerateInputRequestedRegion() override
void BeforeThreadedGenerateData() override
~MaskedStatisticsImageFilter() override
const RealObjectType * GetSigmaOutput() const
MaskedStatisticsImageFilter Self
PixelType GetMaximum() const
TInputImage::PixelType PixelType
RealObjectType * GetSumOutput()
void AllocateOutputs() override
const PixelObjectType * GetMinimumOutput() const
TInputImage::IndexType IndexType
ImageToImageFilter< TInputImage, TInputImage > Superclass
RealObjectType * GetSigmaOutput()
RealType GetSigma() const
const RealObjectType * GetVarianceOutput() const
ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
DataObjectPointer MakeOutput(DataObjectPointerArraySizeType idx) override
DataObject::Pointer DataObjectPointer
const RealObjectType * GetSumOutput() const
RealType GetVariance() const
Superclass::InputImageType InputImageType
itkStaticConstMacro(ImageDimension, unsigned int, TInputImage::ImageDimension)
MaskImageType::ConstPointer MaskImageConstPointer
const RealObjectType * GetMeanOutput() const
void EnlargeOutputRequestedRegion(DataObject *data) override
TInputImage::RegionType RegionType
SimpleDataObjectDecorator< RealType > RealObjectType
PixelType GetMinimum() const
PixelObjectType * GetMaximumOutput()
::mitk::Image InputImageType
Input image type for mapping operations.