1. 程式人生 > >女朋友發了一個化妝速成的視訊給我!我用Python實現了倒放!嘿嘿

女朋友發了一個化妝速成的視訊給我!我用Python實現了倒放!嘿嘿

現在的各種動圖層出不窮,深受大家喜歡,今天給大家介紹一個可以把gif動圖倒放的python程式,先來看下效果。

女朋友這裡就不貼出來給大家看了,萬一你們都喜歡我女朋友了咋辦!還是得藏好!就給一個成功的例子給大家kanyix

 

女朋友發了一個化妝速成的視訊給我!我用Python實現了倒放!嘿嘿

 

 

女朋友發了一個化妝速成的視訊給我!我用Python實現了倒放!嘿嘿

 

 

 

gif動圖簡單理解就是由一組若干張圖片按照一定的順序迴圈播放,如果我們能把一張gif動圖分解成若干張圖,然後再把這若干張圖倒序排列,不就可以實現了gif動圖倒放了,沒錯在python中還真就有這麼個第三方庫ImageSequence,我們先來看下完成的程式碼實現。

from PIL import Image, ImageSequence
im = Image.open(r'./zr651.gif') #注意把gif動圖放在該程式的相同目錄下
sequence = []
for f in ImageSequence.Iterator(im):
 sequence.append(f.copy()) 
sequence.reverse()
sequence[0].save(r'./out_zr651.gif',save_all = True, append_images=sequence[1:]) #倒放的gif圖儲存在當前目錄下

為了能更直觀的理解這個程式的原理,我們對程式再稍作處理,我們可以將程式分解gif動圖的圖片都儲存下來看看,下面是改動後的程式碼。

from PIL import Image, ImageSequence
im = Image.open(r'./zr651.gif')
sequence = []
i = 0
for f in ImageSequence.Iterator(im):
 sequence.append(f.copy())
 i+=1
 f.save(r'./out_'+str(i)+'.png') #這裡把分解到的每一張靜態圖儲存到當前目錄下
sequence.reverse()
# sequence[0].save(r'./out_zr651.gif',save_all = True, append_images=sequence[1:])

 

女朋友發了一個化妝速成的視訊給我!我用Python實現了倒放!嘿嘿

 

進群:548377875  即可獲取數十套PDF以及大量的學習教程哦!

我們可以看到資料夾中已經有分解的靜態圖片了,每張圖都是gif動圖的某一幀,把所有的靜態圖按倒序連起來就是倒放的gif動圖了,大家可以自己親手去試試看,在學習python的過程中大家務必要自己親手去敲每一行程式碼。