Рекурсивно изменять размер изображений из одного дерева каталогов в другое?

4607
davr

У меня есть большое сложное дерево каталогов, полное изображений JPG. Я хотел бы создать второе дерево каталогов, которое точно отражает первое, но изменяет размеры всех изображений до установленного размера (скажем, 2000x1500 или что-то) и качества (возможно, 85%).

Есть ли инструмент, который позволил бы мне легко сделать это на Windows? Я мог бы написать несколько сценариев, чтобы автоматизировать это с помощью bash и image magick, но сначала хочу посмотреть, было ли это уже сделано. Быстрее тоже лучше, так как у меня тысячи изображений. Так что что-то вроде Photoshop, вероятно, не очень хорошее решение, так как для каждого изображения может потребоваться пара секунд.

5
Почему я хочу сделать это: я хочу сделать резервную копию моей коллекции цифровых фотографий онлайн, но сохранение полного разрешения заняло бы слишком много места и времени для загрузки. Я хочу быть в состоянии сделать все это за один раз, а затем использовать что-то простое, чтобы загрузить файлы одновременно. davr 13 лет назад 0
Какой смысл делать резервные копии, если вы не копируете оригиналы? Я понимаю, что это будет легче сделать, но мне кажется, что это побеждает цель ... Shinrai 13 лет назад 1
@Shinrai У меня 52 ГБ файлов изображений с высоким разрешением. Они уже хранятся на диске RAID-1, а также в отдельном внешнем хранилище. Уменьшение размера до 3 мегапикселей более чем достаточно для просмотра или печати событий с разрешением 300 точек на дюйм (с учетом качества фотографий) и разрешением 5 "x7". Я почти никогда не печатаю ничего большего. Загрузка 50 ГБ через домашнее подключение к Интернету займет много времени, а онлайн-хранилище, хотя и дешевое, не является бесплатным. Оперативное резервное копирование - это резервное копирование в худшем случае, так что оно покрывает 98% моих потребностей, и изображения не будут потеряны. davr 13 лет назад 3
Ох, ну ладно. Ну, в этом случае я согласен, что сокращение их имеет смысл. Если у вас есть две резервные копии в двух разных местах, я лично не думаю, что это необходимо, но сейчас я не растерялся. ;) Shinrai 13 лет назад 0

1 ответ на вопрос

9
Siim K

IrfanView имеет хороший встроенный инструмент пакетной обработки. Вы можете достичь именно того, о чем вы просили.

  • Старт Batch Conversion/Rename(нажмите B)
  • Отметьте Use advanced options (for bulk resize...)и нажмите на Advancedкнопку
  • Выберите то, что вам нужно под RESIZEи установите флажок рядом с Create subfolders in destination folder(раздел MISCALLANEOUS)
  • Выберите выходной каталог
  • Отметьте Include subdirectoriesи добавьте входной каталог
  • Start Batch
Похоже, это сработает. К сожалению, у него нет никакой возможности запускать преобразования параллельно, а это значит, что потребуется примерно 4 раза, если бы он использовал преимущества моего четырехъядерного процессора. Но я могу просто запустить его на ночь или что-то в этом роде. davr 13 лет назад 0
И чтобы сохранить существующую структуру каталогов, установите флажок «Создать подпапки в целевой папке» в разделе «Дополнительно». dummzeuch 8 лет назад 0

Похожие вопросы