2013-08-26 2 views
5

Существует несколько видов детекторов и дескрипторов, таких как SIFT, SURF, FAST. Интересно, все ли они имеют право на приложения в режиме реального времени? Что лучше или лучше?сравнение характеристик детектора и дескрипторов

И, кроме того, это редуктор Harris-Laplacian по-прежнему полезен, когда у нас уже есть три вышеуказанных? Это лучше их?

+0

SIFT и прибой являются относительно медленными Дескрипторы по сравнению с двоичными дескрипторов, таких как BRISK, Brief, ОРБ и урод. Я не уверен в их скорости обнаружения (а не описания), может быть, кто-то может ответить на это. Кроме того, SIFT и SURF намного лучше в своей точности и кривых отзыва (что означает их производительность) по сравнению с двоичными дескрипторами. Если вам интересно, я могу дать вам ссылку на сообщение, в котором содержится введение в двоичные дескрипторы. – GilLevi

+0

@GilLevi, большое вам спасибо, вы главный майор :-). На самом деле, мне сложно сделать выбор между (SIFT, SURF, FAST) или (harris-laplacian). Я не совсем знаком с ними, но, согласно некоторым статьям, Harris-laplacian, похоже, хорош с точки зрения обнаружения функций, но он может быть медленнее, чем другие 3, верно? Не могли бы вы мне помочь? – Alcott

+0

Вас интересует детектор или дескриптор? Если вы обеспокоены скоростью, почему бы вам просто не проверить себя? Я могу ссылаться на какой-то код, который, я думаю, вы можете легко изменить, чтобы проверить время работы. – GilLevi

ответ

15

Я могу посоветовать использовать Hessian-Affine и MSER для обнаружения, если вам нужна инвариантность к различным факторам (например, изменение точки обзора) или FAST, если вам нужно в реальном времени. FAST выполняет аналогичную работу с Harris, но намного быстрее.

Вы можете посмотреть в «Local Invariant Feature Detectors: A Survey» и «A Comparison of Affine Region Detectors», где многие извещатели прошли испытания и описаны очень хорошо.

Обновление: «WxBS: Wide Baseline Stereo Generalizations» расширяет эталон новых и классических детекторов и дескрипторов.

Во-вторых, часть описания обычно медленнее, чем обнаружение, поэтому для использования в режиме реального времени вам необходимо использовать графический или двоичный дескриптор, например BRIEF или FREAK.

Update2: "HPatches (Homography Patches) dataset and benchmark" и соответствующий семинар в ECCV 2016. http://www.iis.ee.ic.ac.uk/ComputerVision/DescrWorkshop/index.html.

Update3: «Comparative Evaluation of Hand-Crafted and Learned Local Features» Дескрипторы (и бит детекторы) для крупномасштабной задачи 3D-реконструкции CVPR 2017.

+0

Спасибо, но почему бы не SIFT/SURF? – Alcott

+2

Поскольку SIFT и SURF в качестве детекторов являются только ковариантностью сходства (то есть «иммунными» к вращению, трансляции и изменениям масштаба, но не аффинным ковариантом - их производительность быстро ухудшается с изменением точки зрения). Стандартная практика сопоставления изображений - использовать MSER и Hessian-Affine как детектор + SIFT в качестве дескриптора. Также SIFT и SURF медленны (а также Hessian-Affine и less - MSER) ​​по сравнению с очень быстрыми ключевыми точками FAST. –

+0

@ old-ufo Я наткнулся на ваш ответ, исследуя сравнения детекторов функций. Я ищу, чтобы внедрить распознавание лица (расположение угла рта, глаза, нос и т. Д.) И оценивал различные детекторы/дескрипторы. Кажется, что ваша причина не использовать SIFT/SURF не применяется, учитывая, что я буду использовать набор для обучения/тестирования, где изображение является фронтальным снимком объекта (т. Е. Изменение точки зрения не важно). Есть ли у вас какие-либо предложения о том, что может быть хорошим детектором/дескрипторами и почему? Большинство литературы по этому вопросу устарели на пару лет ... Спасибо! –

1

Мой тест скорости для точечных детекторов в OpenCV 3.0 с использованием АВТ Manta G-125С (1292x964)

Единица является FPS

  1. Свободный ход (без обработки): 21,3
  2. БЫСТРО (nonmaxima подавление : правда): 16-21
  3. БЫСТРО (nonmaxima подавление: ложь): 12,8
  4. ORB: 12,8
  5. GoodFeaturesToTr извед: 9
  6. БРИСК: 8-9.2