Hugintrunk
0.1
|
#include <KDTree.h>
Public Types | |
typedef std::vector< KE > | ItemVector_t |
typedef std::vector< KE > ::const_iterator | ItemVectorIt_t |
typedef std::vector< const KE * > | ItemPtrVector_t |
typedef std::vector< const KE * > ::const_iterator | ItemPtrVectorIt_t |
typedef std::set< BestMatch < KE >, std::greater < BestMatch< KE > > > | BestMatchSet_t |
typedef lfeat::bounded_set < BestMatch< KE > , std::greater< BestMatch< KE > > > | BestMatchLimitedSet_t |
typedef std::list< QueueEntry < KE, VTYPE > > | QueueEntryList_t |
Public Member Functions | |
KDTree (const ItemVector_t &iElemsList, int iDimensions) | |
KDTree (const ItemPtrVector_t &iElemsPtrList, int iDimensions) | |
~KDTree () | |
BestMatchSet_t | getNearestNeighboursBBF (const KE &iTarget, int iNbBestMatches, int iNbSearchSteps) |
double | calcSqDist (const KE *i1, const KE *i2) |
Private Member Functions | |
void | init (const ItemPtrVector_t &iElemsPtrList) |
ItemPtrVectorIt_t | choosePivot (const ItemPtrVector_t &iElemsPtrList) |
void | recurseNearestNeighboursBBF (const KE &iTarget, HyperRectangle< KE, VTYPE > &iHR, BestMatchLimitedSet_t &ioBestMatches, QueueEntryList_t &ioSearchQueue, int &ioRemainingUnqueues) |
Private Attributes | |
int | _dims |
const KE * | _pivot |
int | _splitDim |
KDTree< KE, VTYPE > * | _leftKD |
KDTree< KE, VTYPE > * | _rightKD |
typedef lfeat::bounded_set<BestMatch<KE>, std::greater<BestMatch<KE> > > KDTreeSpace::KDTree< KE, VTYPE >::BestMatchLimitedSet_t |
typedef std::set<BestMatch<KE>, std::greater<BestMatch<KE> > > KDTreeSpace::KDTree< KE, VTYPE >::BestMatchSet_t |
typedef std::vector<const KE*> KDTreeSpace::KDTree< KE, VTYPE >::ItemPtrVector_t |
typedef std::vector<const KE*>::const_iterator KDTreeSpace::KDTree< KE, VTYPE >::ItemPtrVectorIt_t |
typedef std::vector<KE> KDTreeSpace::KDTree< KE, VTYPE >::ItemVector_t |
typedef std::vector<KE>::const_iterator KDTreeSpace::KDTree< KE, VTYPE >::ItemVectorIt_t |
typedef std::list<QueueEntry<KE, VTYPE> > KDTreeSpace::KDTree< KE, VTYPE >::QueueEntryList_t |
KDTreeSpace::KDTree< KE, VTYPE >::KDTree | ( | const ItemVector_t & | iElemsList, |
int | iDimensions | ||
) |
Definition at line 38 of file KDTreeImpl.h.
References KDTreeSpace::KDTree< KE, VTYPE >::init().
KDTreeSpace::KDTree< KE, VTYPE >::KDTree | ( | const ItemPtrVector_t & | iElemsPtrList, |
int | iDimensions | ||
) |
Definition at line 68 of file KDTreeImpl.h.
References KDTreeSpace::KDTree< KE, VTYPE >::init().
KDTreeSpace::KDTree< KE, VTYPE >::~KDTree | ( | ) |
Definition at line 83 of file KDTreeImpl.h.
double KDTreeSpace::KDTree< KE, VTYPE >::calcSqDist | ( | const KE * | i1, |
const KE * | i2 | ||
) |
Definition at line 227 of file KDTreeImpl.h.
|
private |
Definition at line 163 of file KDTreeImpl.h.
References celeste::max().
std::set< BestMatch< KE >, std::greater< BestMatch< KE > > > KDTreeSpace::KDTree< KE, VTYPE >::getNearestNeighboursBBF | ( | const KE & | iTarget, |
int | iNbBestMatches, | ||
int | iNbSearchSteps | ||
) |
Definition at line 240 of file KDTreeImpl.h.
References lfeat::bounded_set< _Key, _Compare >::getSet().
|
private |
Definition at line 98 of file KDTreeImpl.h.
Referenced by KDTreeSpace::KDTree< KE, VTYPE >::KDTree().
|
private |
Definition at line 258 of file KDTreeImpl.h.
References KDTreeSpace::QueueEntry< KE, VTYPE >::_HR, KDTreeSpace::QueueEntry< KE, VTYPE >::_kdTree, lfeat::bounded_set< _Key, _Compare >::begin(), KDTreeSpace::HyperRectangle< KE, TYPE >::calcSqDistance(), KDTreeSpace::HyperRectangle< KE, TYPE >::hasHyperSphereIntersect(), lfeat::bounded_set< _Key, _Compare >::insert(), celeste::max(), KDTreeSpace::KDTree< KE, VTYPE >::recurseNearestNeighboursBBF(), lfeat::bounded_set< _Key, _Compare >::size(), and KDTreeSpace::HyperRectangle< KE, TYPE >::split().
Referenced by KDTreeSpace::KDTree< KE, VTYPE >::recurseNearestNeighboursBBF().
|
private |
|
private |
|
private |
|
private |
|
private |