18#ifndef itkAdaptiveHistogramEqualizationImageFilter_h
19#define itkAdaptiveHistogramEqualizationImageFilter_h
71template <
typename TImageType,
typename TKernel = Neighborhood<
bool, TImageType::ImageDimension>>
77 typename Function::AdaptiveEqualizationHistogram<typename TImageType::PixelType, typename TImageType::PixelType>>
95 static constexpr unsigned int ImageDimension = TImageType::ImageDimension;
111 itkSetMacro(Alpha,
float);
112 itkGetConstMacro(Alpha,
float);
119 itkSetMacro(Beta,
float);
120 itkGetConstMacro(Beta,
float);
123#if !defined(ITK_FUTURE_LEGACY_REMOVE)
129 SetUseLookupTable(
const bool _arg)
131 itkDebugMacro(
"setting UseLookupTable to " << _arg);
132 itkGenericLegacyReplaceBodyMacro(
"UseLookupTable",
"",
"nothing");
133 if (this->m_UseLookupTable != _arg)
135 this->m_UseLookupTable = _arg;
139 itkGetConstMacro(UseLookupTable,
bool);
140 itkBooleanMacro(UseLookupTable);
145 ConfigureHistogram(
typename Superclass::HistogramType & h)
override
147 h.SetAlpha(this->m_Alpha);
148 h.SetBeta(this->m_Beta);
149 h.SetMinimum(this->m_InputMinimum);
150 h.SetMaximum(this->m_InputMaximum);
152 typename Superclass::HistogramType::RealType kernelSize = 1;
153 for (
unsigned int i = 0; i < ImageDimension; ++i)
155 kernelSize *= (2 * this->GetRadius()[i] + 1);
157 h.SetKernelSize(kernelSize);
171 m_UseLookupTable =
false;
176 PrintSelf(std::ostream & os,
Indent indent)
const override;
182 BeforeThreadedGenerateData()
override;
189 InputPixelType m_InputMaximum{};
191 bool m_UseLookupTable{};
195#ifndef ITK_MANUAL_INSTANTIATION
196# include "itkAdaptiveHistogramEqualizationImageFilter.hxx"
Power Law Adaptive Histogram Equalization.
typename ImageType::SizeType ImageSizeType
typename ImageType::PixelType InputPixelType
Control indentation during Print() invocation.
Light weight base class for most itk classes.
Implements a generic moving histogram algorithm.
static constexpr T max(const T &)
static constexpr T min(const T &)
ImageBaseType::SizeType SizeType
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....