方法一(利用imageio):
(验证可用)
import imageio
import os
import os.path as osp
imgpath="./picture"
frames=[]
for idx in sorted(os.listdir(imgpath)):
img = osp.join(imgpath,idx)
frames.append(imageio.imread(img))
imageio.mimsave("pic.gif",frames,'GIF',duration=0.1)
#方法二(利用wand):
from wand.image import Image
with Image() as wand:
# Add new frames into sequance
with Image(filename='./picture/1646723304969.png') as one:
wand.sequence.append(one)
with Image(filename='./picture/1646723305416.png') as two:
wand.sequence.append(two)
with Image(filename='./picture/1646723311273.png') as three:
wand.sequence.append(three)
# Create progressive delay for each frame
for cursor in range(3):
with wand.sequence[cursor] as frame:
frame.delay = 10 * (cursor + 1)
# Set layer type
wand.type = 'optimize'
wand.save(filename='animated.gif')