Обрезать последовательность изображений 10000x10000 к видео

У меня необычно большая последовательность изображений PNG (около 10000x10000, каждый файл около 50 МБ). Я хочу обрезать область этого (приблизительно 3000x3000) и закодировать это в видео. Формат не важен, если он имеет приличное качество и хорошо сжат, и, очевидно, поддерживает это разрешение.

Я попробовал демо After Effect, но, похоже, он плохо справляется с таким разрешением на моем компьютере. Я открыт для любого программного обеспечения, лучше если бесплатно. Командная строка в порядке.

1 ответ

Решение

Вы можете сделать пакетную обрезку / редактирование изображений с помощью ImageMagick. Он включен почти в каждый дистрибутив Linux и имеет множество вариантов для вас. Также есть версии для других платформ. Ниже приведены некоторые примеры, которые могут помочь вам

Чтобы просто изменить размеры всех изображений до 3000x3000, вы можете использовать

mogrify -resize 3000x3000 *.png

Это перезапишет ваши файлы. Если вы хотите записать результаты в другую папку, используйте

mogrify -resize 3000x3000 *.png -path /path/to/output/folder

Если mogrify слишком медленный или занимает слишком много памяти, вы можете использовать этот способ

for f in *.png
do
    convert $f'[3000x3000]' $outputdir/$f.resized.png
done

Если вы также хотите преобразовать их в другой формат, например, jpg, для снижения нагрузки на видеокодер позже:

mogrify -resize 3000x3000 -format jpg *.png

Если вы просто хотите обрезать область 3000x3000 со смещения 1000x2000, используйте эту

mogrify -crop 3000x3000+1000+2000 *.png

Ведь просто закодируйте изображения с помощью ffmpeg

Другие вопросы по тегам