Я использую opencv 2.4.4 flann.Как использовать opencv flann, особенно заданные алгоритмы расстояния?
и я имею в виду: http://docs.opencv.org/2.4.4/modules/flann/doc/flann_fast_approximate_nearest_neighbor_search.html
сделать Knn.
У меня есть матрица (8000 * 32) flann_m. Имеется 8000 данных, каждый из которых имеет 32 функции.
Я написал такой код:
flann::Index flann_index(flann_m, flann::LinearIndexParams());
flann_index.save("flann_index.fln");
Mat resps(ROW,K,CV_32F);
Mat nresps(ROW,K,CV_16S);
Mat dist(ROW,K,CV_32F);
flann_index.knnSearch(flann_m,nresps,dist,K,flann::SearchParams(64));
И я мог бы получить результаты Knn в nresps и дист с nresps индексы N соседей, и DIST расстояния.
Но я не знаю, как установить алгоритм разного расстояния (ChiSquare, Euclidean и т. Д.) В opencv flann.
Я проверил flann.cpp, и кажется, что функция set_distance() деперементирована.