토막코딩/Python

Python에서 `imageio`로 이미지 시퀀스를 GIF로 만들기

컴곰 2023. 9. 26. 21:56

Python에서 imageio로 이미지 시퀀스를 GIF로 만들기


여러 개의 이미지를 하나의 GIF로 결합하는 것은 시각적으로 동적인 콘텐츠를 제공하는 좋은 방법입니다. Python에서는 imageio 라이브러리를 활용하여 이미지 시퀀스를 GIF로 변환하는 것이 간단합니다.

imageio 설치:

먼저, imageio를 설치해야 합니다:

pip install imageio

이미지 시퀀스를 GIF로 변환:

import imageio

# 이미지 파일 리스트
filenames = ['image1.jpg', 'image2.jpg', 'image3.jpg']

# 이미지들을 읽기
images = [imageio.imread(filename) for filename in filenames]

# GIF로 저장
imageio.mimsave('output.gif', images, duration=1)  # duration은 각 이미지가 보여지는 시간(초)입니다.

GIF의 프레임 간 지연 조절:

duration 파라미터를 조절하여 각 프레임 간의 지연 시간을 조절할 수 있습니다. 예를 들어, 각 이미지마다 다른 지연 시간을 원한다면:

durations = [0.5, 1.0, 2.0]  # 각 이미지별 지연 시간
imageio.mimsave('output.gif', images, duration=durations)

주의사항:

  • 사용하는 모든 이미지는 동일한 크기를 가져야 합니다.
  • 큰 이미지나 많은 수의 이미지를 사용할 때는 결과 GIF의 크기가 커질 수 있으므로, 파일 크기에 주의해야 합니다.

결론:

imageio 라이브러리는 Python에서 이미지 시퀀스를 GIF로 쉽게 변환할 수 있는 훌륭한 도구입니다. 시각적인 효과나 동적인 콘텐츠 제작에 유용하게 사용될 수 있습니다.