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

#include <otbImageToSIFTKeyPointSetFilter.h>

+ Inheritance diagram for otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >:
+ Collaboration diagram for otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >:

Public Types

typedef itk::SmartPointer< const SelfConstPointer
 
typedef TInputImage::Pointer InputImagePointerType
 
typedef TInputImage InputImageType
 
typedef TOutputPointSet::PixelType OutputPixelType
 
typedef TOutputPointSet::PointIdentifier OutputPointIdentifierType
 
typedef TOutputPointSet::Pointer OutputPointSetPointerType
 
typedef TOutputPointSet OutputPointSetType
 
typedef TOutputPointSet::PointType OutputPointType
 
typedef TInputImage::PixelType PixelType
 
typedef itk::SmartPointer< SelfPointer
 
typedef ImageToSIFTKeyPointSetFilter Self
 
typedef ImageToPointSetFilter< TInputImage, TOutputPointSet > Superclass
 
typedef itk::Vector< PixelType, 3 > VectorPointType
 
- Public Types inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef InputImageType::ConstPointer InputImageConstPointer
 
typedef InputImageType::PixelType InputImagePixelType
 
typedef InputImageType::Pointer InputImagePointer
 
typedef InputImageType::RegionType InputImageRegionType
 
typedef TInputImage InputImageType
 
typedef Superclass::OutputPointSetPointer OutputPointSetPointer
 
typedef Superclass::OutputPointSetType OutputPointSetType
 
typedef Superclass::PointDataContainerType PointDataContainerType
 
typedef itk::SmartPointer< SelfPointer
 
typedef Superclass::PointsContainerType PointsContainerType
 
typedef itk::ProcessObject ProcessObjectType
 
typedef ImageToPointSetFilter Self
 
typedef PointSetSource< TOutputPointSet > Superclass
 
- Public Types inherited from otb::PointSetSource< TOutputPointSet >
typedef itk::SmartPointer< const SelfConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
typedef itk::ProcessObject::DataObjectPointerArraySizeType DataObjectPointerArraySizeType
 
typedef OutputPointSetType::Pointer OutputPointSetPointer
 
typedef TOutputPointSet OutputPointSetType
 
typedef OutputPointSetType::PointDataContainer PointDataContainerType
 
typedef itk::SmartPointer< SelfPointer
 
typedef OutputPointSetType::PointsContainer PointsContainerType
 
typedef PointSetSource Self
 
typedef itk::ProcessObject Superclass
 

Public Member Functions

virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
virtual const char * GetNameOfClass () const
 
- Public Member Functions inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
void SetInput (unsigned int idx, const InputImageType *input)
 
void SetInput (const InputImageType *input)
 
const InputImageTypeGetInput (unsigned int idx)
 
const InputImageTypeGetInput ()
 
void GenerateOutputInformation (void) override
 
- Public Member Functions inherited from otb::PointSetSource< TOutputPointSet >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
OutputPointSetTypeGetOutput (void)
 
OutputPointSetTypeGetOutput (DataObjectPointerArraySizeType idx)
 
void SetOutput (OutputPointSetType *output)
 
virtual void GraftOutput (itk::DataObject *output)
 
virtual void GraftNthOutput (DataObjectPointerArraySizeType idx, itk::DataObject *output)
 
DataObjectPointer MakeOutput (DataObjectPointerArraySizeType idx) override
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::PointSetSource< TOutputPointSet >
static Pointer New ()
 
typedef itk::ExpandImageFilter< TInputImage, TInputImage > ExpandFilterType
 
typedef ExpandFilterType::Pointer ExpandFilterPointerType
 
typedef itk::ShrinkImageFilter< InputImageType, InputImageTypeShrinkFilterType
 
typedef ShrinkFilterType::Pointer ShrinkFilterPointerType
 
typedef itk::RecursiveGaussianImageFilter< InputImageType, InputImageTypeGaussianFilterType
 
typedef GaussianFilterType::Pointer GaussianFilterPointerType
 
