SIFT не находит никаких признаков в эталонном изображении в OpenCV - PullRequest
6 голосов
/ 26 июля 2011

У меня есть изображение целевого логотипа, которое я пытаюсь использовать для поиска целевых логотипов на других изображениях. В настоящее время я использую два разных алгоритма обнаружения, чтобы помочь мне обнаружить любые логотипы на изображении. Первое обнаружение, которое я использую, основано на гистограмме, в которой я ищу изображение для общей области на экране, где цвета очень похожи. Оттуда я запускаю SIFT, чтобы получить нужный объект. Это работает для большинства логотипов, однако логотип Target, который у меня есть, даже не обнаруживается, и ключевые точки в логотипе.

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

Ниже приведено изображение, которое не захватывает SIFT:

enter image description here

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

EDIT Я устал использовать идею Жюльена для сопоставления с шаблоном и разных масштабов и поворотов модели, но все же получил мало результатов. Я включил изображение, с которым я пытаюсь проверить.

Image of the logo

Ответы [ 3 ]

9 голосов
/ 26 июля 2011

На вашем изображении нет ключевой точки ...

Почему?

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

Что вы можете попробовать, так это метод сопоставления с шаблоном, если вы ищете этот логотип без больших изменений (вращение, перевод, шум)и т.д.) простая корреляция является самой легкой.

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

enter image description here

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

Julien,

1 голос
/ 27 июля 2011

Существует еще одна причина, по которой этот логотип проблематичен для сопоставления функций. Большинство функций работают довольно плохо с искусственными изображениями, которые не имеют гладкости. Все производные имеют размер ровно 1 пиксель, а функции детектора зависят от производных. Вы должны немного сгладить изображение. Разумеется, для этого конкретного логотипа это не поможет из-за высокой симметрии. Вы можете использовать грубое преобразование, чтобы обнаружить круги внутри кругов. Это даст вам лучшие результаты по сравнению с сопоставлением с шаблоном.

0 голосов
/ 26 августа 2017
...