Аналогичное ПО для поиска изображений (например, TinEye) - PullRequest
3 голосов
/ 13 сентября 2010

На одном из наших сайтов сообщества мы разрешаем пользователям загружать изображения. Эти изображения одобрены или отклонены нашими модераторами.

Чтобы ограничить работу, необходимую нашим администраторам, мы хотим «зарегистрировать» каждое изображение, которое отклонено в какую-либо базу данных, и выполнить поиск в этой базе данных перед отправкой изображения на утверждение. Если подобное изображение уже было отклонено, загруженное изображение не будет отправлено на утверждение.

Конечно, мы можем просто записывать такие вещи, как имя файла, размер и MD5 изображения, для сходства, но, безусловно, мы могли бы найти по-разному обрезанные или измененные изображения.

TinEye.com предоставляет аналогичную функциональность.

Знаете ли вы какое-либо программное обеспечение с открытым исходным кодом, способное на это? У вас есть другие идеи?

Спасибо!

Ответы [ 3 ]

2 голосов
/ 13 сентября 2010

Вы можете создать список из «похожих изображений», если им не гарантировано 100% сходство.Сходство может быть рассчитано с учетом отпечатка пальца изображения (как сказал Виннер, вы можете масштабировать его до стандартного размера и построить из него контрольную сумму).Также можно использовать «средний» цвет и «вариацию» цвета.

Исходя из этого, вы можете отобразить список "похожих изображений" (кликабельные пальцы) для администратора, отсортированные в порядке "наиболее вероятно, чтобы быть похожим"

Вы также можете посмотреть на изображение:: Сравнить http://linux.softpedia.com/get/Programming/Widgets/Perl-Modules/Image-Compare-43727.shtml и jpegDiff http://www.marengo -ltd.com / open_source / index.php

2 голосов
/ 13 сентября 2010

Для обнаружения сжатых изображений с измененным размером и потерями вы можете изменить размер изображения до некоторого стандартного размера (например, 40x40 пикселей), а затем вычесть известное изображение из нового изображения и сравнить расстояние до порога.

К сожалению, это не работает с вращением или обрезкой. В этом случае вам нужно извлечь масштабируемые инвариантные элементы изображения.

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

0 голосов
/ 28 января 2011

Я разработал сервис, похожий на TinEYE для частных коллекций изображений.В настоящее время он проходит альфа-тестирование, но отлично работает с 50 000 изображений моих клиентов ... Вы даже можете распознать напечатанные изображения в электронных документах:)

Попробуйте это на http://example.askbubo.com (только поиск моих клиентов'images)

На http://askbubo.com/ вы можете прочитать больше.Также не стесняйтесь обращаться ко мне напрямую по адресу: hajo (at) spratpix (dot) com.

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

...