typedef otb::ImageList< InputImageTypeImageListType
 
typedef ImageListType::Pointer ImageListPointerType
 
typedef itk::SubtractImageFilter< InputImageType, InputImageType, InputImageTypeSubtractFilterType
 
typedef SubtractFilterType::Pointer SubtractFilterPointerType
 
typedef itk::ConstNeighborhoodIterator< InputImageTypeNeighborhoodIteratorType
 
typedef NeighborhoodIteratorType::NeighborhoodType NeighborhoodType
 
typedef NeighborhoodType::OffsetType OffsetType
 
typedef itk::ImageRegionConstIterator< InputImageTypeRegionIteratorType
 
typedef itk::MinimumMaximumImageCalculator< InputImageTypeMinimumMaximumCalculatorType
 
typedef MinimumMaximumCalculatorType::Pointer MinimumMaximumCalculatorPointerType
 
typedef itk::GradientImageFilter< InputImageType, PixelType, PixelTypeGradientFilterType
 
typedef GradientFilterType::Pointer GradientFilterPointerType
 
typedef GradientFilterType::OutputImageType GradientOutputImageType
 
typedef itk::UnaryFunctorImageFilter< GradientOutputImageType, InputImageType, Functor::MagnitudeFunctor< typename GradientOutputImageType::PixelType, typename InputImageType::PixelType > > MagnitudeFilterType
 
typedef MagnitudeFilterType::Pointer MagnitudeFilterPointerType
 
typedef itk::UnaryFunctorImageFilter< GradientOutputImageType, InputImageType, Functor::OrientationFunctor< typename GradientOutputImageType::PixelType, typename InputImageType::PixelType > > OrientationFilterType
 
typedef OrientationFilterType::Pointer OrientationFilterPointerType
 
unsigned int m_OctavesNumber
 
unsigned int m_ScalesNumber
 
unsigned int m_ExpandFactors
 
unsigned int m_ShrinkFactors
 
double m_DoGThreshold
 
double m_EdgeThreshold
 
double m_RatioEdgeThreshold
 
PixelType m_GradientMagnitudeThreshold
 
GaussianFilterType::ScalarRealType m_Sigma0
 
double m_Sigmak
 
double m_SigmaFactorOrientation
 
double m_SigmaFactorDescriptor
 
ExpandFilterPointerType m_ExpandFilter
 
ShrinkFilterPointerType m_ShrinkFilter
 
GaussianFilterPointerType m_XGaussianFilter
 
GaussianFilterPointerType m_YGaussianFilter
 
InputImagePointerType m_LastGaussian
 
ImageListPointerType m_DoGList
 
ImageListPointerType m_MagnitudeList
 
ImageListPointerType m_OrientationList
 
SubtractFilterPointerType m_SubtractFilter
 
GradientFilterPointerType m_GradientFilter
 
MagnitudeFilterPointerType m_MagnitudeFilter
 
OrientationFilterPointerType m_OrientationFilter
 
OutputPointIdentifierType m_ValidatedKeyPoints
 
unsigned int m_DifferentSamplePoints
 
unsigned int m_DiscardedKeyPoints
 
unsigned int m_ChangeSamplePointsMax
 
std::vector< double > m_HistogramGaussianWeights
 
OffsetType m_Offsets [8]
 
virtual void SetOctavesNumber (unsigned int _arg)
 
virtual unsigned int GetOctavesNumber ()
 
virtual void SetScalesNumber (unsigned int _arg)
 
virtual unsigned int GetScalesNumber ()
 
virtual void SetExpandFactors (unsigned int _arg)
 
virtual unsigned int GetExpandFactors ()
 
virtual void SetShrinkFactors (unsigned int _arg)
 
virtual unsigned int GetShrinkFactors ()
 
virtual void SetSigma0 (double _arg)
 
virtual double GetSigma0 ()
 
virtual void SetDoGThreshold (double _arg)
 
virtual double GetDoGThreshold ()
 
