你想不到的沙雕,8行代码Python实现GIF图倒放,每天的快乐源泉

时间:2022-07-25
本文章向大家介绍你想不到的沙雕,8行代码Python实现GIF图倒放,每天的快乐源泉,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

前言

GIF的全称是Graphics Interchange Format,可译为图形交换格式,用于以超文本标志语言(Hypertext Markup Language)方式显示索引彩色图像,在因特网和其他在线服务系统上得到广泛应用。

GIF图现在已经融入了我们的日常网络生活,微信群、QQ群、朋友圈......一言不合就斗图,你怕了吗?不用担心,只要学会了Python之GIF倒放技能,你就是“斗图王”。

咱们直接开始本文的内容!

PIL(Python Image Library)

它是python的第三方图像处理库,功能非常的强大,几乎被认定为Python的官方图像处理库。

1:导入PIL库的模块

from PIL import Image, ImageSequence  #导入PIL库的Image和 ImageSequence 模块
im = Image.open(r'./1.gif')   #注意把gif动图放在该程序的相同目录下

2:将GIF图分解

为了能更直观的理解这个程序的原理,我们可以将程序分解gif动图的图片都保存下来看看

sequence = []  #用来存放GIF分解成帧的序列
i=0
for f in ImageSequence.Iterator(im):  #循环访问GIF中的逐帧
    sequence.append(f.copy())
    i+=1     
    f.save('out_'+str(i)+'.png')     #将每次分离出来的帧保存

3:将得到的序列通过reverse()函数倒序

sequence.reverse()

4:将得到的帧序列重新还原成GIF:

sequence[0].save(r'./out_zr640.gif',save_all = True, append_images=sequence[1:]) #倒放的gif图保存在当前目录下

效果展示: