У меня есть 2 папки, в каждой из которых более 5000 фотографий:
- Папка 1:исходные файлы в хорошем качестве, но с понятными человеку именами (например
saigon_motorcycle_traffic.jpg
, ) - Папка 2:те же файлы в очень плохом качестве (ширина 450 пикселей), но с чистыми идентификаторами, которые соответствуют базе данных (например
562634.jpg
, ).
Цель — сопоставить изображения высокого разрешения с идентификаторами базы данных.
Мой вопрос:Какой самый быстрый способ переименовать версию с высоким разрешением saigon_motorcycle_traffic.jpg
в ее аналог с низким разрешением 562634.jpg
?
Я перепробовал кучу программ (например,Очиститель дубликатов фотографий,VisiPics, XnView, DupliFinder, ...), все они нашли дубликаты, но ни один из них не предложил надлежащего способа такого переименования или подходящей функции экспорта.
Редактировать: Я не пробовал никаких скриптов (как отмечено в комментариях), так как я не знаю ни одного и не нашел ни одного. Если вы что-то знаете, пожалуйста, дайте мне знать.
Некоторые вещи не сработают: сопоставление размеров изображения не сработает (большинство изображений имеют одинаковые размеры), сопоставление даты создания не сработает (это все запутано), а сделать это вручную не сработает, так как я хочу сохранить свое психическое здоровье ;-)
решение1
В итоге я написал PHP-процедуру (полный код выкладывать не буду, так как это очень сырое решение), которая и сработала.
С использованиемфазерМне удалось перебрать все файлы изображений и найти предполагаемые(!) дубликаты: каждое изображение преобразуется в небольшой хэш (на основе версии изображения 8x8). Затем эти хэши можно сравнивать.
Две вещи, которые следует иметь в виду:
- Поскольку это вложенный цикл, важно сначала получить все хеши и кэшировать их перед выполнением фактического сравнения. В противном случае это займет вечность.
- подход НЕ даёт идеальных результатов. У меня была небольшая частота ошибок в первом запуске. Так что всё ещё нужно было сделать некоторую проверку ошибок.
решение2
Похоже, у вас был неприятный опыт с программой для очистки дубликатов фотографий. Вы не рассматривали возможность использованияфиксатор дубликатов фотографийкоторый не только находит дубликаты, но и предлагает функции для переименования и экспорта ваших фотографий? Эти типы инструментов могут быть более всеобъемлющими и обеспечивать лучший общий опыт. Вы можете захотеть исследовать и попробовать несколько разных вариантов, чтобы найти лучший для ваших нужд.