2014-01-28 5 views
0

Я новичок в opencv. Мой вопрос:Как работает поезд Flann Matcher в opencv?

У меня есть 2-х точечный дескриптор изображения поезда A и trainB. Затем я создаю вектор, чтобы вставить их, и добавьте их в фланеновую метку для поезда.

После этого я использую queryControl для запроса queryC, чтобы выполнить knnMatch и получить возвращаемые DMatch.

В этом случае дескриптор поезда будет использоваться для соответствия запросуC, trainA или trainB? и как обучение помогает улучшить точность совпадения?

Заранее спасибо.

ответ

2

Оба. Это не «тренировка» в стандартном значении. «Обучение» здесь означает просто «набор дескрипторов, на основе которых строится kd-дерево». Проще - если вы соответствуете, вы берете одну функцию из набора S1 и ищите ближайшего соседа в наборе S2. FLANN (реализация kd-дерева) - это просто быстрый способ найти (приблизительный) ближайший сосед.

+0

спасибо, что ответ, @ old-ufo. Могу ли я также сказать, что чем больше учебного дескриптора я добавляю для тренировки, тем больше очков интереса будет для реальной цели, в этом аспекте поезд увеличивает точность матча? –

+1

Это не точность (т. Е. Точность), это «отзыв» http://en.wikipedia.org/wiki/Precision_and_recall. С одной стороны - да, на других - дополнительные дескрипторы должны быть: 1) действительно принадлежат объекту; 2) Если вы используете отношение второго ближайшего соседа, дополнительные дескрипторы должны быть достаточно разными от существующих. В противном случае они «убивают» друг друга в стандартном SNN-тесте Lowe. –

+0

круто спасибо. так что в основном, только правильный дескриптор будет увеличивать точность и запоминать. –

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

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