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

Detailed Description

template<typename distance_t, class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
struct mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >

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

Example of usage:

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

Definition at line 49 of file descriptor_kdtrees.h.

#include <mrpt/vision/descriptor_kdtrees.h>

Public Types

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

Public Member Functions

 TSIFTDescriptorsKDTreeIndex (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
 
 ~TSIFTDescriptorsKDTreeIndex ()
 

Private Attributes

detail::TSIFTDesc2KDTree_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< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
using mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::kdtree_t = typename nanoflann::KDTreeSingleIndexAdaptor< metric_t, detail::TSIFTDesc2KDTree_Adaptor<distance_t> >

Definition at line 53 of file descriptor_kdtrees.h.

Constructor & Destructor Documentation

◆ TSIFTDescriptorsKDTreeIndex()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::TSIFTDescriptorsKDTreeIndex ( 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 59 of file descriptor_kdtrees.h.

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

Here is the call graph for this function:

◆ ~TSIFTDescriptorsKDTreeIndex()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::~TSIFTDescriptorsKDTreeIndex ( )
inline

Member Function Documentation

◆ get_kdtree() [1/2]

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
kdtree_t& mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::get_kdtree ( )
inline

Access to the kd-tree object.

Definition at line 79 of file descriptor_kdtrees.h.

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

◆ get_kdtree() [2/2]

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
const kdtree_t& mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::get_kdtree ( ) const
inline

◆ regenerate_kdtreee()

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
void mrpt::vision::TSIFTDescriptorsKDTreeIndex< 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 68 of file descriptor_kdtrees.h.

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

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

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< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
detail::TSIFTDesc2KDTree_Adaptor<distance_t> mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::m_adaptor
private

◆ m_feats

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
const CFeatureList& mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::m_feats
private

◆ m_kdtree

template<typename distance_t , class metric_t = nanoflann::L2_Simple_Adaptor< uint8_t , detail::TSIFTDesc2KDTree_Adaptor<distance_t>, distance_t>>
kdtree_t* mrpt::vision::TSIFTDescriptorsKDTreeIndex< distance_t, metric_t >::m_kdtree
private



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: 6e6d28d09 Wed Nov 13 18:58:42 2019 +0100 at miƩ nov 13 19:00:09 CET 2019