virtual void SetEdgeThreshold (double _arg)
 
virtual double GetEdgeThreshold ()
 
virtual void SetSigmaFactorOrientation (double _arg)
 
virtual double GetSigmaFactorOrientation ()
 
virtual void SetSigmaFactorDescriptor (double _arg)
 
virtual double GetSigmaFactorDescriptor ()
 
void GenerateData () override
 
 ImageToSIFTKeyPointSetFilter ()
 
 ~ImageToSIFTKeyPointSetFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void InitializeInputImage ()
 
void ComputeDifferenceOfGaussian (InputImagePointerType input)
 
void DetectKeyPoint (const unsigned int octave)
 
bool IsLocalExtremum (const NeighborhoodIteratorType &currentScale, const NeighborhoodIteratorType &previousScale, const NeighborhoodIteratorType &nextScale) const
 
bool RefineLocationKeyPoint (const NeighborhoodIteratorType &currentScale, const NeighborhoodIteratorType &previousScale, const NeighborhoodIteratorType &nextScale, VectorPointType &solution)
 
std::vector< PixelTypeComputeKeyPointOrientations (const NeighborhoodIteratorType &currentScale, const unsigned int scale, const PixelType translation)
 
std::vector< PixelTypeComputeKeyPointDescriptor (const NeighborhoodIteratorType &currentScale, const unsigned int scale, const PixelType &orientation)
 
 ImageToSIFTKeyPointSetFilter (const Self &)=delete
 
void operator= (const Self &)=delete
 

Additional Inherited Members

- Static Public Attributes inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
static const unsigned int InputImageDimension = TInputImage::ImageDimension
 
- Protected Types inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
typedef std::vector< typename OutputPointSetType::PointsContainer::Pointer > OutputPointsContainerForThreadType
 
typedef std::vector< typename OutputPointSetType::PointDataContainer::Pointer > OutputPointDataContainerForThreadType
 
typedef RAMDrivenAdaptativeStreamingManager< InputImageTypeStreamingManagerType
 
typedef StreamingManagerType::Pointer StreamingManagerPointer
 
- Protected Member Functions inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
 ImageToPointSetFilter ()
 
 ~ImageToPointSetFilter () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void GenerateData (void) override
 
virtual void BeforeThreadedGenerateData ()
 
virtual void AfterThreadedGenerateData ()
 
virtual int SplitRequestedRegion (int i, int num, InputImageRegionType &splitRegion)
 
virtual void ThreadedGenerateData (const InputImageRegionType &inputRegionForThread, itk::ThreadIdType threadId)
 
- Protected Member Functions inherited from otb::PointSetSource< TOutputPointSet >
 PointSetSource ()
 
 ~PointSetSource () override
 
void PrintSelf (std::ostream &os, itk::Indent indent) const override
 
void GenerateInputRequestedRegion () override
 
- Static Protected Member Functions inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
static ITK_THREAD_RETURN_TYPE ThreaderCallback (void *arg)
 
- Protected Attributes inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
OutputPointsContainerForThreadType m_PointsContainerPerThread
 
OutputPointDataContainerForThreadType m_PointDataContainerPerThread
 
StreamingManagerPointer m_StreamingManager
 

Detailed Description

template<class TInputImage, class TOutputPointSet>
class otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >

This class extracts key points from an input image, trough a pyramidal decomposition.

This class implements the SIFT key point detector proposed by David G. Lowe in proceedings of International Conference on Computer Vision, Corfu, september 1999.

Selected key points are stored in a itk::PointSet structure. Data points contains a list of (magnitude, main orientation) for each level of the pyramidal decomposition.

Orientation is expressed in degree in the range [0, 360] with a precision of 10 degrees.

Examples
Patented/SIFTExample.cxx.

Definition at line 116 of file otbImageToSIFTKeyPointSetFilter.h.

Member Typedef Documentation

◆ ConstPointer

template<class TInputImage , class TOutputPointSet >
typedef itk::SmartPointer<const Self> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ConstPointer

