Main MRPT website > C++ reference for MRPT 1.5.6
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. More...
 
TFeatureID getMaxID () const
 Returns the maximum ID of all features in the list, or 0 if it's empty. More...
 
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. More...
 
std::vector< size_t > & getFirstIndexPerRowLUT ()
 
mrpt::math::CMatrixBoolgetOccupiedSectionsMatrix ()
 Get a ref to the occupation matrix: this is a user-defined matrix, which is not updated automatically by this class. More...
 
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. More...
 
std::vector< size_t > m_first_index_per_row
 A LUT of the first feature index per row, to efficiently look for neighbors, etc. More...
 
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

Definition at line 163 of file TSimpleFeature.h.

◆ back() [2/2]

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

Definition at line 164 of file TSimpleFeature.h.

◆ begin() [1/2]

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

Definition at line 137 of file TSimpleFeature.h.

◆ begin() [2/2]

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

Definition at line 139 of file TSimpleFeature.h.

◆ 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

Definition at line 138 of file TSimpleFeature.h.

◆ end() [2/2]

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

Definition at line 140 of file TSimpleFeature.h.

◆ erase()

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

Definition at line 147 of file TSimpleFeature.h.

◆ front() [1/2]

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

Definition at line 166 of file TSimpleFeature.h.

◆ front() [2/2]

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

Definition at line 167 of file TSimpleFeature.h.

◆ getFeatureID()

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

Definition at line 175 of file TSimpleFeature.h.

◆ getFeatureResponse()

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

Definition at line 176 of file TSimpleFeature.h.

◆ getFeatureX()

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

Definition at line 173 of file TSimpleFeature.h.

◆ getFeatureY()

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

Definition at line 174 of file TSimpleFeature.h.

◆ getFirstIndexPerRowLUT() [1/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.

◆ getFirstIndexPerRowLUT() [2/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.

◆ 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.

◆ 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.

◆ getOccupiedSectionsMatrix() [2/2]

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

Definition at line 125 of file TSimpleFeature.h.

◆ getScale()

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

Definition at line 178 of file TSimpleFeature.h.

◆ getTrackStatus()

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

Definition at line 179 of file TSimpleFeature.h.

◆ 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.

◆ isPointFeature()

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

Definition at line 177 of file TSimpleFeature.h.

◆ 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

Definition at line 160 of file TSimpleFeature.h.

◆ operator[]() [2/2]

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

Definition at line 161 of file TSimpleFeature.h.

◆ push_back()

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

Definition at line 156 of file TSimpleFeature.h.

◆ 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

Definition at line 158 of file TSimpleFeature.h.

◆ rbegin() [1/2]

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

Definition at line 142 of file TSimpleFeature.h.

◆ rbegin() [2/2]

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

Definition at line 144 of file TSimpleFeature.h.

◆ rend() [1/2]

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

Definition at line 143 of file TSimpleFeature.h.

◆ rend() [2/2]

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

Definition at line 145 of file TSimpleFeature.h.

◆ 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

Definition at line 153 of file TSimpleFeature.h.

◆ setFeatureID()

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

Definition at line 187 of file TSimpleFeature.h.

◆ setFeatureResponse()

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

Definition at line 188 of file TSimpleFeature.h.

◆ setFeatureX()

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

Definition at line 181 of file TSimpleFeature.h.

◆ setFeatureXf()

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

Definition at line 184 of file TSimpleFeature.h.

◆ setFeatureY()

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

Definition at line 182 of file TSimpleFeature.h.

◆ setFeatureYf()

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

Definition at line 185 of file TSimpleFeature.h.

◆ setScale()

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

Definition at line 189 of file TSimpleFeature.h.

◆ setTrackStatus()

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

Definition at line 190 of file TSimpleFeature.h.

◆ 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< TSimpleFeature >::back(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::begin(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::clear(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::empty(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::end(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::erase(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::front(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getFeatureID(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getFeatureResponse(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getFeatureX(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getFeatureY(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getMaxID(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getScale(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getTrackStatus(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getVector(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::operator[](), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::push_back(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::push_back_fast(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::rbegin(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::rend(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::reserve(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::resize(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureID(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureResponse(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureX(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureXf(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureY(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setFeatureYf(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setScale(), mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::setTrackStatus(), and mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::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< TSimpleFeature >::clear(), and mrpt::vision::TSimpleFeatureList_templ< TSimpleFeature >::getFirstIndexPerRowLUT().

◆ m_occupied_sections

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



Page generated by Doxygen 1.8.14 for MRPT 1.5.6 Git: 4c65e8431 Tue Apr 24 08:18:17 2018 +0200 at lun oct 28 01:35:26 CET 2019