41 enum flann_algorithm_t
43 FLANN_INDEX_LINEAR = 0,
44 FLANN_INDEX_KDTREE = 1,
45 FLANN_INDEX_KDTREE_SINGLE = 4,
53 std::vector<unsigned char> serializeIndex(
bool computeChecksum =
true)
const;
55 size_t indexedFeatures()
const;
58 size_t memoryUsed()
const;
62 flann_algorithm_t algorithm,
63 const cv::Mat & features,
64 bool useDistanceL1 =
false,
65 float rebalancingFactor = 2.0f);
68 const std::vector<unsigned char> & indexData,
69 flann_algorithm_t algorithm,
70 const cv::Mat & features,
71 bool useDistanceL1 =
false,
72 float rebalancingFactor = 2.0f,
73 std::string * errorMsg = NULL);
75 const unsigned char * indexData,
77 flann_algorithm_t algorithm,
78 const cv::Mat & features,
79 bool useDistanceL1 =
false,
80 float rebalancingFactor = 2.0f,
81 std::string * errorMsg = NULL);
85 int featuresType()
const {
return featuresType_;}
86 int featuresDim()
const {
return featuresDim_;}
88 std::vector<unsigned int> addPoints(
const cv::Mat & features);
90 void removePoint(
unsigned int index);
94 const cv::Mat & query,
100 bool sorted =
true)
const;
104 const cv::Mat & query,
105 std::vector<std::vector<size_t> > & indices,
106 std::vector<std::vector<float> > & dists,
108 int maxNeighbors = 0,
111 bool sorted =
true)
const;
115 unsigned int nextIndex_;
119 float rebalancingFactor_;
120 flann_algorithm_t algorithm_;
124 std::map<int, cv::Mat> addedDescriptors_;
125 std::list<int> removedIndexes_;