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 | Private Attributes | List of all members
otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet > Class Template Reference

This class extracts key points from an image through a pyramidal gaussian based decomposition. More...

#include <otbImageToSURFKeyPointSetFilter.h>

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

Public Types

typedef itk::SmartPointer
< const Self
ConstPointer
 
typedef
ImageToDetHessianImageType::Pointer 
DetHessianPointerFilter
 
typedef otb::ImageList
< InputImageType
ImageListType
 
typedef ImageListType::Pointer ImageListTypePointer
 
typedef
otb::ImageToHessianDeterminantImageFilter
< InputImageType,
InputImageType
ImageToDetHessianImageType
 
typedef InputImageType::IndexType IndexType
 
typedef InputImageType::Pointer InputImagePointerType
 
typedef TInputImage InputImageType
 
typedef
itk::ConstNeighborhoodIterator
< InputImageType
NeighborhoodIteratorType
 
typedef
NeighborhoodIteratorType::NeighborhoodType 
NeighborhoodType
 
typedef
NeighborhoodType::OffsetType 
OffsetType
 
typedef TOutputPointSet::PixelType OutputPixelType
 
typedef
TOutputPointSet::PointIdentifier 
OutputPointIdentifierType
 
typedef TOutputPointSet::Pointer OutputPointSetPointerType
 
typedef TOutputPointSet OutputPointSetType
 
typedef TOutputPointSet::PointType OutputPointType
 
typedef InputImageType::IndexType PixelIndex
 
typedef InputImageType::PixelType PixelValue
 
typedef itk::SmartPointer< SelfPointer
 
typedef InputImageType::PointType PointImageType
 
typedef ResampleFilterType::Pointer ResampleFilterPointerType
 
typedef
itk::ResampleImageFilter
< InputImageType,
InputImageType
ResampleFilterType
 
typedef
ImageToSURFKeyPointSetFilter 
Self
 
typedef InputImageType::SizeType SizeType
 
typedef InputImageType::SpacingType SpacingType
 
typedef ImageToPointSetFilter
< TInputImage, TOutputPointSet > 
Superclass
 
typedef itk::Vector
< PixelValue, 3 > 
VectorPointType
 
typedef std::vector< double > VectorType
 
- Public Types inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
typedef itk::SmartPointer
< const Self
ConstPointer
 
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 Self
ConstPointer
 
typedef itk::DataObject::Pointer DataObjectPointer
 
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
 
virtual int GetNumberOfPoints ()
 
virtual int GetOctavesNumber ()
 
virtual int GetScalesNumber ()
 
virtual void SetOctavesNumber (int _arg)
 
virtual void SetScalesNumber (int _arg)
 
- Public Member Functions inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
void GenerateOutputInformation (void)
 
const InputImageTypeGetInput (unsigned int idx)
 
const InputImageTypeGetInput ()
 
void SetInput (unsigned int idx, const InputImageType *input)
 
void SetInput (const InputImageType *input)
 
- Public Member Functions inherited from otb::PointSetSource< TOutputPointSet >
virtual ::itk::LightObject::Pointer CreateAnother (void) const
 
OutputPointSetTypeGetOutput (void)
 
OutputPointSetTypeGetOutput (unsigned int idx)
 
virtual void GraftNthOutput (unsigned int idx, itk::DataObject *output)
 
virtual void GraftOutput (itk::DataObject *output)
 
virtual DataObjectPointer MakeOutput (unsigned int idx)
 
void SetOutput (OutputPointSetType *output)
 

Static Public Member Functions

static Pointer New ()
 
- Static Public Member Functions inherited from otb::PointSetSource< TOutputPointSet >
static Pointer New ()
 

Protected Member Functions

 ImageToSURFKeyPointSetFilter ()
 
virtual ~ImageToSURFKeyPointSetFilter ()
 
virtual double AssignOrientation (const NeighborhoodType &neigh, double S)
 
virtual VectorType ComputeDescriptor (const NeighborhoodType &neigh, double O, double S)
 
virtual void GenerateData ()
 
virtual int GetMin (int a, int b, int c)
 
virtual bool IsLocalExtremum (const NeighborhoodType &neigh)
 
virtual bool IsLocalExtremumAround (const NeighborhoodType &neigh, double CenterValue)
 
virtual void PrintSelf (std::ostream &os, itk::Indent indent) const
 
bool RefineLocationKeyPoint (const NeighborhoodIteratorType &currentScale, const NeighborhoodIteratorType &previousScale, const NeighborhoodIteratorType &nextScale, VectorPointType &solution)
 
- Protected Member Functions inherited from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >
 ImageToPointSetFilter ()
 
virtual ~ImageToPointSetFilter ()
 
virtual void AfterThreadedGenerateData ()
 
virtual void BeforeThreadedGenerateData ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 
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 ()
 
virtual ~PointSetSource ()
 
void GenerateInputRequestedRegion ()
 
void PrintSelf (std::ostream &os, itk::Indent indent) const
 

Private Member Functions

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

