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

13

У меня очень большая коллекция изображений в куче вложенных папок.

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

Это позволит мне носить все мои изображения с собой в более низком разрешении на моих портативных устройствах.

Какие-либо предложения для инструмента, который я мог бы запланировать (в идеале я хотел бы, чтобы он обрабатывал каждое изображение только один раз)?

Сэм Шафран
источник
4
какие операционные системы вам интересны?
Роуланд Шоу
@Rowland, я использую как windows, так и linux ... поэтому все, что не относится к mac, должно работать.
Сэм Шафран
Где хранятся ваши фотографии и где вы, вероятно, нуждаетесь в конвертации? Windows или Linux? Это имело бы небольшую разницу. Вы в порядке удаления всех существующих изображений перед созданием новых? Должно ли оно создавать новую структуру папок при дублировании?
Jcolebrand
@drchenstern ... Я бы хотел избежать двойной обработки файла
Сэм Саффрон,
~ Это только из-за желания сократить время на обработку? Я думаю, что использование какой-либо системы на основе Linux будет лучше работать в долгосрочной перспективе из-за действий по управлению изображениями командной строки, которые уже написаны для систем Linux.
Jcolebrand

Ответы:

12

ImageMagick будет очевидной возможностью для самого масштабирования. Планирование поиска новых изображений и создание их уменьшенной копии не встроены в него. Большинство ОС имеют возможность планирования, которая может запустить его, хотя. Как программист, я мог бы рассмотреть одну вещь: использовать make-файл для запуска преобразования только тогда, когда цель не существует. Большинство нормальных людей считают это действительно странным способом сделать что-то ...

Джерри Гроб
источник
У меня был соблазн написать сценарий ruby ​​для этого ... но если что-то уже существует, я бы предпочел просто использовать это
Сэм Саффрон
@ Сэм Шафран ~ Есть ли причина для рубинового сценария? Будет ли это размещаться на сайте? Такую вещь лучше всего использовать через cron, я думаю ...
jcolebrand
8

В Windows Irfanview - это еще одна бесплатная программа для просмотра изображений, которая имеет хороший режим изменения размера / повторной выборки.

От качественного POV, вы должны быть заинтересованы в алгоритмах передискретизации, которые использует выбранный вами инструмент. Irfanview обеспечивает контроль и выбор целого ряда высококачественных алгоритмов передискретизации, а более поздние версии также обеспечивают контроль за резкостью ваших повторно дискретизированных изображений.

Резкость важна, так как изменение размеров изображений, чтобы сделать их меньше, делает изображения более мягкими.

Конор Бойд
источник
Для ручного использования, Irfanview пакетных пород на окнах, и вы можете использовать gThumb на Linux.
Xeoncross
5

FastStone бесплатен и прост, и может немного больше, чем просто изменить размер.

http://www.faststone.org/


источник
+1 за FastStone, отличный просмотрщик изображений и очень полное изменение размера изображения.
Decasteljau
4

XnView , вероятно, является ответом, если вы используете планировщик или регулярно запускаете его вручную. Лично я использую свой собственный сценарий, который запускает nconvert, чтобы сделать это точно. Nconvert поставляется с XnView, а также доступен отдельно.

XnView чрезвычайно мощный для пакетного преобразования, он даже может применять преобразования во время процесса. Что наиболее важно после настройки преобразования между определенными каталогами, вы можете попросить его вывести пакетный файл, который выполняет то же преобразование. Это очень удобно, если вы хотите добавить это в планировщик задач или задание cron.

Итай
источник
2

Picasa позволит вам изменять размер ваших фотографий, и это бесплатно . Вы можете выбрать группу изображений для экспорта, а затем выбрать нужные размеры и местоположение. Затем он сохранит копию всех изображений, выбранных вами, в новом размере. Местоположение может быть другой папкой или даже сетью.

http://picasa.google.com/

Я не уверен, что он предлагает планирование, но накладные расходы на запуск вышеуказанного процесса очень малы - это всего лишь несколько кликов.

Он имеет некоторые другие замечательные функции, которые вы можете найти полезными, безусловно, стоит проверить.

Уинстон Смит
источник
2

Я решал ту же самую проблему (имея копию моих изображений для ноутбука в низком разрешении) и написал скрипт на Python под названием thumbtree . Это в основном создает копию каталога с уменьшенной версией всех файлов. Он использует ImageMagick для изменения размера и проверяет временные метки для масштабирования только тех файлов, которые были изменены с момента создания копии в низком разрешении.

че
источник
1

Я обычно использую ImageMagick или GraphicsMagick (меньше возможностей, но быстрее, результат не всегда одинаковый). Linux способ спланировать эту обработку - написать скрипт и поместить его в crontab. Чтобы сократить время запуска, вы можете выбрать только новые фотографии с find. Если вам нужна помощь в написании такого сценария, пожалуйста, спросите. Я могу помочь с этим.

Как пользователь Linux, я также использую Nautilus Image Converter . В Ubuntu / Debian вы можете установить его с nautilus-image-converterпакетом. Он добавляет опцию изменения размера в контекстном меню файлового менеджера. Я предполагаю, что он использует ImageMagick внутри.

Некоторые другие параметры Linux:

  • Gimp Batch Processor (плагин для массовой обработки в Gimp, имеет графический интерфейс пользователя, часть gimp-plugin-registryпакета в Ubuntu) (см. Также мини-учебник )
  • Пакетная очередь в digiKam (довольно продвинутый инструмент для массовой обработки с графическим интерфейсом, это хорошо, если вы уже являетесь пользователем digiKam)
  • Gimp Batch Mode (чрезвычайно гибкий, но требует некоторого программирования на схеме; подходит для обработки по расписанию)
sastanin
источник