Как визуализировать ключевые точки SIFT - PullRequest
2 голосов
/ 17 мая 2011

У меня есть много клавиш SIFT (некоторые 128-мерные векторы), учитывая ключевые точки SIFT, я хочу получить изображение визуализации (как два крошечных изображения справа, как можно Я делаю это? Мне нужны сервральные строки кода MATLAB, чтобы достичь этого, если кто-нибудь может сделать мне одолжение? большое спасибо.

Ответы [ 2 ]

1 голос
/ 07 июня 2011

Для визуализации соответствующих точек SIFT на двух изображениях вы можете сделать это, как в Демо SIFT Дэвида Лоу в match.m Проверьте порцию после

% Показать фигуру с линиями, соединяющими принятые совпадения.

Надеюсь, это поможет.

1 голос
/ 21 мая 2011

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

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

Если у вас нет доступа к изображениям DoG, будет немного больше работы. Вам нужно будет самостоятельно рассчитать разность гауссовского изображения, учитывая информацию о ключевой точке. Если шкала вашей ключевой точки хранится в sigma и у вас есть vlfeat (www.vlfeat.org), вы сможете рассчитать ее (приблизительно) следующим образом:

i = imread(any one of your images)
g1 = vl_imsmooth(i, 0.9 * sigma);
g2 = vl_imsmooth(i, 1.1 * sigma);
DoG = g2 - g1;

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

Я не уверен, что это на самом деле эти изображения, но это мое лучшее предположение.

...