1. Celluloid 패키지 활용 (in ipynb)
설치
pip install celluloid
사용 예시 - ipynb 내부에서 보기
from celluloid import Camera # getting the camera
from IPython.display import HTML
import matplotlib.pyplot as plt
import numpy as np
import os
fig, ax = plt.subplots() # make it bigger
camera = Camera(fig)# the camera gets our figure
for img in os.listdir("NST/epochs"):
img_obj = plt.imread(os.path.join("NST/epochs"), img) # reading
ax.imshow(img_obj) # plotting
camera.snap()
animation = camera.animate()
HTML(animation.to_html5_video())
- 설명
- ax.imshow() 를 통해 이미지를 보여준다음,
- camera.snap을 통해서 해당 plt 이미지를 저장해준다.
- 저장해준 이미지들을 camera.animate()을 통해 애니메이션으로 변환하고,
- (마지막줄)
HTML(animation.to_html5_video())
을통해 ipynb에서 시각화한다.
2. ImageIO 사용 (in ipynb, py)
설치
pip install imageio
사용 예시 - 파일로 저장
import imageio
import cv2
frames = []
for t in time:
image = cv2.imread(f'./img/img_{t}.png')
frames.append(image)
imageio.mimsave('./example.gif', # output gif
frames, # array of input frames
fps = 2.5) # optional: frames per second
- 설명
- frames 라는 리스트에 영상으로 만들 이미지를 추가해준 다음,
- (마지막줄) imageio.mimsave를 통해 gif 파일 생성.
- fps 는 이미지 하나당 보여주는 시간을 의미한다. 짧을 수록 빠르게 넘어감
Reference
728x90
반응형
'프로그래밍 > python' 카테고리의 다른 글
knockknock asyncio 안쓰고 쓰기 (0) | 2025.01.01 |
---|---|
[패키지] pandas-profiling 아나콘다 설치 문제 (0) | 2021.11.16 |
[패키지] LightGBM CUDA(GPU) 버전 설치 (0) | 2021.11.16 |
10950번 A+B -3 with python 코드 (0) | 2018.09.27 |