Matches keypoints by their feature vectors and geometric properties. More...
#include <FLANNMatcher.h>
Public Member Functions | |
void | createIndex (std::vector< KeyPoint > *keyPoints) |
FLANNMatcher () | |
constructor | |
FLANNMatcher (const FLANNMatcher &other) | |
Assignment operator. | |
FLANNParameters & | getFlannParameters () |
std::string | getLog () |
std::list< KeyPointMatch > | getMatches () |
int | getNumMatches () |
bool | hasIndex () |
void | match (std::vector< KeyPoint > *keyPoints, float maxDistRatio=0.7) |
FLANNMatcher & | operator= (const FLANNMatcher &other) |
~FLANNMatcher () | |
The destructor. | |
Private Types | |
typedef std::list < KeyPointMatch >::iterator | MatchElem |
typedef std::list< KeyPointMatch > | MatchList |
Private Member Functions | |
void | clearFLANNMembers () |
void | eliminateMultipleMatches () |
If more than one keypoint of First have been matched with the same of Second, keep only closest. | |
void | fillFlannDataWithDescriptors (const std::vector< KeyPoint > *features, float *flannDataPtr) |
Private Attributes | |
unsigned int | m_descriptorLength |
FLANN_INDEX | m_flannIndex |
float * | m_FlannModelData |
FLANNParameters | m_flannParams |
bool | m_hasIndex |
std::ostringstream | m_Log |
MatchList | m_Matches |
Matches keypoints by their feature vectors and geometric properties.
Definition at line 33 of file FLANNMatcher.h.
typedef std::list<KeyPointMatch>::iterator FLANNMatcher::MatchElem [private] |
Definition at line 92 of file FLANNMatcher.h.
typedef std::list< KeyPointMatch > FLANNMatcher::MatchList [private] |
Definition at line 89 of file FLANNMatcher.h.
constructor
[in] | reference | list of keypoints, an index list for this set is created |
FLANNMatcher::FLANNMatcher | ( | const FLANNMatcher & | other | ) |
Assignment operator.
The destructor.
void FLANNMatcher::clearFLANNMembers | ( | ) | [private] |
void FLANNMatcher::createIndex | ( | std::vector< KeyPoint > * | keyPoints | ) |
Create a new index
void FLANNMatcher::eliminateMultipleMatches | ( | ) | [private] |
If more than one keypoint of First have been matched with the same of Second, keep only closest.
void FLANNMatcher::fillFlannDataWithDescriptors | ( | const std::vector< KeyPoint > * | features, |
float * | flannDataPtr | ||
) | [private] |
FLANNParameters& FLANNMatcher::getFlannParameters | ( | ) | [inline] |
Definition at line 75 of file FLANNMatcher.h.
std::string FLANNMatcher::getLog | ( | ) |
std::list< KeyPointMatch > FLANNMatcher::getMatches | ( | ) | [inline] |
Definition at line 66 of file FLANNMatcher.h.
int FLANNMatcher::getNumMatches | ( | ) | [inline] |
Definition at line 71 of file FLANNMatcher.h.
bool FLANNMatcher::hasIndex | ( | ) | [inline] |
Definition at line 68 of file FLANNMatcher.h.
void FLANNMatcher::match | ( | std::vector< KeyPoint > * | keyPoints, |
float | maxDistRatio = 0.7 |
||
) |
KeyPointMatch features by distance ratio strategy
keyPoints[in] | keypoints which will be matched against the indexed set |
maxDistRatio | Maximal ratio between closest and second-closest match |
symmetric | if true, only keep matches that a |
FLANNMatcher& FLANNMatcher::operator= | ( | const FLANNMatcher & | other | ) |
unsigned int FLANNMatcher::m_descriptorLength [private] |
Definition at line 101 of file FLANNMatcher.h.
FLANN_INDEX FLANNMatcher::m_flannIndex [private] |
Definition at line 98 of file FLANNMatcher.h.
float* FLANNMatcher::m_FlannModelData [private] |
Definition at line 103 of file FLANNMatcher.h.
FLANNParameters FLANNMatcher::m_flannParams [private] |
Definition at line 99 of file FLANNMatcher.h.
bool FLANNMatcher::m_hasIndex [private] |
Definition at line 100 of file FLANNMatcher.h.
std::ostringstream FLANNMatcher::m_Log [private] |
Definition at line 96 of file FLANNMatcher.h.
MatchList FLANNMatcher::m_Matches [private] |
Definition at line 94 of file FLANNMatcher.h.