MRPT  1.9.9
List of all members | Public Types | Public Member Functions | Private Attributes
mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t > Struct Template Reference

Detailed Description

template<typename distance_t, class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
struct mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >

A kd-tree builder for sets of features with SURF descriptors.

Example of usage:

TSURFDescriptorsKDTreeIndex<double> feats_kdtree(feats);
feats_kdtree.get_kdtree().knnSearch( ... );
See also
CFeatureList, mrpt::vision::find_descriptor_pairings

Definition at line 107 of file descriptor_kdtrees.h.

#include <mrpt/vision/descriptor_kdtrees.h>

Public Types

using kdtree_t = typename nanoflann::KDTreeSingleIndexAdaptor< metric_t, detail::TSURFDesc2KDTree_Adaptor< distance_t > >
 

Public Member Functions

 TSURFDescriptorsKDTreeIndex (const CFeatureList &feats)
 Constructor from a list of SIFT features. More...
 
void regenerate_kdtreee ()
 Re-creates the kd-tree, which must be done whenever the data source (the CFeatureList) changes. More...
 
kdtree_tget_kdtree ()
 Access to the kd-tree object. More...
 
const kdtree_tget_kdtree () const
 
 ~TSURFDescriptorsKDTreeIndex ()
 

Private Attributes

detail::TSURFDesc2KDTree_Adaptor< distance_t > m_adaptor
 
kdtree_tm_kdtree
 
const CFeatureListm_feats
 

Member Typedef Documentation

◆ kdtree_t

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
using mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::kdtree_t = typename nanoflann::KDTreeSingleIndexAdaptor< metric_t, detail::TSURFDesc2KDTree_Adaptor<distance_t> >

Definition at line 111 of file descriptor_kdtrees.h.

Constructor & Destructor Documentation

◆ TSURFDescriptorsKDTreeIndex()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::TSURFDescriptorsKDTreeIndex ( const CFeatureList feats)
inline

Constructor from a list of SIFT features.

Automatically build the KD-tree index. The list of features must NOT be empty or an exception will be raised.

Definition at line 117 of file descriptor_kdtrees.h.

References ASSERT_, mrpt::vision::CFeatureList::empty(), and mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::regenerate_kdtreee().

Here is the call graph for this function:

◆ ~TSURFDescriptorsKDTreeIndex()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::~TSURFDescriptorsKDTreeIndex ( )
inline

Member Function Documentation

◆ get_kdtree() [1/2]

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
kdtree_t& mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::get_kdtree ( )
inline

Access to the kd-tree object.

Definition at line 137 of file descriptor_kdtrees.h.

References mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_kdtree.

◆ get_kdtree() [2/2]

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
const kdtree_t& mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::get_kdtree ( ) const
inline

◆ regenerate_kdtreee()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
void mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::regenerate_kdtreee ( )
inline

Re-creates the kd-tree, which must be done whenever the data source (the CFeatureList) changes.

Definition at line 126 of file descriptor_kdtrees.h.

References mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_adaptor, mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_feats, mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_kdtree, and mrpt::vision::CFeatureList::size().

Referenced by mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::TSURFDescriptorsKDTreeIndex().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_adaptor

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
detail::TSURFDesc2KDTree_Adaptor<distance_t> mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_adaptor
private

◆ m_feats

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
const CFeatureList& mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_feats
private

◆ m_kdtree

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< float , detail::TSURFDesc2KDTree_Adaptor<distance_t>, distance_t>>
kdtree_t* mrpt::vision::TSURFDescriptorsKDTreeIndex< distance_t, metric_t >::m_kdtree
private



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: cb8dd5fc8 Sat Dec 7 21:55:39 2019 +0100 at sáb dic 7 22:00:13 CET 2019