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

#include <otbMDMDNMFImageFilter.h>

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

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef
InputImageType::ConstPointer 
InputConstPointerType
 
typedef TInputImage InputImageType
 
typedef InputImageType::IndexType InputIndexType
 
typedef InputImageType::PixelType InputPixelType
 
typedef InputImageType::Pointer InputPointerType
 
typedef InputImageType::SizeType InputSizeType
 
typedef vnl_matrix< PrecisionTypeMatrixType
 
typedef OutputImageType::RegionType OutputImageRegionType
 
typedef TOutputImage OutputImageType
 
typedef OutputImageType::IndexType OutputIndexType
 
typedef OutputImageType::OffsetType OutputOffsetType
 
typedef OutputImageType::PixelType OutputPixelType
 
typedef OutputImageType::Pointer OutputPointerType
 
typedef OutputImageType::SizeType OutputSizeType
 
typedef itk::SmartPointer< SelfPointer
 
typedef double PrecisionType
 
typedef MDMDNMFImageFilter Self
 
typedef
itk::ImageToImageFilter
< TInputImage, TOutputImage > 
Superclass
 
typedef
otb::VectorImageToMatrixImageFilter
< InputImageType
VectorImageToMatrixImageFilterType
 
typedef vnl_vector< double > VectorType
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual double GetCritStopValue ()
 
virtual double GetDelt ()
 
MatrixType GetEndmembersMatrix () const
 
virtual double GetLambdD ()
 
virtual double GetLambdS ()
 
virtual unsigned int GetMaxIter ()
 
virtual const char * GetNameOfClass () const
 
virtual void SetCritStopValue (double _arg)
 
virtual void SetDelt (double _arg)
 
void SetEndmembersMatrix (const MatrixType &m)
 
virtual void SetLambdD (double _arg)
 
virtual void SetLambdS (double _arg)
 
virtual void SetMaxIter (unsigned int _arg)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from itk::ImageSource< TOutputImage >
static const
ImageRegionSplitterBase
GetGlobalDefaultSplitter (void)
 

Protected Member Functions

 MDMDNMFImageFilter ()
 
virtual ~MDMDNMFImageFilter ()
 
virtual void GenerateData ()
 
virtual void GenerateInputRequestedRegion ()
 
virtual void GenerateOutputInformation ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 

Private Member Functions

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

Static Private Member Functions

static void AddOneRowOfOnes (const MatrixType &m, MatrixType &M)
 
static bool ArmijoTest (const double &sig, const MatrixType variMat, const MatrixType &newVariMat, const double &evalf, const double &newEvalf, const MatrixType &gradVariMat, const double &alph)
 
static double Call (const MatrixType &variMat, const MatrixType &fixedMat, const MatrixType &X, const double &delt, const double &lambdS, const double &lambdD, const bool isDirectEvalDirection)
 
static double Criterion (const MatrixType &X, const MatrixType &A, const MatrixType &S, const double &delt, const double &lambdS, const double &lambdD)
 
static void EvalGradA (const MatrixType &X, const MatrixType &A, const MatrixType &S, const double &delt, const double &lambdD, MatrixType &gradA)
 
static void EvalGradS (const MatrixType &X, const MatrixType &A, const MatrixType &S, const double &delt, const double &lambdS, MatrixType &gradS)
 
static void ProjGradOneStep (const MatrixType &X, const MatrixType &fixedMat, const MatrixType &gradVariMat, const double &sig, const double &betinit, const double &delt, const double &lambdS, const double &lambdD, MatrixType &variMat, double &alph, const bool isDirectEvalDirection)
 
static void SetNegativeCoefficientsToZero (MatrixType &M)
 
static double SumMatrixElements (const MatrixType &M)
 
static MatrixType TermByTermMatrixProduct (const MatrixType &M1, const MatrixType &M2)
 

Private Attributes

double m_CritStopValue
 
double m_Delt
 
MatrixType m_Endmembers
 
double m_LambdD
 
double m_LambdS
 
unsigned int m_MaxIter
 

Detailed Description

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

Definition at line 124 of file otbMDMDNMFImageFilter.h.

Member Typedef Documentation

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

Definition at line 133 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::ConstPointer otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::InputConstPointerType

Definition at line 144 of file otbMDMDNMFImageFilter.h.

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

typedef related to input and output images

Definition at line 139 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::IndexType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::InputIndexType

Definition at line 145 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::PixelType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::InputPixelType

Definition at line 147 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::Pointer otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::InputPointerType

Definition at line 143 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef InputImageType::SizeType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::InputSizeType

Definition at line 146 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef vnl_matrix<PrecisionType> otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::MatrixType

Definition at line 159 of file otbMDMDNMFImageFilter.h.

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

Definition at line 154 of file otbMDMDNMFImageFilter.h.

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

Definition at line 149 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::IndexType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::OutputIndexType

Definition at line 151 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::OffsetType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::OutputOffsetType

Definition at line 152 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::PixelType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::OutputPixelType

Definition at line 155 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::Pointer otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::OutputPointerType

Definition at line 150 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef OutputImageType::SizeType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::OutputSizeType

Definition at line 153 of file otbMDMDNMFImageFilter.h.

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

Definition at line 132 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::PrecisionType

Definition at line 158 of file otbMDMDNMFImageFilter.h.

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

Standard class typedefs.

Definition at line 130 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef itk::ImageToImageFilter< TInputImage, TOutputImage > otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::Superclass