Definition at line 123 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ExpandFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef ExpandFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ExpandFilterPointerType

Internal typedefs

Definition at line 195 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ExpandFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::ExpandImageFilter<TInputImage, TInputImage> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ExpandFilterType

Internal typedefs

Definition at line 190 of file otbImageToSIFTKeyPointSetFilter.h.

◆ GaussianFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef GaussianFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GaussianFilterPointerType

Internal typedefs

Definition at line 201 of file otbImageToSIFTKeyPointSetFilter.h.

◆ GaussianFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::RecursiveGaussianImageFilter<InputImageType, InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GaussianFilterType

Internal typedefs

Definition at line 200 of file otbImageToSIFTKeyPointSetFilter.h.

◆ GradientFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef GradientFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GradientFilterPointerType

Internal typedefs

Definition at line 219 of file otbImageToSIFTKeyPointSetFilter.h.

◆ GradientFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::GradientImageFilter<InputImageType, PixelType, PixelType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GradientFilterType

Internal typedefs

Definition at line 218 of file otbImageToSIFTKeyPointSetFilter.h.

◆ GradientOutputImageType

template<class TInputImage , class TOutputPointSet >
typedef GradientFilterType::OutputImageType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GradientOutputImageType

Internal typedefs

Definition at line 220 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ImageListPointerType

template<class TInputImage , class TOutputPointSet >
typedef ImageListType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageListPointerType

Internal typedefs

Definition at line 204 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ImageListType

template<class TInputImage , class TOutputPointSet >
typedef otb::ImageList<InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageListType

Internal typedefs

Definition at line 203 of file otbImageToSIFTKeyPointSetFilter.h.

◆ InputImagePointerType

template<class TInputImage , class TOutputPointSet >
typedef TInputImage::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::InputImagePointerType

Definition at line 133 of file otbImageToSIFTKeyPointSetFilter.h.

◆ InputImageType

template<class TInputImage , class TOutputPointSet >
typedef TInputImage otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::InputImageType

Template parameters typedefs

Definition at line 129 of file otbImageToSIFTKeyPointSetFilter.h.

◆ MagnitudeFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef MagnitudeFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::MagnitudeFilterPointerType

Internal typedefs

Definition at line 225 of file otbImageToSIFTKeyPointSetFilter.h.

◆ MagnitudeFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::UnaryFunctorImageFilter<GradientOutputImageType, InputImageType, Functor::MagnitudeFunctor<typename GradientOutputImageType::PixelType, typename InputImageType::PixelType> > otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::MagnitudeFilterType

Internal typedefs

Definition at line 224 of file otbImageToSIFTKeyPointSetFilter.h.

◆ MinimumMaximumCalculatorPointerType

template<class TInputImage , class TOutputPointSet >
typedef MinimumMaximumCalculatorType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::MinimumMaximumCalculatorPointerType

Internal typedefs

Definition at line 216 of file otbImageToSIFTKeyPointSetFilter.h.

◆ MinimumMaximumCalculatorType

template<class TInputImage , class TOutputPointSet >
typedef itk::MinimumMaximumImageCalculator<InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::MinimumMaximumCalculatorType

Internal typedefs

Definition at line 215 of file otbImageToSIFTKeyPointSetFilter.h.

◆ NeighborhoodIteratorType

template<class TInputImage , class TOutputPointSet >
typedef itk::ConstNeighborhoodIterator<InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::NeighborhoodIteratorType

Internal typedefs

Definition at line 209 of file otbImageToSIFTKeyPointSetFilter.h.

◆ NeighborhoodType

template<class TInputImage , class TOutputPointSet >
typedef NeighborhoodIteratorType::NeighborhoodType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::NeighborhoodType

Internal typedefs

Definition at line 210 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OffsetType

template<class TInputImage , class TOutputPointSet >
typedef NeighborhoodType::OffsetType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OffsetType

Internal typedefs

Definition at line 211 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OrientationFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef OrientationFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OrientationFilterPointerType

