Коллеги, хочу показать проект, над которым сейчас работаю, и попросить помощи именно у людей, которые регулярно имеют дело с большими фотоархивами.
Я сделал сервис Renvumi для поиска дублей, похожих фотографий и разбора больших коллекций снимков:
https://renvumi.ru/
Изначально задача была довольно простой — найти дубликаты фотографий.
Но быстро выяснилось, что обычного сравнения файлов недостаточно.
В реальном архиве одна фотография может существовать сразу в нескольких вариантах:
— оригинал;
— уменьшенная копия;
— JPEG после обработки;
— экспорт из редактора;
— версия, прошедшая через мессенджер;
— файл с другим именем или разрешением.
Формально это разные файлы, хотя визуально перед нами практически один снимок.
Поэтому сервис постепенно вырос в систему анализа фотоархива.
Что сейчас умеет Renvumi
Поиск похожих фотографий
Сервис пытается находить изображения, которые визуально похожи друг на друга, даже если сами файлы отличаются.
Это особенно интересно проверить на старых архивах, которые несколько раз копировались между дисками и компьютерами.
Работа с сериями
Если одна сцена снята много раз подряд, похожие кадры группируются.
На мой взгляд, именно здесь автоматизация особенно полезна. После съёмки легко получить десятки практически одинаковых кадров, а вручную сравнивать несколько тысяч фотографий довольно утомительно.
«Лучшие в серии»
Есть функция, которая помогает быстрее выбрать наиболее удачные фотографии среди похожих.
При этом я специально не хочу делать полностью автоматическое «эта фотография хорошая, эту удалить».
Фотография слишком субъективна.
Система должна помогать с отбором, но окончательное решение всегда остаётся за человеком.
Поиск людей
Сервис обнаруживает лица и пытается объединять фотографии одного человека.
Для семейных архивов это позволяет быстрее находить нужные снимки, а для фотографа потенциально может быть полезно при работе с большими съёмками.
Альбомы и коллекции
Найденные фотографии можно дальше организовывать внутри сервиса: создавать альбомы и коллекции, перемещать снимки, массово выделять фотографии и работать с корзиной.
Есть также возможность опубликовать отдельную фотографию и получить публичную ссылку на неё.
Зачем пишу об этом здесь
Сейчас мне гораздо интереснее не количество регистраций, а проверка сервиса на реальных архивах фотографов.
На собственном наборе фотографий можно долго оптимизировать алгоритмы и при этом не замечать очевидных проблем.
А потом появляется другой архив — и оказывается, что там:
— серии по 30–50 кадров;
— JPEG и RAW лежат вместе;
— фотографии экспортировались из разных редакторов;
— один архив собирался 10–15 лет;
— одни и те же файлы находятся на нескольких дисках;
— тысячи кадров сняты практически в одинаковых условиях.
Именно такие случаи мне сейчас наиболее интересны.
Поэтому ищу желающих протестировать
Если у кого-то есть большой фотоархив и желание поэкспериментировать — буду благодарен за обратную связь.
Особенно хотелось бы узнать:
— правильно ли находятся похожие фотографии;
— хорошо ли определяются серии;
— какие фотографии сервис ошибочно считает похожими;
— удобно ли сравнивать найденные кадры;
— что работает слишком медленно;
— каких функций фотографу явно не хватает;
— насколько вообще подобный инструмент полезен в реальной работе.
Мне интересна в первую очередь критика.
Если что-то работает плохо — лучше написать об этом прямо. Такие случаи для разработки намного ценнее, чем сообщение «всё нормально».
Немного технической части
Если кому-то интересно, внутри используются Python, FastAPI, PostgreSQL, Redis, Qdrant, OpenCV, Celery и модели компьютерного зрения. Всё собрано в Docker.
Но задача проекта — чтобы пользователю эта техническая часть вообще не была заметна:
загрузил фотографии → сервис их проанализировал → получил группы дублей, похожих кадров, серий и людей.
Сейчас проект продолжает активно развиваться.
Попробовать можно здесь:
https://renvumi.ru/
Если кто-нибудь с Foto.ru решит проверить Renvumi на своём архиве, буду особенно благодарен за описание странных или ошибочных результатов. Можно даже написать, на каком типе фотографий алгоритм «сломался» — портреты, спорт, репортаж, пейзажи, длинные серии и т. д.
Мне как раз сейчас нужны такие реальные тесты.
Сделал сервис для поиска дублей и похожих фото — нужны тестировщики с большими архивами
Всего 7 сообщ.
|
Показаны 1 - 7
Сделал сервис для поиска дублей и похожих фото — нужны тестировщики с большими архивами
RE[Евгений]:
Вряд ли кто-то будет пересылать весь архив по интернету.
RE[Дмитрий Ткаченко]:
Да, если речь про архив на сотни гигабайт, постоянно гонять его через интернет это сомнительный сценарий, тут согласен.
Но Renvumi не обязательно использовать именно так. Для поиска дублей, похожих кадров и проверки серий можно загрузить отдельную папку или часть архива.
При этом у веб-формата есть важное преимущество: после обработки можно выбрать отдельную фотографию, опубликовать её и просто отправить человеку ссылку. Не нужно отдельно загружать этот кадр в другой сервис или открывать доступ ко всему альбому.
Для очень больших архивов логичным развитием вижу гибридный вариант: тяжёлый анализ делать локально, а веб использовать для просмотра, организации и публикации выбранных фотографий.
Так что замечание правильное, универсального варианта тут нет, и именно такие реальные сценарии сейчас особенно интересно собирать.
Но Renvumi не обязательно использовать именно так. Для поиска дублей, похожих кадров и проверки серий можно загрузить отдельную папку или часть архива.
При этом у веб-формата есть важное преимущество: после обработки можно выбрать отдельную фотографию, опубликовать её и просто отправить человеку ссылку. Не нужно отдельно загружать этот кадр в другой сервис или открывать доступ ко всему альбому.
Для очень больших архивов логичным развитием вижу гибридный вариант: тяжёлый анализ делать локально, а веб использовать для просмотра, организации и публикации выбранных фотографий.
Так что замечание правильное, универсального варианта тут нет, и именно такие реальные сценарии сейчас особенно интересно собирать.
RE[Евгений]:
от: Евгений
такие реальные сценарии сейчас особенно интересно собирать.
А как насчет поиска дублей на сменных носителях или разных, физически удалённых машинах?
RE[Дмитрий Ткаченко]:
Сейчас Renvumi работает через загрузку фотографий в сервис, поэтому для поиска дублей на разных носителях или удалённых компьютерах нужно загрузить данные с каждого источника.
Но сам сценарий интересный. По сути, для таких случаев напрашивается локальный агент, который ставится на каждый компьютер или NAS, индексирует фотографии на месте и отправляет в Renvumi не сами файлы, а только признаки, хэши и служебную информацию. Тогда можно было бы искать дубли между разными физическими машинами и внешними дисками без полной передачи архива через интернет.
Для больших распределённых архивов такой подход выглядит логичнее обычной загрузки. Пока этого в текущей версии нет, но как направление развития идея очень хорошая.
Если будет желание, можно попробовать Renvumi на небольшой выборке фотографий и посмотреть, насколько хорошо он находит дубли и похожие кадры в вашем случае.
Но сам сценарий интересный. По сути, для таких случаев напрашивается локальный агент, который ставится на каждый компьютер или NAS, индексирует фотографии на месте и отправляет в Renvumi не сами файлы, а только признаки, хэши и служебную информацию. Тогда можно было бы искать дубли между разными физическими машинами и внешними дисками без полной передачи архива через интернет.
Для больших распределённых архивов такой подход выглядит логичнее обычной загрузки. Пока этого в текущей версии нет, но как направление развития идея очень хорошая.
Если будет желание, можно попробовать Renvumi на небольшой выборке фотографий и посмотреть, насколько хорошо он находит дубли и похожие кадры в вашем случае.
RE[Евгений]:
Еще один аспект, который может быть востребованным - поиск файлов с одинаковым именем, но разной картинкой.
RE[Дмитрий Ткаченко]:
Да, это как раз появилось в Renvumi 0.13.66.
Теперь сервис отдельно показывает файлы с одинаковым именем, но разным содержимым. Например, два IMG_0001.jpg, которые на самом деле являются разными фотографиями.
Полные дубли при этом идут отдельно. Спасибо за идею.
Теперь сервис отдельно показывает файлы с одинаковым именем, но разным содержимым. Например, два IMG_0001.jpg, которые на самом деле являются разными фотографиями.
Полные дубли при этом идут отдельно. Спасибо за идею.