OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | List of all members
otb::ComputeGainLutFilter< TInputImage, TOutputImage > Class Template Reference

#include <otbComputeGainLutFilter.h>

+ Inheritance diagram for otb::ComputeGainLutFilter< TInputImage, TOutputImage >:
+ Collaboration diagram for otb::ComputeGainLutFilter< TInputImage, TOutputImage >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef InputImageType::PixelType HistoType
 
typedef TInputImage InputImageType
 
typedef OutputImageType::PixelType LutType
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef TOutputImage OutputImageType
 
typedef OutputImageType::InternalPixelType OutputPixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ComputeGainLutFilter Self
 
typedef itk::ImageToImageFilter< InputImageType, OutputImageTypeSuperclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 

Static Public Member Functions

static Pointer New ()
 
double m_Min
 
double m_Max
 
double m_Step
 
unsigned int m_NbBin
 
unsigned long m_NbPixel
 
virtual void SetNbPixel (unsigned long _arg)
 
virtual unsigned long GetNbPixel ()
 
virtual void SetMin (double _arg)
 
virtual double GetMin ()
 
virtual void SetMax (double _arg)
 
virtual double GetMax ()
 
 ComputeGainLutFilter ()
 
 ~ComputeGainLutFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void BeforeThreadedGenerateData () override
 
void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId) override
 
 ComputeGainLutFilter (const Self &)=delete
 
void operator= (const Self &)=delete
 
OutputPixelType PostProcess (unsigned int countMapValue, unsigned int countValue)
 
void Equalized (const HistoType &inputHisto, HistoType &targetHisto, LutType &lut)
 
void CreateTarget (const HistoType &inputHisto, HistoType &targetHisto)
 
bool IsValid (const HistoType &inputHisto)
 

Detailed Description

template<class TInputImage, class TOutputImage>
class otb::ComputeGainLutFilter< TInputImage, TOutputImage >

Compute the gain for each pixel value from a histogram.

This class implements the second part of the CLAHE algorithm. It's aim is to compute a look up table filled with gain that need to be applied on the input to match the target histogram. To keep consistency with the other parts of the algorithm it needs the minimum and maximum value of the input image and also the theoretical number of pixel per histogram.

Definition at line 43 of file otbComputeGainLutFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<class TInputImage , class TOutputImage >
typedef itk::SmartPointer<const Self> otb::ComputeGainLutFilter< TInputImage, TOutputImage >::ConstPointer

Definition at line 54 of file otbComputeGainLutFilter.h.

◆ HistoType

template<class TInputImage , class TOutputImage >
typedef InputImageType::PixelType otb::ComputeGainLutFilter< TInputImage, TOutputImage >::HistoType

Definition at line 56 of file otbComputeGainLutFilter.h.

◆ InputImageType

template<class TInputImage , class TOutputImage >
typedef TInputImage otb::ComputeGainLutFilter< TInputImage, TOutputImage >::InputImageType

typedef for standard classes.

Definition at line 48 of file otbComputeGainLutFilter.h.

◆ LutType

template<class TInputImage , class TOutputImage >
typedef OutputImageType::PixelType otb::ComputeGainLutFilter< TInputImage, TOutputImage >::LutType

Definition at line 57 of file otbComputeGainLutFilter.h.

◆ OutputImageRegionType

template<class TInputImage , class TOutputImage >
typedef OutputImageType::RegionType otb::ComputeGainLutFilter< TInputImage, TOutputImage >::OutputImageRegionType

Definition at line 59 of file otbComputeGainLutFilter.h.

◆ OutputImageType

template<class TInputImage , class TOutputImage >
typedef TOutputImage otb::ComputeGainLutFilter< TInputImage, TOutputImage >::OutputImageType

Definition at line 49 of file otbComputeGainLutFilter.h.

◆ OutputPixelType

template<class TInputImage , class TOutputImage >
typedef OutputImageType::InternalPixelType otb::ComputeGainLutFilter< TInputImage, TOutputImage >::OutputPixelType

Definition at line 58 of file otbComputeGainLutFilter.h.

◆ Pointer

template<class TInputImage , class TOutputImage >
typedef itk::SmartPointer<Self> otb::ComputeGainLutFilter< TInputImage, TOutputImage >::Pointer

Definition at line 53 of file otbComputeGainLutFilter.h.

◆ Self

template<class TInputImage , class TOutputImage >
typedef ComputeGainLutFilter otb::ComputeGainLutFilter< TInputImage, TOutputImage >::Self

Definition at line 51 of file otbComputeGainLutFilter.h.

◆ Superclass

template<class TInputImage , class TOutputImage >
typedef itk::ImageToImageFilter<InputImageType, OutputImageType> otb::ComputeGainLutFilter< TInputImage, TOutputImage >::Superclass

Definition at line 52 of file otbComputeGainLutFilter.h.

Constructor & Destructor Documentation

◆ ComputeGainLutFilter() [1/2]

template<class TInputImage , class TOutputImage >
otb::ComputeGainLutFilter< TInputImage, TOutputImage >::ComputeGainLutFilter
protected

Get/Set macro to get/set the number of pixel by histogram

Definition at line 34 of file otbComputeGainLutFilter.hxx.

◆ ~ComputeGainLutFilter()

template<class TInputImage , class TOutputImage >
otb::ComputeGainLutFilter< TInputImage, TOutputImage >::~ComputeGainLutFilter ( )
inlineoverrideprotected

Get/Set macro to get/set the number of pixel by histogram

Definition at line 84 of file otbComputeGainLutFilter.h.

◆ ComputeGainLutFilter() [2/2]