Internal typedefs

Definition at line 230 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OrientationFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::UnaryFunctorImageFilter<GradientOutputImageType, InputImageType, Functor::OrientationFunctor<typename GradientOutputImageType::PixelType, typename InputImageType::PixelType> > otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OrientationFilterType

Internal typedefs

Definition at line 229 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OutputPixelType

template<class TInputImage , class TOutputPointSet >
typedef TOutputPointSet::PixelType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OutputPixelType

Definition at line 138 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OutputPointIdentifierType

template<class TInputImage , class TOutputPointSet >
typedef TOutputPointSet::PointIdentifier otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OutputPointIdentifierType

Definition at line 140 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OutputPointSetPointerType

template<class TInputImage , class TOutputPointSet >
typedef TOutputPointSet::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OutputPointSetPointerType

Definition at line 137 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OutputPointSetType

template<class TInputImage , class TOutputPointSet >
typedef TOutputPointSet otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OutputPointSetType

Definition at line 136 of file otbImageToSIFTKeyPointSetFilter.h.

◆ OutputPointType

template<class TInputImage , class TOutputPointSet >
typedef TOutputPointSet::PointType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::OutputPointType

Definition at line 139 of file otbImageToSIFTKeyPointSetFilter.h.

◆ PixelType

template<class TInputImage , class TOutputPointSet >
typedef TInputImage::PixelType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::PixelType

Definition at line 134 of file otbImageToSIFTKeyPointSetFilter.h.

◆ Pointer

template<class TInputImage , class TOutputPointSet >
typedef itk::SmartPointer<Self> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::Pointer

Definition at line 122 of file otbImageToSIFTKeyPointSetFilter.h.

◆ RegionIteratorType

template<class TInputImage , class TOutputPointSet >
typedef itk::ImageRegionConstIterator<InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::RegionIteratorType

Internal typedefs

Definition at line 213 of file otbImageToSIFTKeyPointSetFilter.h.

◆ Self

template<class TInputImage , class TOutputPointSet >
typedef ImageToSIFTKeyPointSetFilter otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::Self

Standard typedefs

Definition at line 120 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ShrinkFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef ShrinkFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ShrinkFilterPointerType

Internal typedefs

Definition at line 198 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ShrinkFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::ShrinkImageFilter<InputImageType, InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ShrinkFilterType

Internal typedefs

Definition at line 197 of file otbImageToSIFTKeyPointSetFilter.h.

◆ SubtractFilterPointerType

template<class TInputImage , class TOutputPointSet >
typedef SubtractFilterType::Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SubtractFilterPointerType

Internal typedefs

Definition at line 207 of file otbImageToSIFTKeyPointSetFilter.h.

◆ SubtractFilterType

template<class TInputImage , class TOutputPointSet >
typedef itk::SubtractImageFilter<InputImageType, InputImageType, InputImageType> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SubtractFilterType

Internal typedefs

Definition at line 206 of file otbImageToSIFTKeyPointSetFilter.h.

◆ Superclass

template<class TInputImage , class TOutputPointSet >
typedef ImageToPointSetFilter<TInputImage, TOutputPointSet> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::Superclass

Definition at line 121 of file otbImageToSIFTKeyPointSetFilter.h.

◆ VectorPointType

template<class TInputImage , class TOutputPointSet >
typedef itk::Vector<PixelType, 3> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::VectorPointType

Definition at line 142 of file otbImageToSIFTKeyPointSetFilter.h.

Constructor & Destructor Documentation

◆ ImageToSIFTKeyPointSetFilter() [1/2]

template<class TInputImage , class TOutputPointSet >
otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageToSIFTKeyPointSetFilter
protected

Constructor

Definition at line 36 of file otbImageToSIFTKeyPointSetFilter.hxx.

◆ ~ImageToSIFTKeyPointSetFilter()

template<class TInputImage , class TOutputPointSet >
otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::~ImageToSIFTKeyPointSetFilter ( )
inlineoverrideprotected

