Как сгруппировать / отсортировать фотографии по схожести?

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

Для понимания приведу простой пример.
Есть фотографии котиков:
5f62fd40c7da6633076143.png
Сортируем их и получаем отсортированных по цвету котиков:
5f62fd546a20a795192380.png
Какие есть программы для этого?
  • Вопрос задан
  • 370 просмотров
Пригласить эксперта
Ответы на вопрос 3
2ord
@2ord
продвинутый чайник
Вы ищете готовый коталогизатор или хотите сами создать?
Если второе, то анализируете изображения:
  1. находите доминантный цвет
    Как в opencv определить доминирующий цвет?
    https://stackoverrun.com/ru/q/7910222
  2. уровень освещенности
    https://opencv-python-tutroals.readthedocs.io/en/l...
  3. получаете описание главного объекта продвинутым алгоритмом
    https://www.pyimagesearch.com/2017/09/11/object-de...

И кластеризуете по полученным характеристикам.
https://api-2d3d-cad.com/ident_by_color_texture/
https://habr.com/ru/post/321216/
Ответ написан
kocherman
@kocherman
Есть простые способы. Например, пакетно сжимаете все картинки до разрешения, скажем, 3х3 или 5х5 пикселей (в зависимости от количества картинок). Потом выписываете числами сначала пиксели центральные, средние и в последнюю очередь - крайние. Далее конвертируете каждый пиксель из RGB в HSL или HSV, записывая значение каждого канала в отдельное число по каждому каналу. В итоге каждой картинке будет соответствовать три длинных числа, по которым можно сортировать картинки, и они будут похожи по цветовым признакам. Картинки, где три числа одинаковые, можно считать похожими дубликатами. Если написал не достаточно толково, пишите комментарий, я могу разжевать алгоритм схематично.

UPD
Еще вспомнил про утилиту для сравнивания изображений, входящую в комплект ImageMagick. Даже в закладках сохранился на неё небольшой гайд. Но, в своё время у меня с ней не заладилось, так как работала слишком медленно а качество предоставляемой магии было не лучше скриптов, которые писал сам. Но, может, все изменилось и стоит попробовать тулзу в действии еще раз...
Ответ написан
@Otrivin
junior full-stack сисадмин
В пакете DeepFaceLab есть батник, соотирующий фото по схожести. Работает, кажется, через xnView. Можете посмотреть
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы