Метрика для ПОВЕРХНОСТИ - PullRequest
8 голосов
/ 16 июня 2011

Я ищу полезную метрику для SURF.Например, насколько хорошо одно изображение соответствует другому по шкале, скажем, от 0 до 1, где 0 означает отсутствие сходства, а 1 означает одно и то же изображение.

SURF предоставляет следующие данные:

  • точек интереса (и их дескрипторов) в целевом изображении (набор T)
  • с использованием пар алгоритмов ближайших соседейиз двух наборов сверху

Я пытался что-то до сих пор, но, кажется, ничего не получалось слишком хорошо:

  1. метрика, используя размер различных наборов:d = N / min (размер (Q), размер (T)), где N - количество совпавших процентных пунктов.Это дает для довольно похожих изображений довольно низкий рейтинг, например, 0,32, даже когда 70 процентных пунктов были сопоставлены с примерно 600 в Q и 200 в T. Я думаю, что 70 - это действительно хороший результат.Я думал об использовании некоторого логарифмического масштабирования, чтобы только действительно низкие числа давали низкие результаты, но, похоже, не могу найти правильное уравнение.С d = log(9*d0+1) я получаю результат 0,59, который довольно хорош, но все же, он как бы разрушает силу SURF.

  2. , используя расстояния в парах: я сделал что-то вроде findК лучше всего подходят и складываются их расстояния.Наименьшее расстояние, похожее на два изображения.Проблема в том, что я не знаю, каковы максимальные и минимальные значения для элемента дескриптора точки интереса, из которого рассчитывается дистанция, поэтому я могу только найти относительно результат (из многих входных данных, которые являются лучшими).Как я уже сказал, я бы хотел, чтобы метрика была точно между 0 и 1. Мне нужно это для сравнения SURF с другими метриками изображения.

Самая большая проблема с этими двумя состоит в том, что исключаютДругой.Один не учитывает количество совпадений, другой - расстояние между матчами.Я заблудился.

РЕДАКТИРОВАТЬ : Для первого из них уравнение log (x * 10 ^ k) / k, где k равно 3 или 4, дает хороший результат, большую частьвремя, мин не хорошо, это может сделать d больше, чем 1 в некоторых редких случаях, без малого результата возвращаются.

1 Ответ

6 голосов
/ 16 июня 2011

Вы можете легко создать метрику, которая является взвешенной суммой обеих метрик. Используйте методы машинного обучения, чтобы выучить соответствующие веса.

То, что вы описываете, тесно связано с областью контентного поиска изображений, которая является очень богатой и разнообразной областью. Погуглите, что даст вам много хитов. Хотя SURF является отличным универсальным детектором функций низкого и среднего уровня, этого далеко не достаточно. SURF и SIFT (из чего был получен SURF), хороши при обнаружении дубликатов или почти дубликатов, но не настолько хороши при захвате сходства восприятия.

Наиболее эффективные системы CBIR обычно используют ансамбль функций, оптимально объединенных с помощью некоторого обучающего набора. Некоторые интересные детекторы, которые можно попробовать, включают GIST (быстрый и дешевый детектор, лучше всего используемый для обнаружения техногенных и природных сред) и Object Bank (сам детектор на основе гистограммы, сделанный из сотен из выходы детектора объекта).

...