Private Attributes

InputImagePointerType m_determinantImage
 
DetHessianPointerFilter m_DetHessianFilter
 
unsigned int m_DifferentSamplePoints
 
double m_DoHThreshold
 
InputImagePointerType m_ImageCurrent
 
ImageListTypePointer m_ImageList
 
InputImagePointerType m_ImageMovedNext
 
InputImagePointerType m_ImageMovedPrev
 
int m_NumberOfPoints
 
int m_OctavesNumber
 
OffsetType m_Offsets [8]
 
ResampleFilterPointerType m_ResampleFilter
 
int m_ScalesNumber
 

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::PointDataContainer::Pointer > 
OutputPointDataContainerForThreadType
 
typedef std::vector< typename
OutputPointSetType::PointsContainer::Pointer > 
OutputPointsContainerForThreadType
 
typedef SplitterType::Pointer RegionSplitterPointer
 
typedef
itk::ImageRegionSplitter
< itkGetStaticConstMacro(InputImageDimension)> 
SplitterType
 
typedef StreamingTraits
< InputImageType
StreamingTraitsType
 
- 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 >
OutputPointDataContainerForThreadType m_PointDataContainerPerThread
 
OutputPointsContainerForThreadType m_PointsContainerPerThread
 
RegionSplitterPointer m_RegionSplitter
 

Detailed Description

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

This class extracts key points from an image through a pyramidal gaussian based decomposition.

This class implements the SURF Key point detector proposed by Tuytelaars and Vangool from the university of Leuven, 2005

Selected Key Points are stored in an itk::PointSet structure. Points contains the coordinate of the detected point. DataPoints contain the values of the 64 element descriptor for each key point detected through the pyramidal analysis.

Orientation is expressed in degree in the range of [0, 360]

See Also
otb::ImageToDeterminantHessianImage

Definition at line 62 of file otbImageToSURFKeyPointSetFilter.h.

Member Typedef Documentation

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

Definition at line 72 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef ImageToDetHessianImageType::Pointer otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::DetHessianPointerFilter

Definition at line 113 of file otbImageToSURFKeyPointSetFilter.h.

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

ImageList to store the Hessian determinant image at each scale (sigma width)

Definition at line 120 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef ImageListType::Pointer otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageListTypePointer

Definition at line 121 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef otb::ImageToHessianDeterminantImageFilter<InputImageType, InputImageType> otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageToDetHessianImageType

Definition at line 112 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::IndexType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IndexType

Definition at line 84 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 82 of file otbImageToSURFKeyPointSetFilter.h.

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

Template parameters typedefs

Definition at line 78 of file otbImageToSURFKeyPointSetFilter.h.

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

Internal filters typedefs

Definition at line 105 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 109 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 110 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 92 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 94 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 91 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 90 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 93 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::IndexType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::PixelIndex

Definition at line 83 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::PixelType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::PixelValue

Definition at line 85 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 71 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::PointType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::PointImageType

Definition at line 88 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef ResampleFilterType::Pointer otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ResampleFilterPointerType

Definition at line 117 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef itk::ResampleImageFilter<InputImageType, InputImageType> otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ResampleFilterType

Filter for resampling images for the multi-scale analysis

Definition at line 116 of file otbImageToSURFKeyPointSetFilter.h.

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

Standard class typedefs.

Definition at line 69 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::SizeType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::SizeType

Definition at line 87 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef InputImageType::SpacingType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::SpacingType

Definition at line 86 of file otbImageToSURFKeyPointSetFilter.h.

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

Definition at line 70 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef itk::Vector<PixelValue, 3> otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::VectorPointType

Definition at line 125 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
typedef std::vector<double> otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::VectorType

3D vector to store the keypoints translations

Definition at line 124 of file otbImageToSURFKeyPointSetFilter.h.

Constructor & Destructor Documentation

template<class TInputImage , class TOutputPointSet >
otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageToSURFKeyPointSetFilter ( )
protected

Constructor.


Constructor

Definition at line 33 of file otbImageToSURFKeyPointSetFilter.txx.

template<class TInputImage , class TOutputPointSet >
otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::~ImageToSURFKeyPointSetFilter ( )
protectedvirtual

Destructor.

Definition at line 66 of file otbImageToSURFKeyPointSetFilter.txx.

template<class TInputImage, class TOutputPointSet>
otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ImageToSURFKeyPointSetFilter ( const Self )
private

Member Function Documentation

template<class TInputImage , class TOutputPointSet >
double otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::AssignOrientation ( const NeighborhoodType neigh,
double  S 
)
protectedvirtual

AssignOrientation

Parameters
currentScaleneighborhood
scaleaffected to the keypoint
Returns
key point orientation

Definition at line 523 of file otbImageToSURFKeyPointSetFilter.txx.

References otb::CONST_PI.

template<class TInputImage , class TOutputPointSet >
ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::VectorType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::ComputeDescriptor ( const NeighborhoodType neigh,
double  O,
double  S 
)
protectedvirtual

