OTB  9.0.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage > Class Template Reference

#include <otbKullbackLeiblerDistanceImageFilter.h>

+ Inheritance diagram for otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >:
+ Collaboration diagram for otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::SmartPointer< SelfPointer
 
typedef KullbackLeiblerDistanceImageFilter Self
 
typedef otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< typename itk::ConstNeighborhoodIterator< TInputImage1 >, typename itk::ConstNeighborhoodIterator< TInputImage2 >, typename TOutputImage::PixelType > > Superclass
 
- Public Types inherited from otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > FunctorType
 
typedef Input1ImageType::ConstPointer Input1ImageConstPointer
 
typedef Input1ImageType::PixelType Input1ImagePixelType
 
typedef Input1ImageType::Pointer Input1ImagePointer
 
typedef Input1ImageType::RegionType Input1ImageRegionType
 
typedef TInputImage1 Input1ImageType
 
typedef Input2ImageType::ConstPointer Input2ImageConstPointer
 
typedef Input2ImageType::PixelType Input2ImagePixelType
 
typedef Input2ImageType::Pointer Input2ImagePointer
 
typedef Input2ImageType::RegionType Input2ImageRegionType
 
typedef TInputImage2 Input2ImageType
 
typedef OutputImageType::PixelType OutputImagePixelType
 
typedef OutputImageType::Pointer OutputImagePointer
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef TOutputImage OutputImageType
 
typedef itk::SmartPointer< SelfPointer
 
typedef itk::ProcessObject ProcessObjectType
 
typedef BinaryFunctorNeighborhoodImageFilter Self
 
typedef itk::ImageToImageFilter< TInputImage1, TOutputImage > Superclass
 
typedef itk::ConstNeighborhoodIterator< TInputImage1 > NeighborhoodIteratorType1
 
typedef itk::ConstNeighborhoodIterator< TInputImage2 > NeighborhoodIteratorType2
 
typedef NeighborhoodIteratorType1::RadiusType RadiusType1
 
typedef NeighborhoodIteratorType2::RadiusType RadiusType2
 
typedef itk::Size< Input1ImageType::ImageDimension > RadiusSizeType
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
- Public Member Functions inherited from otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
void SetInput1 (const TInputImage1 *image1)
 
void SetInput2 (const TInputImage2 *image2)
 
const TInputImage1 * GetInput1 ()
 
const TInputImage2 * GetInput2 ()
 
FunctorTypeGetFunctor ()
 
void SetFunctor (const FunctorType &functor)
 
virtual void SetRadius (RadiusSizeType _arg)
 
void SetRadius (unsigned int radius)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > >
static Pointer New ()
 

Protected Member Functions

 KullbackLeiblerDistanceImageFilter ()
 
 ~KullbackLeiblerDistanceImageFilter () override
 
- Protected Member Functions inherited from otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > >
 BinaryFunctorNeighborhoodImageFilter ()
 
 ~BinaryFunctorNeighborhoodImageFilter () override
 
void ThreadedGenerateData (const OutputImageRegionType &outputRegionForThread, itk::ThreadIdType threadId) override
 
void GenerateInputRequestedRegion (void) override
 

Private Member Functions

 KullbackLeiblerDistanceImageFilter (const Self &)=delete
 
void operator= (const Self &)=delete
 

Additional Inherited Members

- Protected Attributes inherited from otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance< itk::ConstNeighborhoodIterator< TInputImage1 >, itk::ConstNeighborhoodIterator< TInputImage2 >, TOutputImage::PixelType > >
RadiusSizeType m_Radius
 

Detailed Description

template<class TInputImage1, class TInputImage2, class TOutputImage>
class otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >

Implements neighborhood-wise the computation of KullbackLeibler distance over Edgeworth approximation.

This filter is parametrized over the types of the two input images and the type of the output image.

Numeric conversions (castings) are done by the C++ defaults.

The filter will walk over all the pixels in the two input images, and for each one of them it will do the following:

The filter expect all images to have the same dimension (e.g. all 2D, or all 3D, or all ND)

See article of Lin Saito et Levine "Edgeworth Approximation of the Kullback-Leibler Distance Towards Problems in Image Analysis" and "Edgeworth Expansions of the Kullback-Leibler Information" (submitted to JASA, nov 25, 1999) http://www.math.ucdavis.edu/~saito/publications

Definition at line 155 of file otbKullbackLeiblerDistanceImageFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
typedef itk::SmartPointer<const Self> otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::ConstPointer

Definition at line 170 of file otbKullbackLeiblerDistanceImageFilter.h.

◆ Pointer

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
typedef itk::SmartPointer<Self> otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::Pointer

Definition at line 169 of file otbKullbackLeiblerDistanceImageFilter.h.

◆ Self

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
typedef KullbackLeiblerDistanceImageFilter otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::Self

Standard class typedefs.

Definition at line 163 of file otbKullbackLeiblerDistanceImageFilter.h.

◆ Superclass

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
typedef otb::BinaryFunctorNeighborhoodImageFilter< TInputImage1, TInputImage2, TOutputImage, Functor::KullbackLeiblerDistance<typename itk::ConstNeighborhoodIterator<TInputImage1>, typename itk::ConstNeighborhoodIterator<TInputImage2>, typename TOutputImage::PixelType> > otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::Superclass

Definition at line 168 of file otbKullbackLeiblerDistanceImageFilter.h.

Constructor & Destructor Documentation

◆ KullbackLeiblerDistanceImageFilter() [1/2]

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::KullbackLeiblerDistanceImageFilter ( )
inlineprotected

Definition at line 176 of file otbKullbackLeiblerDistanceImageFilter.h.

◆ ~KullbackLeiblerDistanceImageFilter()

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::~KullbackLeiblerDistanceImageFilter ( )
inlineoverrideprotected

Definition at line 179 of file otbKullbackLeiblerDistanceImageFilter.h.

◆ KullbackLeiblerDistanceImageFilter() [2/2]

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::KullbackLeiblerDistanceImageFilter ( const Self )
privatedelete

Member Function Documentation

◆ CreateAnother()

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
virtual::itk::LightObject::Pointer otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::CreateAnother ( void  ) const

◆ New()

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
static Pointer otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::New ( )
static

Method for creation through the object factory.

◆ operator=()

template<class TInputImage1 , class TInputImage2 , class TOutputImage >
void otb::KullbackLeiblerDistanceImageFilter< TInputImage1, TInputImage2, TOutputImage >::operator= ( const Self )
privatedelete

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