18 #ifndef __itkHistogramMatchingImageFilter_h
19 #define __itkHistogramMatchingImageFilter_h
23 #include "vnl/vnl_matrix.h"
67 template<
typename TInputImage,
typename TOutputImage,
typename THistogramMeasurement =
typename TInputImage::PixelType >
86 TInputImage::ImageDimension);
88 TOutputImage::ImageDimension);
136 itkSetMacro(ThresholdAtMeanIntensity,
bool);
137 itkGetConstMacro(ThresholdAtMeanIntensity,
bool);
138 itkBooleanMacro(ThresholdAtMeanIntensity);
148 itkGetModifiableObjectMacro(ReferenceHistogram,
HistogramType);
152 #ifdef ITK_USE_CONCEPT_CHECKING
192 THistogramMeasurement & minValue,
193 THistogramMeasurement & maxValue,
194 THistogramMeasurement & meanValue);
198 HistogramType *histogram,
const THistogramMeasurement minValue,
199 const THistogramMeasurement maxValue);
237 #ifndef ITK_MANUAL_INSTANTIATION
238 #include "itkHistogramMatchingImageFilter.hxx"
THistogramMeasurement m_OutputMeanValue
InputPixelType m_ReferenceIntensityThreshold
THistogramMeasurement m_OutputMaxValue
TableType m_QuantileTable
void ThreadedGenerateData(const OutputImageRegionType &outputRegionForThread, ThreadIdType threadId)
vnl_matrix< double > TableType
InputImageType::PixelType InputPixelType
SizeValueType m_NumberOfMatchPoints
InputImageType::ConstPointer InputImageConstPointer
HistogramMatchingImageFilter Self
Superclass::OutputImageType OutputImageType
Superclass::InputImageType InputImageType
HistogramPointer m_ReferenceHistogram
THistogramMeasurement m_ReferenceMeanValue
void SetReferenceImage(const InputImageType *reference)
SizeValueType m_NumberOfHistogramLevels
THistogramMeasurement m_ReferenceMaxValue
HistogramMatchingImageFilter()
vnl_vector< double > GradientArrayType
InputImageType::Pointer InputImagePointer
void AfterThreadedGenerateData()
Superclass::OutputImagePointer OutputImagePointer
ImageToImageFilter< TInputImage, TOutputImage > Superclass
This class stores measurement vectors in the context of n-dimensional histogram.
void ComputeMinMaxMean(const InputImageType *image, THistogramMeasurement &minValue, THistogramMeasurement &maxValue, THistogramMeasurement &meanValue)
Superclass::InputImagePointer InputImagePointer
virtual void GenerateInputRequestedRegion()
THistogramMeasurement m_ReferenceMinValue
InputPixelType m_SourceIntensityThreshold
THistogramMeasurement m_SourceMeanValue
Base class for all process objects that output image data.
THistogramMeasurement m_OutputMinValue
unsigned long SizeValueType
void PrintSelf(std::ostream &os, Indent indent) const
bool m_ThresholdAtMeanIntensity
~HistogramMatchingImageFilter()
HistogramPointer m_OutputHistogram
const InputImageType * GetReferenceImage(void)
SmartPointer< const Self > ConstPointer
virtual void SetInput(const InputImageType *image)
void BeforeThreadedGenerateData()
OutputImageType::Pointer OutputImagePointer
THistogramMeasurement m_SourceMaxValue
TOutputImage::RegionType OutputImageRegionType
OutputImageType::PixelType OutputPixelType
static const unsigned int ImageDimension
const InputImageType * GetSourceImage(void)
const InputImageType * GetInput(void) const
TInputImage InputImageType
SmartPointer< Self > Pointer
HistogramPointer m_SourceHistogram
Base class for filters that take an image as input and produce an image as output.
void SetSourceImage(const InputImageType *source)
Normalize the grayscale values between two images by histogram matching.
void ConstructHistogram(const InputImageType *image, HistogramType *histogram, const THistogramMeasurement minValue, const THistogramMeasurement maxValue)
Control indentation during Print() invocation.
OutputPixelType m_OutputIntensityThreshold
GradientArrayType m_Gradients
TOutputImage OutputImageType
#define itkConceptMacro(name, concept)
void operator=(const Self &)
static const unsigned int OutputImageDimension
HistogramType::Pointer HistogramPointer
virtual void VerifyInputInformation()
Statistics::Histogram< THistogramMeasurement > HistogramType
Superclass::InputImageConstPointer InputImageConstPointer
THistogramMeasurement m_SourceMinValue
unsigned int ThreadIdType