Template Class InvertedIndex¶
Defined in File inverted-index.h
Class Documentation¶
-
template<int
kDimVectors
>
classloop_closure::inverted_index
::
InvertedIndex
¶ Public Types
-
typedef Eigen::Matrix<float, kDimVectors, 1>
DescriptorType
¶
-
typedef Eigen::Matrix<float, kDimVectors, Eigen::Dynamic>
DescriptorMatrixType
¶
-
typedef Nabo::NearestNeighbourSearch<float>
NNSearch
¶
Public Functions
-
inline
InvertedIndex
(const Eigen::MatrixXf &words, int num_closest_words_for_nn_search)¶
-
inline void
SetNumClosestWordsForNNSearch
(int num_closest_words_for_nn_search)¶
-
inline int
GetNumDescriptorsInIndex
() const¶
-
inline void
Clear
()¶
-
inline void
AddDescriptors
(const DescriptorMatrixType &descriptors)¶
-
template<typename
DerivedQuery
, typenameDerivedIndices
, typenameDerivedDistances
>
inline voidGetNNearestNeighbors
(const Eigen::MatrixBase<DerivedQuery> &query_feature, int num_neighbors, const Eigen::MatrixBase<DerivedIndices> &out_indices, const Eigen::MatrixBase<DerivedDistances> &out_distances) const¶
Public Static Attributes
-
static constexpr int
kCollectTouchStatistics
= 0¶
-
static constexpr unsigned
kSearchOptionsDefault
= NNSearch::ALLOW_SELF_MATCH | NNSearch::SORT_RESULTS¶
-
static constexpr float
kSearchNNEpsilon
= 0.2¶
-
static constexpr int
kSearchNNNumNeighborsMultiplier
= 2¶
Protected Types
-
typedef Aligned<std::vector, DescriptorType>
DescriptorBucket
¶
Protected Functions
-
template<typename
DerivedQuery
>
inline voidFindClosestWords
(const Eigen::MatrixBase<DerivedQuery> &query_feature, int num_words, std::vector<int> *closest_words) const¶
Protected Attributes
-
Eigen::MatrixXf
words_
¶
-
int
num_closest_words_for_nn_search_
¶
-
std::unordered_map<int, int>
word_index_map_
¶
-
Aligned<std::vector, DescriptorBucket>
db_descriptors_
¶
-
std::vector<std::vector<int>>
db_descriptor_indices_
¶
-
int
max_db_descriptor_index_
¶
Protected Static Functions
-
static inline void
InsertNeighbor
(int index, float distance, int num_neighbors, std::vector<std::pair<float, int>> *const nearest_neighbors)¶
-
typedef Eigen::Matrix<float, kDimVectors, 1>