template<class TInputImage , class TOutputImage >
otb::ComputeGainLutFilter< TInputImage, TOutputImage >::ComputeGainLutFilter ( const Self )
privatedelete

Get/Set macro to get/set the number of pixel by histogram

Member Function Documentation

◆ BeforeThreadedGenerateData()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::BeforeThreadedGenerateData
overrideprotected

Get/Set macro to get/set the number of pixel by histogram

Definition at line 44 of file otbComputeGainLutFilter.hxx.

◆ CreateAnother()

template<class TInputImage , class TOutputImage >
virtual::itk::LightObject::Pointer otb::ComputeGainLutFilter< TInputImage, TOutputImage >::CreateAnother ( void  ) const

◆ CreateTarget()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::CreateTarget ( const HistoType inputHisto,
HistoType targetHisto 
)
private

Create target depending on the number of pixel in the input histogram

Definition at line 133 of file otbComputeGainLutFilter.hxx.

◆ Equalized()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::Equalized ( const HistoType inputHisto,
HistoType targetHisto,
LutType lut 
)
private

Equalized input histogram regarding the target and filling the corresponding look up table

Definition at line 100 of file otbComputeGainLutFilter.hxx.

◆ GetMax()

template<class TInputImage , class TOutputImage >
virtual double otb::ComputeGainLutFilter< TInputImage, TOutputImage >::GetMax ( )
virtual

Get/Set macro to get/set the number of pixel by histogram

◆ GetMin()

template<class TInputImage , class TOutputImage >
virtual double otb::ComputeGainLutFilter< TInputImage, TOutputImage >::GetMin ( )
virtual

Get/Set macro to get/set the number of pixel by histogram

◆ GetNameOfClass()

template<class TInputImage , class TOutputImage >
virtual const char* otb::ComputeGainLutFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

◆ GetNbPixel()

template<class TInputImage , class TOutputImage >
virtual unsigned long otb::ComputeGainLutFilter< TInputImage, TOutputImage >::GetNbPixel ( )
virtual

Get/Set macro to get/set the number of pixel by histogram

◆ IsValid()

template<class TInputImage , class TOutputImage >
bool otb::ComputeGainLutFilter< TInputImage, TOutputImage >::IsValid ( const HistoType inputHisto)
private

Check whether the input histogram has enough pixel to be meaningful

Definition at line 149 of file otbComputeGainLutFilter.hxx.

◆ New()

template<class TInputImage , class TOutputImage >
static Pointer otb::ComputeGainLutFilter< TInputImage, TOutputImage >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::operator= ( const Self )
privatedelete

Get/Set macro to get/set the number of pixel by histogram

◆ PostProcess()

template<class TInputImage , class TOutputImage >
TOutputImage::InternalPixelType otb::ComputeGainLutFilter< TInputImage, TOutputImage >::PostProcess ( unsigned int  countMapValue,
unsigned int  countValue 
)
private

Post-process the look up table to get a gain instead of a simple value

Definition at line 91 of file otbComputeGainLutFilter.hxx.

◆ PrintSelf()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
overrideprotected

Standard "PrintSelf" method

Definition at line 159 of file otbComputeGainLutFilter.hxx.

◆ SetMax()

template<class TInputImage , class TOutputImage >
virtual void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::SetMax ( double  _arg)
virtual

Get/Set macro to get/set the maximum value

◆ SetMin()

template<class TInputImage , class TOutputImage >
virtual void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::SetMin ( double  _arg)
virtual

Get/Set macro to get/set the minimum value

◆ SetNbPixel()

template<class TInputImage , class TOutputImage >
virtual void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::SetNbPixel ( unsigned long  _arg)
virtual

Get/Set macro to get/set the number of pixel by histogram

◆ ThreadedGenerateData()

template<class TInputImage , class TOutputImage >
void otb::ComputeGainLutFilter< TInputImage, TOutputImage >::ThreadedGenerateData ( const OutputImageRegionType outputRegionForThread,
itk::ThreadIdType  threadId 
)
overrideprotected

Get/Set macro to get/set the number of pixel by histogram

Definition at line 51 of file otbComputeGainLutFilter.hxx.

Member Data Documentation

◆ m_Max

template<class TInputImage , class TOutputImage >
double otb::ComputeGainLutFilter< TInputImage, TOutputImage >::m_Max
private

Get/Set macro to get/set the number of pixel by histogram

Definition at line 112 of file otbComputeGainLutFilter.h.

◆ m_Min

template<class TInputImage , class TOutputImage >
double otb::ComputeGainLutFilter< TInputImage, TOutputImage >::m_Min
private

Get/Set macro to get/set the number of pixel by histogram

Definition at line 111 of file otbComputeGainLutFilter.h.

◆ m_NbBin

template<class TInputImage , class TOutputImage >
unsigned int otb::ComputeGainLutFilter< TInputImage, TOutputImage >::m_NbBin
private

Get/Set macro to get/set the number of pixel by histogram

Definition at line 114 of file otbComputeGainLutFilter.h.

◆ m_NbPixel

template<class TInputImage , class TOutputImage >
unsigned long otb::ComputeGainLutFilter< TInputImage, TOutputImage >::m_NbPixel
private

Get/Set macro to get/set the number of pixel by histogram

Definition at line 115 of file otbComputeGainLutFilter.h.

◆ m_Step

template<class TInputImage , class TOutputImage >
double otb::ComputeGainLutFilter< TInputImage, TOutputImage >::m_Step
private

Get/Set macro to get/set the number of pixel by histogram

Definition at line 113 of file otbComputeGainLutFilter.h.


The documentation for this class was generated from the following files: