OTB  7.3.0
Orfeo Toolbox
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
otb::ChangeNoDataValueFilter< TInputImage, TOutputImage > Class Template Reference

#include <otbChangeNoDataValueFilter.h>

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

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef Functor::ChangeNoDataFunctor< typename TInputImage::PixelType, typename TOutputImage::PixelType > FunctorType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ChangeNoDataValueFilter Self
 
typedef itk::UnaryFunctorImageFilter< TInputImage, TOutputImage, FunctorTypeSuperclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
void SetNaNIsNoData (bool nanIsNoData)
 
void SetNewNoDataValues (std::vector< double > &newValues)
 

Static Public Member Functions

static Pointer New ()
 

Protected Member Functions

 ChangeNoDataValueFilter ()
 
void GenerateOutputInformation () override
 
 ~ChangeNoDataValueFilter () override
 

Private Member Functions

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

Detailed Description

template<typename TInputImage, typename TOutputImage>
class otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >

Change no-data flags and values and replace them in image.

This filter reads the no-data flags (a boolean vector indicating for each band if a no-data value exists) and values (the actual value to be used as no-data for each band) from MetaDataDictionary, and allows changing this value.

The algorithm is the following: for each pixel, for each channel in the pixel, if there is a no-data value for this channel (according to no-data flags) and the current channel value equals to the no-data value set for this channel, then the value is changed for the new no-data value specified by the users. Otherwise, value remains untouched.

If NaNIsNoData is true:

If NaNIsNoData is false and the input has at least one band with no-data flag and no-data value :

If NaNIsNoData is false and the input has no band with no-data flag and no-data value :

Definition at line 98 of file otbChangeNoDataValueFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<typename TInputImage , typename TOutputImage >
typedef itk::SmartPointer<const Self> otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::ConstPointer

Definition at line 108 of file otbChangeNoDataValueFilter.h.

◆ FunctorType

template<typename TInputImage , typename TOutputImage >
typedef Functor::ChangeNoDataFunctor<typename TInputImage::PixelType, typename TOutputImage::PixelType> otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::FunctorType

Definition at line 103 of file otbChangeNoDataValueFilter.h.

◆ Pointer

template<typename TInputImage , typename TOutputImage >
typedef itk::SmartPointer<Self> otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::Pointer

Definition at line 107 of file otbChangeNoDataValueFilter.h.

◆ Self

template<typename TInputImage , typename TOutputImage >
typedef ChangeNoDataValueFilter otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::Self

Definition at line 105 of file otbChangeNoDataValueFilter.h.

◆ Superclass

template<typename TInputImage , typename TOutputImage >
typedef itk::UnaryFunctorImageFilter<TInputImage, TOutputImage, FunctorType> otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::Superclass

Definition at line 106 of file otbChangeNoDataValueFilter.h.

Constructor & Destructor Documentation

◆ ChangeNoDataValueFilter() [1/2]

template<typename TInputImage , typename TOutputImage >
otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::ChangeNoDataValueFilter ( )
inlineprotected

Definition at line 137 of file otbChangeNoDataValueFilter.h.

◆ ~ChangeNoDataValueFilter()

template<typename TInputImage , typename TOutputImage >
otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::~ChangeNoDataValueFilter ( )
inlineoverrideprotected

Definition at line 141 of file otbChangeNoDataValueFilter.h.

◆ ChangeNoDataValueFilter() [2/2]

template<typename TInputImage , typename TOutputImage >
otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::ChangeNoDataValueFilter ( const Self )
privatedelete

Member Function Documentation

◆ CreateAnother()

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

◆ GenerateOutputInformation()

template<typename TInputImage , typename TOutputImage >
void otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::GenerateOutputInformation ( void  )
inlineoverrideprotected

◆ GetNameOfClass()

template<typename TInputImage , typename TOutputImage >
virtual const char* otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

Creation through object factory macro

◆ New()

template<typename TInputImage , typename TOutputImage >
static Pointer otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::New ( )
static

Type macro

◆ operator=()

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

◆ SetNaNIsNoData()

template<typename TInputImage , typename TOutputImage >
void otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::SetNaNIsNoData ( bool  nanIsNoData)
inline

Set the NaN is no data flags

Parameters
nanIsNoDataIf true, NaN values will be considered as no-data as well (default is false)

Definition at line 131 of file otbChangeNoDataValueFilter.h.

◆ SetNewNoDataValues()

template<typename TInputImage , typename TOutputImage >
void otb::ChangeNoDataValueFilter< TInputImage, TOutputImage >::SetNewNoDataValues ( std::vector< double > &  newValues)
inline

Set the new no-data values

Parameters
newValuesThe vector of new no-data values (size should be >= to number of bands)

Definition at line 121 of file otbChangeNoDataValueFilter.h.


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