Скажем, у меня есть большое изображение 800x5000; Как бы я разделить это на 5 отдельных изображений с размерами 800x1000 с помощью командной строки?
19
Скажем, у меня есть большое изображение 800x5000; Как бы я разделить это на 5 отдельных изображений с размерами 800x1000 с помощью командной строки?
Ответы:
Решил это с помощью convert -crop geometry + repage:
источник
ls -1 *.png | sed 's,.*,& &,' | xargs -n 2 convert -crop 100%x20% +repage
Использование ImageMagick:
Будет ли создать последовательность файлов с именем
cropped_1.png
,cropped_2.png
и так далее.Ссылки
источник
convert -crop geometry +repage
. Например:convert -crop 100%x20% +repage image.png image.png
.+repage
соображения : форматы, поддерживающие смещение изображения и т. д.ImageMagick обрушился бы на меня, потому что изображение было слишком большим для его обработки, поэтому мне пришлось прибегнуть к другим методам.
В итоге я использовал библиотеку изображений Python.
Вот быстрый и грязный ответ на вопрос ОП:
Приведенный выше код имеет окончательные размеры, жестко запрограммированные, но его можно легко преобразовать в собственный скрипт полного удара со всеми параметризованными входами. Если когда-нибудь понадобится такая вещь.
источник