Main MRPT website > C++ reference for MRPT 1.4.0
List of all members | Public Types | Private Attributes
mrpt::vision::TSimpleFeatureList_templ< FEATURE > Struct Template Reference

Detailed Description

template<typename FEATURE>
struct mrpt::vision::TSimpleFeatureList_templ< FEATURE >

A list of image features using the structure TSimpleFeature for each feature - capable of KD-tree computations Users normally use directly the typedef's: TSimpleFeatureList & TSimpleFeaturefList.

Definition at line 94 of file TSimpleFeature.h.

#include <mrpt/vision/TSimpleFeature.h>

Inheritance diagram for mrpt::vision::TSimpleFeatureList_templ< FEATURE >:
Inheritance graph

Public Types

typedef std::vector< FEATURE > TFeatureVector
 
typedef FEATURE feature_t
 

Public Member Functions

Utilities
const TFeatureVectorgetVector () const
 Returns a const ref to the actual std::vector<> container.
 
TFeatureID getMaxID () const
 Returns the maximum ID of all features in the list, or 0 if it's empty.
 
const std::vector< size_t > & getFirstIndexPerRowLUT () const
 Returns a vector with a LUT of the first feature index per row, to efficiently look for neighbors, etc.
 
std::vector< size_t > & getFirstIndexPerRowLUT ()
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
mrpt::math::CMatrixBoolgetOccupiedSectionsMatrix ()
 Get a ref to the occupation matrix: this is a user-defined matrix, which is not updated automatically by this class.
 
const mrpt::math::CMatrixBoolgetOccupiedSectionsMatrix () const
 
getFeature*() methods for template-based access to feature list
TSimpleFeatureTraits< FEATURE >::coord_t getFeatureX (size_t i) const
 
TSimpleFeatureTraits< FEATURE >::coord_t getFeatureY (size_t i) const
 
TFeatureID getFeatureID (size_t i) const
 
float getFeatureResponse (size_t i) const
 
bool isPointFeature (size_t i) const
 
float getScale (size_t i) const
 
TFeatureTrackStatus getTrackStatus (size_t i)
 
void setFeatureX (size_t i, typename TSimpleFeatureTraits< FEATURE >::coord_t x)
 
void setFeatureY (size_t i, typename TSimpleFeatureTraits< FEATURE >::coord_t y)
 
void setFeatureXf (size_t i, float x)
 
void setFeatureYf (size_t i, float y)
 
void setFeatureID (size_t i, TFeatureID id)
 
void setFeatureResponse (size_t i, float r)
 
void setScale (size_t i, float s)
 
void setTrackStatus (size_t i, TFeatureTrackStatus s)
 
void mark_as_outdated () const
 

Private Attributes

TFeatureVector m_feats
 The actual container with the list of features.
 
std::vector< size_t > m_first_index_per_row
 A LUT of the first feature index per row, to efficiently look for neighbors, etc.
 
mrpt::math::CMatrixBool m_occupied_sections
 

Method and datatypes to emulate a STL container

typedef TFeatureVector::iterator iterator
 
typedef TFeatureVector::const_iterator const_iterator
 
typedef TFeatureVector::reverse_iterator reverse_iterator
 
typedef TFeatureVector::const_reverse_iterator const_reverse_iterator
 
iterator begin ()
 
iterator end ()
 
const_iterator begin () const
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
reverse_iterator rend ()
 
const_reverse_iterator rbegin () const
 
const_reverse_iterator rend () const
 
iterator erase (const iterator &it)
 
bool empty () const
 
size_t size () const
 
void clear ()
 
void resize (size_t N)
 
void reserve (size_t N)
 
void push_back (const FEATURE &f)
 
void push_back_fast (const FEATURE &f)
 
void push_back_fast (const int x, const int y)
 
FEATURE & operator[] (const unsigned int index)
 
const FEATURE & operator[] (const unsigned int index) const
 
FEATURE & back ()
 
const FEATURE & back () const
 
FEATURE & front ()
 
const FEATURE & front () const
 

Member Typedef Documentation

◆ const_iterator

template<typename FEATURE >
typedef TFeatureVector::const_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::const_iterator

Definition at line 132 of file TSimpleFeature.h.

◆ const_reverse_iterator

template<typename FEATURE >
typedef TFeatureVector::const_reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::const_reverse_iterator

Definition at line 135 of file TSimpleFeature.h.

