У меня есть каталог изображений, фотографий, веб-графики, логотипов и т.д.... все они вытащены из Интернета. Существуют файлы .jpg,.gif и .png.
Я хотел бы извлечь изображения, которые имеют реальные вещи (сохранить фотографии и удалить графику). Я не пытаюсь получить фактические/оригинальные фотографии, просто изображения реальной жизни и компьютерной графики (я не уверен, как сказать это более четко). Почти все эти изображения были обработаны, и информация exif будет недоступна.
Допустим большой (даже очень большой) погрешность.
Я уже:
- удаленные изображения с низким количеством цветов с помощью
imagecolorstotal()
- удаленные изображения, которые имеют большие отношения высоты к ширине, и наоборот (соотношение 3+ работает потрясающе хорошо).
- удаленные изображения, которые меньше определенного размера (50-75 пикселей хороши)
Я думаю об удалении изображений с значениями гистограммы, сосредоточенными вокруг определенных цветов, а не гладкой или распределенной кривой. Я еще не пытался этого сделать.
Как еще я могу улучшить эту фильтрацию изображений для извлечения (в основном) реальных фотографий? Я бы предпочел использовать PHP, но это не требуется.
ОБНОВЛЕНИЕ: Оказывается, что для моего приложения первые три вещи, которые я уже пробовал, были твердым 80% -ным решением. Дальнейшая фильтрация может быть выполнена с использованием некоторых из приведенных ниже ответов.