ComputeDescriptor

Parameters
currentScaleNeighboorhood
orientationassigned to the key point
scale
Returns
hsitogram descriptor

Parameters of the transformation

New Coordinates (rotated)

Definition at line 607 of file otbImageToSURFKeyPointSetFilter.txx.

References otb::CONST_PI.

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

Main computation method.

Computing the multiplicative factor for scales iteration scalar used for the wifth of the gaussian

Incrementation of the gaussian width the width of the gaussian have to be doubled for each iteration over octaves

For each octave, we search for the key points

Hessian Determinant Image

For each octave, we fill the imageList for the extremum search

NeighboorhoodIterator parameters

The extremum condition is weak over scales, it allows the cases : maxPrev & minCurr & maxNext, minPrev & maxCurr maxNext , ...

Reimplemented from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >.

Definition at line 75 of file otbImageToSURFKeyPointSetFilter.txx.

References itk::FixedArray< TValue, VLength >::Fill(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetIndex(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetNeighborhood(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GoToBegin(), itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::InBounds(), otbGenericMsgDebugMacro, and itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::SetLocation().

template<class TInputImage , class TOutputPointSet >
int otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::GetMin ( int  a,
int  b,
int  c 
)
protectedvirtual

Compute min a b c

End of GenerateData()

Definition at line 331 of file otbImageToSURFKeyPointSetFilter.txx.

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

Run-time type information (and related methods).

Reimplemented from otb::ImageToPointSetFilter< TInputImage, TOutputPointSet >.

template<class TInputImage, class TOutputPointSet>
virtual int otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::GetNumberOfPoints ( )
virtual

Get the number of KeyPoints detected

template<class TInputImage, class TOutputPointSet>
virtual int otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::GetOctavesNumber ( )
virtual
template<class TInputImage, class TOutputPointSet>
virtual int otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::GetScalesNumber ( )
virtual
template<class TInputImage , class TOutputPointSet >
bool otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremum ( const NeighborhoodType neigh)
protectedvirtual

Check local extremum for 8 neighbors (current)

Parameters
currentScale
Returns
true if the Central pixel is extremum

Definition at line 342 of file otbImageToSURFKeyPointSetFilter.txx.

template<class TInputImage , class TOutputPointSet >
bool otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::IsLocalExtremumAround ( const NeighborhoodType neigh,
double  CenterValue 
)
protectedvirtual

Check local extremum for 8 neighbors (Previous or Scale)

Parameters
neigh
Returns
true if the Central pixel is extremum

Definition at line 379 of file otbImageToSURFKeyPointSetFilter.txx.

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

Method for creation through the object factory.

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

Standard PrintSelf method.

Definition at line 705 of file otbImageToSURFKeyPointSetFilter.txx.

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

Refine location key point

  • Discard keypoints with low contrats DoH < DoHThreshold
  • Discard keypoints that lie outside the centre cubic pixel
Parameters
currentScaleiterator
previousScaleiterator
nextScaleiterator
solution
Returns
true if key point is accepted, false otherwise

Refine location key point

TODO : adapt the interpolation to the type of extrema

Definition at line 416 of file otbImageToSURFKeyPointSetFilter.txx.

References itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetCenterPixel(), and itk::ConstNeighborhoodIterator< TImage, TBoundaryCondition >::GetPixel().

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

Set/Get the number of Octaves

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

Set/Get the number of scales

Member Data Documentation

template<class TInputImage, class TOutputPointSet>
InputImagePointerType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_determinantImage
private

Those images

Definition at line 225 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
DetHessianPointerFilter otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DetHessianFilter
private

ImageToDeterminantHessianFilter filter

Definition at line 231 of file otbImageToSURFKeyPointSetFilter.h.

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

Number of shifted keypoints

Definition at line 240 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
double otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_DoHThreshold
private

Minimum threshold for determinant of Hessian

Definition at line 222 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
InputImagePointerType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ImageCurrent
private

Definition at line 226 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
ImageListTypePointer otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ImageList
private

ImageList

Definition at line 237 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
InputImagePointerType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ImageMovedNext
private

Definition at line 228 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
InputImagePointerType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ImageMovedPrev
private

Definition at line 227 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
int otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_NumberOfPoints
private

Number of key points detected

Definition at line 219 of file otbImageToSURFKeyPointSetFilter.h.

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

Number of octaves

Definition at line 213 of file otbImageToSURFKeyPointSetFilter.h.

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

Offsets vector, conveniance datas

Definition at line 243 of file otbImageToSURFKeyPointSetFilter.h.

template<class TInputImage, class TOutputPointSet>
ResampleFilterPointerType otb::ImageToSURFKeyPointSetFilter< TInputImage, TOutputPointSet >::m_ResampleFilter
private

Definition at line 234 of file otbImageToSURFKeyPointSetFilter.h.

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

Number of scale for each octave

Definition at line 216 of file otbImageToSURFKeyPointSetFilter.h.


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