◆ feature_t

template<typename FEATURE >
typedef FEATURE mrpt::vision::TSimpleFeatureList_templ< FEATURE >::feature_t

Definition at line 98 of file TSimpleFeature.h.

◆ iterator

template<typename FEATURE >
typedef TFeatureVector::iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::iterator

Definition at line 131 of file TSimpleFeature.h.

◆ reverse_iterator

template<typename FEATURE >
typedef TFeatureVector::reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::reverse_iterator

Definition at line 134 of file TSimpleFeature.h.

◆ TFeatureVector

template<typename FEATURE >
typedef std::vector<FEATURE> mrpt::vision::TSimpleFeatureList_templ< FEATURE >::TFeatureVector

Definition at line 97 of file TSimpleFeature.h.

Member Function Documentation

◆ back() [1/2]

template<typename FEATURE >
FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::back ( )
inline

◆ back() [2/2]

template<typename FEATURE >
const FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::back ( ) const
inline

◆ begin() [1/2]

template<typename FEATURE >
iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::begin ( )
inline

◆ begin() [2/2]

template<typename FEATURE >
const_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::begin ( ) const
inline

◆ clear()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::clear ( )
inline

◆ empty()

template<typename FEATURE >
bool mrpt::vision::TSimpleFeatureList_templ< FEATURE >::empty ( ) const
inline

◆ end() [1/2]

template<typename FEATURE >
iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::end ( )
inline

◆ end() [2/2]

template<typename FEATURE >
const_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::end ( ) const
inline

◆ erase()

template<typename FEATURE >
iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::erase ( const iterator it)
inline

◆ front() [1/2]

template<typename FEATURE >
FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::front ( )
inline

◆ front() [2/2]

template<typename FEATURE >
const FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::front ( ) const
inline

◆ getFeatureID()

template<typename FEATURE >
TFeatureID mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureID ( size_t  i) const
inline

◆ getFeatureResponse()

template<typename FEATURE >
float mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureResponse ( size_t  i) const
inline

◆ getFeatureX()

template<typename FEATURE >
TSimpleFeatureTraits< FEATURE >::coord_t mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureX ( size_t  i) const
inline

◆ getFeatureY()

template<typename FEATURE >
TSimpleFeatureTraits< FEATURE >::coord_t mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureY ( size_t  i) const
inline

◆ getFirstIndexPerRowLUT() [1/2]

template<typename FEATURE >
std::vector< size_t > & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFirstIndexPerRowLUT ( )
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 121 of file TSimpleFeature.h.

References mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_first_index_per_row.

◆ getFirstIndexPerRowLUT() [2/2]

template<typename FEATURE >
const std::vector< size_t > & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFirstIndexPerRowLUT ( ) const
inline

Returns a vector with a LUT of the first feature index per row, to efficiently look for neighbors, etc.

By default this vector is empty, so if a feature detector is used that doesn't fill this out, it will remain empty and useless.

Note
FASTER detectors do fill this out. In general, a feature list that dynamically changes will not use this LUT.

Definition at line 119 of file TSimpleFeature.h.

References mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_first_index_per_row.

◆ getMaxID()

template<typename FEATURE >
TFeatureID mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getMaxID ( ) const
inline

Returns the maximum ID of all features in the list, or 0 if it's empty.

Definition at line 107 of file TSimpleFeature.h.

References mrpt::vision::TSimpleFeatureList_templ< FEATURE >::empty(), mrpt::utils::keep_max(), and mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_feats.

◆ getOccupiedSectionsMatrix() [1/2]

template<typename FEATURE >
mrpt::math::CMatrixBool & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getOccupiedSectionsMatrix ( )
inline

Get a ref to the occupation matrix: this is a user-defined matrix, which is not updated automatically by this class.

Definition at line 124 of file TSimpleFeature.h.

References mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_occupied_sections.

◆ getOccupiedSectionsMatrix() [2/2]

template<typename FEATURE >
const mrpt::math::CMatrixBool & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getOccupiedSectionsMatrix ( ) const
inline

◆ getScale()

template<typename FEATURE >
float mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getScale ( size_t  i) const
inline

◆ getTrackStatus()

template<typename FEATURE >
TFeatureTrackStatus mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getTrackStatus ( size_t  i)
inline

◆ getVector()

template<typename FEATURE >
const TFeatureVector & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getVector ( ) const
inline