Destructor

Definition at line 240 of file otbImageToSIFTKeyPointSetFilter.h.

◆ ImageToSIFTKeyPointSetFilter() [2/2]

template<class TInputImage , class TOutputPointSet >
otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageToSIFTKeyPointSetFilter ( const Self )
privatedelete

Internal typedefs

Member Function Documentation

◆ ComputeDifferenceOfGaussian()

template<class TInputImage , class TOutputPointSet >
void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeDifferenceOfGaussian ( InputImagePointerType  input)
protected

Compute differenec of gaussian

Parameters
inputcurrent input in process

Compute the difference of gaussian

Definition at line 171 of file otbImageToSIFTKeyPointSetFilter.hxx.

References otbGenericMsgDebugMacro.

◆ ComputeKeyPointDescriptor()

template<class TInputImage , class TOutputPointSet >
std::vector< typename ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::PixelType > otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeKeyPointDescriptor ( const NeighborhoodIteratorType currentScale,
const unsigned int  scale,
const PixelType orientation 
)
protected

Compute local image descriptor

Parameters
currentScaleneighborhood iterator
scale
orientation
Returns
histogram descriptor

Compute key point descriptor

Definition at line 664 of file otbImageToSIFTKeyPointSetFilter.hxx.

References otb::CONST_2PI, and otb::CONST_PI_180.

◆ ComputeKeyPointOrientations()

template<class TInputImage , class TOutputPointSet >
std::vector< typename ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::PixelType > otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeKeyPointOrientations ( const NeighborhoodIteratorType currentScale,
const unsigned int  scale,
const PixelType  translation 
)
protected

Assign key point orientation

Parameters
currentScaleneighborhood iterator
scalecurrent scale
translationrefine offset pixel location
Returns
orientation key point orientation

Compute key point orientation

Definition at line 485 of file otbImageToSIFTKeyPointSetFilter.hxx.

References otb::CONST_2PI.

◆ CreateAnother()

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

◆ DetectKeyPoint()

template<class TInputImage , class TOutputPointSet >
void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::DetectKeyPoint ( const unsigned int  octave)
protected

Localize key point

Definition at line 242 of file otbImageToSIFTKeyPointSetFilter.hxx.

References otbGenericMsgDebugMacro, and otbUnusedMacro.

◆ GenerateData()

template<class TInputImage , class TOutputPointSet >
void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GenerateData
overrideprotected

Actually process the input

Definition at line 92 of file otbImageToSIFTKeyPointSetFilter.hxx.

References otbGenericMsgDebugMacro.

◆ GetDoGThreshold()

template<class TInputImage , class TOutputPointSet >
virtual double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetDoGThreshold ( )
virtual

Internal typedefs

◆ GetEdgeThreshold()

template<class TInputImage , class TOutputPointSet >
virtual double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetEdgeThreshold ( )
virtual

Internal typedefs

◆ GetExpandFactors()

template<class TInputImage , class TOutputPointSet >
virtual unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetExpandFactors ( )
virtual

Internal typedefs

◆ GetNameOfClass()

template<class TInputImage , class TOutputPointSet >
virtual const char* otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetNameOfClass ( ) const
virtual

◆ GetOctavesNumber()

template<class TInputImage , class TOutputPointSet >
virtual unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetOctavesNumber ( )
virtual

Internal typedefs

◆ GetScalesNumber()

template<class TInputImage , class TOutputPointSet >
virtual unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetScalesNumber ( )
virtual

Internal typedefs

◆ GetShrinkFactors()

template<class TInputImage , class TOutputPointSet >
virtual unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetShrinkFactors ( )
virtual

Internal typedefs

◆ GetSigma0()

template<class TInputImage , class TOutputPointSet >
virtual double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetSigma0 ( )
virtual

Internal typedefs

◆ GetSigmaFactorDescriptor()

template<class TInputImage , class TOutputPointSet >
virtual double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetSigmaFactorDescriptor ( )
virtual

