Простое быстрое надежное сравнение изображений

У меня есть задача найти изображение и "размыть-сравнить". Я не мог понять, какие методы я должен использовать.

Настройка такова: коробка, скажем, 100x100 либо в основном заполнена объектом, либо нет. Для человеческого глаза этот объект всегда почти один и тот же, но может измениться за счет размытия, небольшого изменения масштаба, трехмерного наклона, смещения в сторону или вверх/вниз на один или два пикселя или других очень мелких графических изменений.

Что такое простой, быстрый и надежный способ проверить, есть ли преобразованный объект или нет? Было бы неплохо указать на пакеты Python, а также на код.


person Konsta    schedule 16.06.2012    source источник
comment
Это то, что нужно делать автоматически или только для фиксированного количества изображений? Если это последнее, я предлагаю использовать Amazon Mechanical Turk, потому что это непростая проблема.   -  person Simeon Visser    schedule 16.06.2012
comment
Нет, это нужно делать повторно, МТ не вариант. Может быть, есть достаточно надежный быстрый метод, не обязательно с точностью >97%. Высшая математика не будет проблемой, будет длинный сложный код;) Может быть, что-то вроде этого (не обязательно то, что я имел в виду под высшей математикой): простой cv, хотя граница среднего цвета не кажется очень надежной, или это так?   -  person Konsta    schedule 16.06.2012
comment
Пустая коробка всегда одна и та же? и пытаемся ли мы отличить этот объект от других объектов?   -  person fraxel    schedule 16.06.2012


Ответы (1)


Не уверен, что я полностью понимаю ваш вопрос, но я попробую.

Предполагая:

  1. мы просто хотим знать, есть ли some object в коробке.
  2. пустая коробка всегда одна и та же
  3. идеальное выравнивание коробки и т. д.

Ты можешь это сделать:

  1. вычтите query image из empty box image.
  2. суммировать все пиксели
  3. если значение равно нулю, изображения идентичны, поэтому нет изменений, поэтому нет объекта.

Очевидно, что на самом деле есть некоторая разница между рамочными частями двух изображений, но ключевой момент заключается в том, что часть non-object изображений максимально похожа на оба изображения, если это так, то мы можем использовать описанный выше метод, но с пороговым тестом в качестве 3-го шага. При условии, что порог установлен разумно, он должен дать достойный прогноз того, пуст ли ящик или нет.

person fraxel    schedule 16.06.2012
comment
Попробую проверить разницу с порогом, может хватит. Спасибо. - person Konsta; 17.06.2012
comment
Является ли это более надежным для HSV, а не для данных RGB? - person Konsta; 17.06.2012