2012-06-05 4 views
4

Какая функция расстояния использует openCVs flannBasedMatcher, и можно ли изменить значение по умолчанию? В руководстве пользователя из оригинальной фланы Муджи и Лоу есть несколько разных типов расстояний (flann_distance_t), и я не вижу метода в opencv для их изменения: -/Какая функция расстояния использует FlannBasedMatcher и как ее изменить?

ответ

3

Это очень плохо документировано в коде для openCV, но настройки по умолчанию для flannBasedMatcher находятся в этих двух функциях

flann :: SearchParams(); // 32 проверки, 0, sorted = true flann :: KDTreeIndexParams(); // использует 4 рандомизированных дерева KD

Функция расстояния по умолчанию - FLANN_DIST_L2.

Я думаю, что этот бит кода объясняет, почему вы не можете изменить его еще printf("[WARNING] You are using cv::flann::Index (or cv::flann::GenericIndex) and have also changed the distance using cvflann::set_distance_type. This is no longer working as expected cv::flann::Index always uses L2). You should create the index templated on the distance, for example for L1 distance use: GenericIndex< L1<float> > \n"); \

 Смежные вопросы

  • Нет связанных вопросов^_^