Как я могу создать анимированный GIF в Ubuntu с помощью ряда изображений?

У меня есть ряд приблизительно 500 изображений JPEG. Коллективный размер набора составляет приблизительно 60 МБ, и каждое изображение имеет размеры 480 x 270. Я хочу преобразовать эти изображения в анимированный GIF.

Я попытался преобразовать эти изображения в анимированный GIF следующим образом в моей i7 системе с 16 ГБ RAM:

export MAGICK_THREAD_LIMIT=1
convert -delay 5 -loop 0 -layers optimize -limit memory 64 *.jpg output.gif

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

Так, каков был бы хороший способ сделать анимированный GIF на Ubuntu?

1
задан 8 November 2015 в 12:14

1 ответ

Следующая процедура препятствует тому, чтобы ImageMagick потреблял чрезмерные системные ресурсы. Это было проверено с ImageMagick 6.8.9-9 на Ubuntu 15.04. Чтобы проиллюстрировать процедуру, я использую пример преобразования видео к оживленному GIF.

Созданный ImageMagick, таким образом, что это не потребляет чрезмерные системные ресурсы:

export MAGICK_MEMORY_LIMIT=1024
export MAGICK_MAP_LIMIT=1024
export MAGICK_AREA_LIMIT=4096
export MAGICK_FILES_LIMIT=1024
export MAGICK_THREAD_LIMIT=1
export MAGICK_TMPDIR=/home/user/tmp

переменная окружения MAGICK_THREAD_LIMIT пределы количество нитей, используемых ImageMagick (то, когда это построено с OpenMP, позволило). Переменная окружения MAGICK_TMPDIR является путем к справочнику, в котором ImageMagick может хранить временные файлы. Это особенно полезно для изображений структуры относительно большого размера, потому что это избегает чрезмерного использования памяти RAM.

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

filename1=2015-11-09T1300Z.mp4
filename2=2015-11-09T1300Z.gif
directoryName1="tmp_images"

Новообращенный видео ко многим изображениям структуры (устанавливающий сроки как соответствующие; в этом примере, от 0 секунд до 30 секунд).

mplayer -ao null -ss 0:00:00 -endpos 30 "${filename1}" -vo jpeg:outdir="${directoryName1}":quality=100

, Если разумный для ограничений размера файла продукции, уменьшите размер видео структур (в этом примере на 50%).

mogrify -resize 50% "${directoryName1}"/*.jpg

Использование ImageMagick, чтобы преобразовать изображения структуры в оживленный GIF.

convert -delay 5 -loop 0 -layers optimize -limit memory 64 "${directoryName1}"/*.jpg "${filename2}"
0
ответ дан 30 September 2019 в 05:22

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

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