2016-12-30 5 views
0

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

Первоначально Я думал, что это будет простое применение некоторого алгоритма машинного обучения/сравнения изображений. Тем не менее, использование сопоставления ключевых точек иногда не срабатывает, поскольку более заметный объект сопоставляется с другим изображением из списка или аналогичным.

Я не думаю, что на самом деле это требует какого-либо ML, так как изображения идентичны, и у меня очень маленький набор (около 500 изображений), так же есть ли алгоритмы сравнения изображений, которые могут корректно обрабатывать мое дело? Если нет, то какую предварительную обработку я мог бы сделать, чтобы повысить точность?

+0

Некоторые примеры изображений, может помочь. –

+0

@MarkSetchell Вы правы. Я добавлю некоторые, когда вернусь на свою рабочую станцию. Шкала –

ответ

1

Если вы знаете, что изображение точно такое же (без изменения позы, ориентации, масштаба и т. Д.), Как у вас есть, и только фон отличается от того, что я предлагаю вам использовать простой шаблон.

Итак, первое, что вам нужно сделать, это извлечь небольшое изображение с белого фона. Это простой шаг, просто выберите все пиксели на изображении, которые отличаются от 255 (или соответствующее фоновое значение). Это считается «Шаблон».

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

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

Для образца кода и дальнейшего объяснения вы можете посмотреть на http://docs.opencv.org/2.4/doc/tutorials/imgproc/histograms/template_matching/template_matching.html

+0

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

+0

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

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

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