Python3利用Pillow對GIF圖片按幀分離及對多個圖片進行按序拼接

先用PIP INSTALL Pillow

從GIF中分離各個幀

from PIL import Image

filepath='33e3d14fb67a44f4ad1378149fff1d9a.gif'
im=Image.open(filepath)#打開一個序列文件時,PIL庫自動加載第一幀
im.save(str(im.tell())+'.png') #保存第一幀到當前目錄下

try:
    while(1):
        im.seek(im.tell()+1)#向下一幀移動
        im.save(str(im.tell())+'.png')#保存下一幀
except EOFError:
    pass

創建一個空白新圖像,將各個圖片按照順序依次粘貼到新圖片上

from PIL import Image

new_im = Image.new('RGBA',(2*201,600)) #創建寬度爲402(201張寬爲2的圖片),高度爲600的空白新照片
im_list=[]
for i in range(0,201):
    im_list.append(Image.open(str(i)+'.png'))

width=0
for im in im_list:
    new_im.paste(im,(width,0,width+2,600))#將各個圖片對象im粘貼到新圖片上,圖片的左上角和右下角座標分別爲width,2,width+2,600
    width=width+2
new_im.save('new_im.png')#保存成新文件
new_im.show()#圖片展示

參考資料:

https://blog.csdn.net/CliffordR/article/details/100181327

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章