быстрое пакетное изменение размера изображения

быстрое пакетное изменение размера изображения

ищу и не могу найти идеальный вариант.
мне нужно обработать 100 гигабайт последовательности изображений 4K.

найденныйimagizer2на sourceforge. многопоточный, но не 64-битный (имеет ли значение?).
полагаю, самым быстрым будет использование библиотеки Intel IPP image core lib.

Я работаю на Windows, но если появится какой-нибудь безумно быстрый вариант Linux, я рассмотрю его (тесты производительности?).

включены тесты, которые я провел на тестовой партии из 100 файлов по 5 тыс. (4,3 МБ)

решение1

Отличная статистика - спасибо за ссылки. Возможно, слишком поздно, но вы не упомянули результаты ImageResizer (из Codeplex), предложенные с Batch Picture Resizer выше. (не то же самое, что упомянутое "мусорное ПО") Я начал использовать его после того, как MS перестал обновлять свой Image Resizer. Но, конечно, у него нет потребностей в скорости и объеме - только чистое и быстрое изменение размеров для вложений электронной почты и т. п.

решение2

я используюIrfanПросмотрдля конвертации 1 ГБ файлов tiff в меньшие GIF-файлы каждую ночь. Занимает всего несколько минут.

Пример команды будет выглядеть так (я использую ее для преобразования изображений для моего цифрового фотодисплея)

"C:\Program Files (x86)\IrfanView\i_view32.exe" "C:\Pictures\Best\*.jpg" /resample=(720,540) /aspectratio /convert="C:\Temp\miniDisp\*_rsz.jpg"

Это изменяет размер всех файлов JPG из C:\Picutres\Best\ до 720x540 и сохраняет их как C:\Temp\miniDisp\OrgFilename_rsz.jpg.

Параметры командной строки, которые понимает IrfanView, можно найти в онлайн-справке (см. Индекс - Параметры командной строки) или в Интернете.здесь

решение3

Не уверен, как это будет выглядеть в сравнении с отделом бенчмарков, но вы можете датьImageMagickпопробуйте использовать инструменты "convert" или "mogrify". Похоже, что он хорошо использует 64 бита, количество ядер и т. д.
Все, что я знаю, это то, что он действительно мощный и полнофункциональный. Я могу изменять размер на месте или добавлять опции, такие как фильтры повторной выборки и преобразования типов файлов.

mogrify -format jpg -filter Cubic -resize 20%x20% rgb-?.png

решение4

Parallel можно использовать для ускорения пакетных преобразований с помощью imagemagick.

Уменьшите все *.jpg в каталоге так, чтобы ни высота, ни ширина не превышали 1080 пикселей:

parallel mogrify "{}" -resize 1080x1080 ::: *.jpg

Использование convert для создания отдельных файлов меньшего размера:

parallel convert "{}" -resize 1080x1080 "{.}-small.jpg" ::: *.jpg

Обратите внимание, что это относится к GNU parallel, а не к версии, упакованной в Debian moreutils, которая имеет другой синтаксис и меньше функций. См. страницу man для получения дополнительной информации о parallel.

Связанный контент