19 #ifndef itkHistogramThresholdImageFilter_h
20 #define itkHistogramThresholdImageFilter_h
62 template <
typename TInputImage,
typename TOutputImage,
typename TMaskImage = TOutputImage>
119 static constexpr
unsigned int InputImageDimension = InputImageType::ImageDimension;
120 static constexpr
unsigned int OutputImageDimension = OutputImageType::ImageDimension;
121 static constexpr
unsigned int MaskImageDimension = MaskImageType::ImageDimension;
124 itkSetInputMacro(MaskImage, TMaskImage);
125 itkGetInputMacro(MaskImage, TMaskImage);
132 this->SetInput(input);
139 this->SetMaskImage(input);
144 itkSetMacro(OutsideValue, OutputPixelType);
147 itkGetConstMacro(OutsideValue, OutputPixelType);
151 itkSetMacro(InsideValue, OutputPixelType);
154 itkGetConstMacro(InsideValue, OutputPixelType);
157 itkSetMacro(NumberOfHistogramBins,
unsigned int);
158 itkGetConstMacro(NumberOfHistogramBins,
unsigned int);
163 itkSetMacro(AutoMinimumMaximum,
bool);
164 itkGetConstMacro(AutoMinimumMaximum,
bool);
165 itkBooleanMacro(AutoMinimumMaximum);
171 itkSetMacro(MaskOutput,
bool);
172 itkGetConstMacro(MaskOutput,
bool);
173 itkBooleanMacro(MaskOutput);
179 itkSetMacro(MaskValue, MaskPixelType);
180 itkGetConstMacro(MaskValue, MaskPixelType);
184 itkGetConstMacro(Threshold, InputPixelType);
187 itkSetObjectMacro(Calculator, CalculatorType);
188 itkGetModifiableObjectMacro(Calculator, CalculatorType);
191 #ifdef ITK_USE_CONCEPT_CHECKING
203 PrintSelf(std::ostream & os,
Indent indent)
const override;
206 GenerateInputRequestedRegion()
override;
208 GenerateData()
override;
213 Superclass::VerifyPreconditions();
214 if (m_Calculator.IsNull())
216 itkExceptionMacro(<<
"No threshold calculator set.");
223 SetUpHistogramGenerator(HistogramGeneratorPointer histogramGenerator);
230 unsigned m_NumberOfHistogramBins{ 256 };
232 bool m_MaskOutput{
true };
237 #ifndef ITK_MANUAL_INSTANTIATION
238 # include "itkHistogramThresholdImageFilter.hxx"