Definition at line 131 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef otb::VectorImageToMatrixImageFilter<InputImageType> otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::VectorImageToMatrixImageFilterType

Definition at line 160 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
typedef vnl_vector<double> otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::VectorType

Definition at line 163 of file otbMDMDNMFImageFilter.h.

Constructor & Destructor Documentation

template<class TInputImage , class TOutputImage >
otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::MDMDNMFImageFilter ( )
protected

Definition at line 27 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage, class TOutputImage>
virtual otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::~MDMDNMFImageFilter ( )
inlineprotectedvirtual

Definition at line 192 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::MDMDNMFImageFilter ( const Self )
private

Member Function Documentation

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::AddOneRowOfOnes ( const MatrixType m,
MatrixType M 
)
staticprivate

Definition at line 71 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
bool otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::ArmijoTest ( const double &  sig,
const MatrixType  variMat,
const MatrixType newVariMat,
const double &  evalf,
const double &  newEvalf,
const MatrixType gradVariMat,
const double &  alph 
)
staticprivate

Definition at line 351 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::Call ( const MatrixType variMat,
const MatrixType fixedMat,
const MatrixType X,
const double &  delt,
const double &  lambdS,
const double &  lambdD,
const bool  isDirectEvalDirection 
)
staticprivate

Definition at line 282 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage, class TOutputImage>
virtual::itk::LightObject::Pointer otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::CreateAnother ( void  ) const
template<class TInputImage , class TOutputImage >
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::Criterion ( const MatrixType X,
const MatrixType A,
const MatrixType S,
const double &  delt,
const double &  lambdS,
const double &  lambdD 
)
staticprivate

Definition at line 87 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::EvalGradA ( const MatrixType X,
const MatrixType A,
const MatrixType S,
const double &  delt,
const double &  lambdD,
MatrixType gradA 
)
staticprivate

Definition at line 185 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::EvalGradS ( const MatrixType X,
const MatrixType A,
const MatrixType S,
const double &  delt,
const double &  lambdS,
MatrixType gradS 
)
staticprivate

Definition at line 164 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GenerateData ( void  )
protectedvirtual
template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GenerateInputRequestedRegion ( void  )
protectedvirtual

Definition at line 569 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GenerateOutputInformation ( void  )
protectedvirtual

GenerateOutputInformation Propagate vector length info and modify if needed

Definition at line 51 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage, class TOutputImage>
virtual double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetCritStopValue ( )
virtual
template<class TInputImage, class TOutputImage>
virtual double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetDelt ( )
virtual
template<class TInputImage, class TOutputImage>
MatrixType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetEndmembersMatrix ( void  ) const
inline

Definition at line 165 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
virtual double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetLambdD ( )
virtual
template<class TInputImage, class TOutputImage>
virtual double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetLambdS ( )
virtual
template<class TInputImage, class TOutputImage>
virtual unsigned int otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetMaxIter ( )
virtual
template<class TInputImage, class TOutputImage>
virtual const char* otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::GetNameOfClass ( ) const
virtual

Creation through object factory macro

Reimplemented from itk::ImageSource< TOutputImage >.

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

Type macro

template<class TInputImage, class TOutputImage>
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::operator= ( const Self )
private
template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::PrintSelf ( std::ostream &  os,
itk::Indent  indent 
) const
protected

Definition at line 42 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::ProjGradOneStep ( const MatrixType X,
const MatrixType fixedMat,
const MatrixType gradVariMat,
const double &  sig,
const double &  betinit,
const double &  delt,
const double &  lambdS,
const double &  lambdD,
MatrixType variMat,
double &  alph,
const bool  isDirectEvalDirection 
)
staticprivate

Definition at line 224 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage, class TOutputImage>
virtual void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetCritStopValue ( double  _arg)
virtual
template<class TInputImage, class TOutputImage>
virtual void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetDelt ( double  _arg)
virtual
template<class TInputImage, class TOutputImage>
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetEndmembersMatrix ( const MatrixType m)
inline

Definition at line 169 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
virtual void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetLambdD ( double  _arg)
virtual
template<class TInputImage, class TOutputImage>
virtual void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetLambdS ( double  _arg)
virtual
template<class TInputImage, class TOutputImage>
virtual void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetMaxIter ( unsigned int  _arg)
virtual

Setters / Getters

template<class TInputImage , class TOutputImage >
void otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SetNegativeCoefficientsToZero ( MatrixType M)
staticprivate

Definition at line 305 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::SumMatrixElements ( const MatrixType M)
staticprivate

Definition at line 338 of file otbMDMDNMFImageFilter.txx.

template<class TInputImage , class TOutputImage >
MDMDNMFImageFilter< TInputImage, TOutputImage >::MatrixType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::TermByTermMatrixProduct ( const MatrixType M1,
const MatrixType M2 
)
staticprivate

Definition at line 321 of file otbMDMDNMFImageFilter.txx.

Member Data Documentation

template<class TInputImage, class TOutputImage>
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_CritStopValue
private

Definition at line 269 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_Delt
private

Definition at line 272 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
MatrixType otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_Endmembers
private

Definition at line 267 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_LambdD
private

Definition at line 273 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
double otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_LambdS
private

Definition at line 274 of file otbMDMDNMFImageFilter.h.

template<class TInputImage, class TOutputImage>
unsigned int otb::MDMDNMFImageFilter< TInputImage, TOutputImage >::m_MaxIter
private

Definition at line 268 of file otbMDMDNMFImageFilter.h.


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