Returns a const ref to the actual std::vector<> container.

Definition at line 104 of file TSimpleFeature.h.

References mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_feats.

◆ isPointFeature()

template<typename FEATURE >
bool mrpt::vision::TSimpleFeatureList_templ< FEATURE >::isPointFeature ( size_t  i) const
inline

Definition at line 177 of file TSimpleFeature.h.

References MRPT_UNUSED_PARAM.

◆ mark_as_outdated()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::mark_as_outdated ( ) const
inline

Definition at line 192 of file TSimpleFeature.h.

◆ operator[]() [1/2]

template<typename FEATURE >
FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::operator[] ( const unsigned int  index)
inline

◆ operator[]() [2/2]

template<typename FEATURE >
const FEATURE & mrpt::vision::TSimpleFeatureList_templ< FEATURE >::operator[] ( const unsigned int  index) const
inline

◆ push_back()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::push_back ( const FEATURE &  f)
inline

◆ push_back_fast() [1/2]

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::push_back_fast ( const FEATURE &  f)
inline

◆ push_back_fast() [2/2]

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::push_back_fast ( const int  x,
const int  y 
)
inline

◆ rbegin() [1/2]

template<typename FEATURE >
reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rbegin ( )
inline

◆ rbegin() [2/2]

template<typename FEATURE >
const_reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rbegin ( ) const
inline

◆ rend() [1/2]

template<typename FEATURE >
reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rend ( )
inline

◆ rend() [2/2]

template<typename FEATURE >
const_reverse_iterator mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rend ( ) const
inline

◆ reserve()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::reserve ( size_t  N)
inline

◆ resize()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::resize ( size_t  N)
inline

◆ setFeatureID()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureID ( size_t  i,
TFeatureID  id 
)
inline

◆ setFeatureResponse()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureResponse ( size_t  i,
float  r 
)
inline

◆ setFeatureX()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureX ( size_t  i,
typename TSimpleFeatureTraits< FEATURE >::coord_t  x 
)
inline

◆ setFeatureXf()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureXf ( size_t  i,
float  x 
)
inline

◆ setFeatureY()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureY ( size_t  i,
typename TSimpleFeatureTraits< FEATURE >::coord_t  y 
)
inline

◆ setFeatureYf()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureYf ( size_t  i,
float  y 
)
inline

◆ setScale()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setScale ( size_t  i,
float  s 
)
inline

◆ setTrackStatus()

template<typename FEATURE >
void mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setTrackStatus ( size_t  i,
TFeatureTrackStatus  s 
)
inline

◆ size()

template<typename FEATURE >
size_t mrpt::vision::TSimpleFeatureList_templ< FEATURE >::size ( ) const
inline

Member Data Documentation

◆ m_feats

template<typename FEATURE >
TFeatureVector mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_feats
private

The actual container with the list of features.

Definition at line 196 of file TSimpleFeature.h.

Referenced by mrpt::vision::TSimpleFeatureList_templ< FEATURE >::back(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::begin(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::clear(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::empty(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::end(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::erase(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::front(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureID(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureResponse(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureX(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFeatureY(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getMaxID(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getScale(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getTrackStatus(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getVector(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::operator[](), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::push_back(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::push_back_fast(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rbegin(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::rend(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::reserve(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::resize(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureID(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureResponse(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureX(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureXf(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureY(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setFeatureYf(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setScale(), mrpt::vision::TSimpleFeatureList_templ< FEATURE >::setTrackStatus(), and mrpt::vision::TSimpleFeatureList_templ< FEATURE >::size().

◆ m_first_index_per_row

template<typename FEATURE >
std::vector<size_t> mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_first_index_per_row
private

A LUT of the first feature index per row, to efficiently look for neighbors, etc.

Definition at line 197 of file TSimpleFeature.h.

Referenced by mrpt::vision::TSimpleFeatureList_templ< FEATURE >::clear(), and mrpt::vision::TSimpleFeatureList_templ< FEATURE >::getFirstIndexPerRowLUT().

◆ m_occupied_sections

template<typename FEATURE >
mrpt::math::CMatrixBool mrpt::vision::TSimpleFeatureList_templ< FEATURE >::m_occupied_sections
private



Page generated by Doxygen 1.9.6 for MRPT 1.4.0 SVN: at Thu Jan 19 22:37:47 UTC 2023