19 #ifndef itkHistogramThresholdImageFilter_h
20 #define itkHistogramThresholdImageFilter_h
61 template <
typename TInputImage,
typename TOutputImage,
typename TMaskImage = TOutputImage>
118 static constexpr
unsigned int InputImageDimension = InputImageType::ImageDimension;
119 static constexpr
unsigned int OutputImageDimension = OutputImageType::ImageDimension;
120 static constexpr
unsigned int MaskImageDimension = MaskImageType::ImageDimension;
123 itkSetInputMacro(MaskImage, TMaskImage);
124 itkGetInputMacro(MaskImage, TMaskImage);
131 this->SetInput(input);
138 this->SetMaskImage(input);
143 itkSetMacro(OutsideValue, OutputPixelType);
146 itkGetConstMacro(OutsideValue, OutputPixelType);
150 itkSetMacro(InsideValue, OutputPixelType);
153 itkGetConstMacro(InsideValue, OutputPixelType);
156 itkSetMacro(NumberOfHistogramBins,
unsigned int);
157 itkGetConstMacro(NumberOfHistogramBins,
unsigned int);
162 itkSetMacro(AutoMinimumMaximum,
bool);
163 itkGetConstMacro(AutoMinimumMaximum,
bool);
164 itkBooleanMacro(AutoMinimumMaximum);
170 itkSetMacro(MaskOutput,
bool);
171 itkGetConstMacro(MaskOutput,
bool);
172 itkBooleanMacro(MaskOutput);
178 itkSetMacro(MaskValue, MaskPixelType);
179 itkGetConstMacro(MaskValue, MaskPixelType);
183 itkGetConstMacro(Threshold, InputPixelType);
186 itkSetObjectMacro(Calculator, CalculatorType);
187 itkGetModifiableObjectMacro(Calculator, CalculatorType);
190 #ifdef ITK_USE_CONCEPT_CHECKING
202 PrintSelf(std::ostream & os,
Indent indent)
const override;
205 GenerateInputRequestedRegion()
override;
207 GenerateData()
override;
212 Superclass::VerifyPreconditions();
213 if (m_Calculator.IsNull())
215 itkExceptionMacro(
"No threshold calculator set.");
222 SetUpHistogramGenerator(HistogramGeneratorPointer histogramGenerator);
229 unsigned int m_NumberOfHistogramBins{ 256 };
230 bool m_AutoMinimumMaximum{};
231 bool m_MaskOutput{
true };
236 #ifndef ITK_MANUAL_INSTANTIATION
237 # include "itkHistogramThresholdImageFilter.hxx"