Internal typedefs

◆ GetSigmaFactorOrientation()

template<class TInputImage , class TOutputPointSet >
virtual double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::GetSigmaFactorOrientation ( )
virtual

Internal typedefs

◆ InitializeInputImage()

template<class TInputImage , class TOutputPointSet >
void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::InitializeInputImage
protected

Initialize input image

Initialize the input image

Definition at line 150 of file otbImageToSIFTKeyPointSetFilter.hxx.

◆ IsLocalExtremum()

template<class TInputImage , class TOutputPointSet >
bool otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremum ( const NeighborhoodIteratorType currentScale,
const NeighborhoodIteratorType previousScale,
const NeighborhoodIteratorType nextScale 
) const
protected

Check local extremum for 26 neighbors (current and adjacents scales)

Parameters
currentScale
previousScale
nextScale
Returns
true if the pixel is extremum

Check local extremum for 26 neighbors

Definition at line 374 of file otbImageToSIFTKeyPointSetFilter.hxx.

◆ New()

template<class TInputImage , class TOutputPointSet >
static Pointer otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::New ( )
static

Creation through object factory macro

◆ operator=()

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

Internal typedefs

◆ PrintSelf()

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

PrintSelf method

PrintSelf Method

Definition at line 807 of file otbImageToSIFTKeyPointSetFilter.hxx.

◆ RefineLocationKeyPoint()

template<class TInputImage , class TOutputPointSet >
bool otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::RefineLocationKeyPoint ( const NeighborhoodIteratorType currentScale,
const NeighborhoodIteratorType previousScale,
const NeighborhoodIteratorType nextScale,
VectorPointType solution 
)
protected

Refine location key point

  • Discard keypoints with low contrats DoG < DoGThreshold
  • Discard keypoints that have a ratio between the principles curvature greater than EdgeTrhesold (=10)
Parameters
currentScaleiterator
previousScaleiterator
nextScaleiterator
solution
Returns
true if key point is accepted, false otherwise

Refine location key point

Definition at line 414 of file otbImageToSIFTKeyPointSetFilter.hxx.

◆ SetDoGThreshold()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetDoGThreshold ( double  _arg)
virtual

Set/Get the Difference of gaussian threshold eliminating low contrast key point

◆ SetEdgeThreshold()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetEdgeThreshold ( double  _arg)
virtual

Set/Get Edgethreshold Eliminating edge responses

◆ SetExpandFactors()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetExpandFactors ( unsigned int  _arg)
virtual

Set/Get the expand factors

◆ SetOctavesNumber()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetOctavesNumber ( unsigned int  _arg)
virtual

Set/Get the number of octaves

◆ SetScalesNumber()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetScalesNumber ( unsigned int  _arg)
virtual

Set/Get the number of scales

◆ SetShrinkFactors()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetShrinkFactors ( unsigned int  _arg)
virtual

Set/Get the shrink factors

◆ SetSigma0()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetSigma0 ( double  _arg)
virtual

Set/Get the sigma 0

◆ SetSigmaFactorDescriptor()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetSigmaFactorDescriptor ( double  _arg)
virtual

Set/Get Gauss sigma factor descriptor

◆ SetSigmaFactorOrientation()

template<class TInputImage , class TOutputPointSet >
virtual void otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::SetSigmaFactorOrientation ( double  _arg)
virtual

Set/Get Gauss sigma factor orientation

Member Data Documentation

◆ m_ChangeSamplePointsMax

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ChangeSamplePointsMax
private

Number of change sample max

Definition at line 390 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_DifferentSamplePoints

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DifferentSamplePoints
private

Number of key point which offset is larger than 0.5 per octave

Definition at line 384 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_DiscardedKeyPoints

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DiscardedKeyPoints
private

Number of discarded key points

Definition at line 387 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_DoGList

template<class TInputImage , class TOutputPointSet >
ImageListPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DoGList
private

Difference of gaussian list

Definition at line 360 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_DoGThreshold

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DoGThreshold
private

