Orfeo ToolBox  4.2
Orfeo ToolBox is not a black box
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
otb::ContinuousMinimumMaximumImageCalculator< TInputImage > Class Template Reference

Compute the continuous maximum and the minimum of an image. More...

#include <otbContinuousMinimumMaximumImageCalculator.h>

+ Inheritance diagram for otb::ContinuousMinimumMaximumImageCalculator< TInputImage >:
+ Collaboration diagram for otb::ContinuousMinimumMaximumImageCalculator< TInputImage >:

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef TInputImage::PointType ContinuousIndexType
 
typedef TInputImage::ConstPointer ImageConstPointer
 
typedef TInputImage::Pointer ImagePointer
 
typedef TInputImage ImageType
 
typedef TInputImage::IndexType IndexType
 
typedef TInputImage::PixelType PixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::NumericTraits
< PixelType >::RealType 
RealPixelType
 
typedef TInputImage::RegionType RegionType
 
typedef
ContinuousMinimumMaximumImageCalculator 
Self
 
typedef itk::Object Superclass
 

Public Member Functions

void Compute (void)
 
void ComputeMaximum (void)
 
void ComputeMinimum (void)
 
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const ContinuousIndexTypeGetContinuousIndexOfMaximum ()
 
virtual const ContinuousIndexTypeGetContinuousIndexOfMinimum ()
 
virtual const IndexTypeGetIndexOfMaximum ()
 
virtual const IndexTypeGetIndexOfMinimum ()
 
virtual PixelType GetMaximum ()
 
virtual PixelType GetMinimum ()
 
virtual const char * GetNameOfClass () const
 
virtual void SetImage (const ImageType *_arg)
 
void SetRegion (const RegionType &region)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 ContinuousMinimumMaximumImageCalculator ()
 
virtual ~ContinuousMinimumMaximumImageCalculator ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 

Protected Attributes

ImageConstPointer m_ContinuousImage
 
ContinuousIndexType m_ContinuousIndexOfMaximum
 
ContinuousIndexType m_ContinuousIndexOfMinimum
 
ImageConstPointer m_Image
 
IndexType m_IndexOfMaximum
 
IndexType m_IndexOfMinimum
 
PixelType m_Maximum
 
PixelType m_Minimum
 
RegionType m_Region
 
bool m_RegionSetByUser
 

Private Member Functions

 ContinuousMinimumMaximumImageCalculator (const Self &)
 
void operator= (const Self &)
 

Detailed Description

template<class TInputImage>
class otb::ContinuousMinimumMaximumImageCalculator< TInputImage >

Compute the continuous maximum and the minimum of an image.

To compute the continuous maximum and the minimum of an image, this class uses a simple polynomial interpolation.

First traditional discrete maximum and minimum are found. Then a second order polynomial is fitted between these extrema and their neighboring pixels.

The continuous extrema is assumed to be at the zero of the first order derivative of this polynom.

If we denote \( (x_0, y_0) \) the extrema and \( (x_{-1}, y_{-1}) \) and \( (x_1, y_1) \) its neighbor, the second degree polynom verify the following equations:

\[ y_{-1} = a*x_{-1}^2 + b*x_{-1} +c y_0 = a*x_0^2 + b*x_0 +c y_1 = a*x_1^2 + b*x_1 +c \]

The maximum is at \( -b/2a \) with is \( -\frac{(y_1-y_{-1})}{(2*(y_{-1}+y_1-2*y_0))} \)

Remark: image is assumed to be 2 dimensionnal

Definition at line 60 of file otbContinuousMinimumMaximumImageCalculator.h.

Member Typedef Documentation

template<class TInputImage >
typedef itk::SmartPointer<const Self> otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ConstPointer

Definition at line 68 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::PointType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ContinuousIndexType

Type definition for the input image index type.

Definition at line 95 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::ConstPointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ImageConstPointer

Const Pointer type for the image.

Definition at line 83 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::Pointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ImagePointer

Pointer type for the image.

Definition at line 80 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ImageType

Type definition for the input image.

Definition at line 74 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::IndexType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::IndexType

Type definition for the input image index type.

Definition at line 92 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::PixelType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::PixelType

Type definition for the input image pixel type.

Definition at line 86 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef itk::SmartPointer<Self> otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::Pointer

Definition at line 67 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef itk::NumericTraits<PixelType>::RealType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::RealPixelType

Type definition for the input image real pixel type.

Definition at line 89 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef TInputImage::RegionType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::RegionType

Type definition for the input image region type.

Definition at line 98 of file otbContinuousMinimumMaximumImageCalculator.h.

Standard class typedefs.

Definition at line 65 of file otbContinuousMinimumMaximumImageCalculator.h.

template<class TInputImage >
typedef itk::Object otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::Superclass

Definition at line 66 of file otbContinuousMinimumMaximumImageCalculator.h.

Constructor & Destructor Documentation

template<class TInputImage >
otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ContinuousMinimumMaximumImageCalculator ( )
protected
template<class TInputImage >
virtual otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::~ContinuousMinimumMaximumImageCalculator ( )
inlineprotectedvirtual
template<class TInputImage >
otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ContinuousMinimumMaximumImageCalculator ( const Self )
private

Member Function Documentation

template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::Compute ( void  )
template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ComputeMaximum ( void  )
template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::ComputeMinimum ( void  )
template<class TInputImage >
virtual::itk::LightObject::Pointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::CreateAnother ( void  ) const
template<class TInputImage >
virtual const ContinuousIndexType& otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetContinuousIndexOfMaximum ( )
virtual

Return the index of the maximum intensity value.

template<class TInputImage >
virtual const ContinuousIndexType& otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetContinuousIndexOfMinimum ( )
virtual

Return the index of the minimum intensity value.

template<class TInputImage >
virtual const IndexType& otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetIndexOfMaximum ( )
virtual

Return the index of the maximum intensity value.

template<class TInputImage >
virtual const IndexType& otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetIndexOfMinimum ( )
virtual

Return the index of the minimum intensity value.

template<class TInputImage >
virtual PixelType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetMaximum ( )
virtual

Return the maximum intensity value.

template<class TInputImage >
virtual PixelType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetMinimum ( )
virtual

Return the minimum intensity value.

template<class TInputImage >
virtual const char* otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::GetNameOfClass ( ) const
virtual

Run-time type information (and related methods).

template<class TInputImage >
static Pointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::New ( )
static

Method for creation through the object factory.

template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::operator= ( const Self )
private
template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
protected
template<class TInputImage >
virtual void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::SetImage ( const ImageType _arg)
virtual

Set the input image.

template<class TInputImage >
void otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::SetRegion ( const RegionType region)

Set the region over which the values will be computed

Definition at line 268 of file otbContinuousMinimumMaximumImageCalculator.txx.

Member Data Documentation

template<class TInputImage >
ImageConstPointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_ContinuousImage
protected
template<class TInputImage >
ContinuousIndexType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_ContinuousIndexOfMaximum
protected
template<class TInputImage >
ContinuousIndexType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_ContinuousIndexOfMinimum
protected
template<class TInputImage >
ImageConstPointer otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_Image
protected
template<class TInputImage >
IndexType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_IndexOfMaximum
protected
template<class TInputImage >
IndexType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_IndexOfMinimum
protected
template<class TInputImage >
PixelType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_Maximum
protected
template<class TInputImage >
PixelType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_Minimum
protected
template<class TInputImage >
RegionType otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_Region
protected
template<class TInputImage >
bool otb::ContinuousMinimumMaximumImageCalculator< TInputImage >::m_RegionSetByUser
protected

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