Threshold DoG

Definition at line 323 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_EdgeThreshold

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_EdgeThreshold
private

Edge Threshold

Definition at line 326 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ExpandFactors

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ExpandFactors
private

Expand factors

Definition at line 317 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ExpandFilter

template<class TInputImage , class TOutputPointSet >
ExpandFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ExpandFilter
private

Expand filter

Definition at line 347 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_GradientFilter

template<class TInputImage , class TOutputPointSet >
GradientFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_GradientFilter
private

Gradient filter

Definition at line 372 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_GradientMagnitudeThreshold

template<class TInputImage , class TOutputPointSet >
PixelType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_GradientMagnitudeThreshold
private

Histogram sift keys descriptors gradient magnitude threshold

Definition at line 332 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_HistogramGaussianWeights

template<class TInputImage , class TOutputPointSet >
std::vector<double> otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_HistogramGaussianWeights
private

Gaussian sigma for histogram smoothing

Definition at line 393 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_LastGaussian

template<class TInputImage , class TOutputPointSet >
InputImagePointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_LastGaussian
private

Gaussian image pointer

Definition at line 357 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_MagnitudeFilter

template<class TInputImage , class TOutputPointSet >
MagnitudeFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_MagnitudeFilter
private

Magnitude filter

Definition at line 375 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_MagnitudeList

template<class TInputImage , class TOutputPointSet >
ImageListPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_MagnitudeList
private

Magnitude image list

Definition at line 363 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_OctavesNumber

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_OctavesNumber
private

Number of octaves

Definition at line 311 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_Offsets

template<class TInputImage , class TOutputPointSet >
OffsetType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_Offsets[8]
private

Offsets vector, convenience data

Definition at line 396 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_OrientationFilter

template<class TInputImage , class TOutputPointSet >
OrientationFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_OrientationFilter
private

Orientation filter

Definition at line 378 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_OrientationList

template<class TInputImage , class TOutputPointSet >
ImageListPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_OrientationList
private

Orientation image list

Definition at line 366 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_RatioEdgeThreshold

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_RatioEdgeThreshold
private

Ratio threshold compute

Definition at line 329 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ScalesNumber

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ScalesNumber
private

Number of scale for each octave

Definition at line 314 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ShrinkFactors

template<class TInputImage , class TOutputPointSet >
unsigned int otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ShrinkFactors
private

Shrink factors

Definition at line 320 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ShrinkFilter

template<class TInputImage , class TOutputPointSet >
ShrinkFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ShrinkFilter
private

Shrink filter

Definition at line 350 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_Sigma0

template<class TInputImage , class TOutputPointSet >
GaussianFilterType::ScalarRealType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_Sigma0
private

Sigma 0

Definition at line 335 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_SigmaFactorDescriptor

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_SigmaFactorDescriptor
private

Descriptor size

Definition at line 344 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_SigmaFactorOrientation

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_SigmaFactorOrientation
private

Gauss factor length for key point orientation

Definition at line 341 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_Sigmak

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_Sigmak
private

Sigma k

Definition at line 338 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_SubtractFilter

template<class TInputImage , class TOutputPointSet >
SubtractFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_SubtractFilter
private

Subtract filter

Definition at line 369 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_ValidatedKeyPoints

template<class TInputImage , class TOutputPointSet >
OutputPointIdentifierType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ValidatedKeyPoints
private

Number of key points

Definition at line 381 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_XGaussianFilter

template<class TInputImage , class TOutputPointSet >
GaussianFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_XGaussianFilter
private

Gaussian filter

Definition at line 353 of file otbImageToSIFTKeyPointSetFilter.h.

◆ m_YGaussianFilter

template<class TInputImage , class TOutputPointSet >
GaussianFilterPointerType otb::ImageToSIFTKeyPointSetFilter< TInputImage, TOutputPointSet >::m_YGaussianFilter
private

Internal typedefs

Definition at line 354 of file otbImageToSIFTKeyPointSetFilter.h.


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