gif分解工具_Python之GIF图倒放,沙雕快乐源泉

ae88d2a25eff530d0d389e88d47736d9.gif

GIF图现在已经融入了我们的日常网络生活,微信群、QQ群、朋友圈......一言不合就斗图,你怕了吗?

3d841607f650a3e117d8fc12d98a057b.png 8f4b4c2c28eef63d91a08bb65711c456.gif

不用担心,只要学会了Python之GIF倒放技能,你就是“斗图王”。

2e41eb317083e06b11b366bc8da8d350.gif

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

使用的工具

1

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

功能如下:

1、图像归档(Image Archives)。

PIL非常适合于图像归档以及图像的批处理任务。你可以使用PIL创建缩略图,转换图像格式,打印图像等等。

2、图像展示(Image Display)。

PIL较新的版本支持包括Tk PhotoImage,BitmapImage还有Windows DIB等接口。PIL支持众多的GUI框架接口,可以用于图像展示。

3、图像处理(Image Processing)。

PIL包括了基础的图像处理函数,包括对点的处理,使用众多的卷积核(convolution kernels)做过滤(filter),还有颜色空间的转换。PIL库同样支持图像的大小转换,图像旋转,以及任意的仿射变换。PIL还有一些直方图的方法,允许你展示图像的一些统计特性。这个可以用来实现图像的自动对比度增强,还有全局的统计分析等。

操作步骤

2

Step1:导入PIL库的模块

Image是PIL库的基本核心类,用来实现导入GIF

from PIL import Image, ImageSequence  #导入PIL库的Image和 ImageSequence 模块im = Image.open('1.gif')   #导入需要倒放的gif

Step2:GIF图片分解成帧

ImageSequence模块包括了一个wrapper类,它能够让用户迭代访问图形序列中每一帧图像。利用ImageSequence中的Iterator函数创建一个迭代器实例,让用户循环访问序列中的全部图像。

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

可以看到文件夹中已经有分解的静态图片了,每张图都是gif动图的某一帧,把所有的静态图按倒序连起来就是倒放的gif动图。

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

sequence.reverse()     #将帧序列倒叙

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

sequence[0].save('out1.gif',save_all=True,append_images=sequence[1:])  #生成新的GIF

Step5:得到倒放GiF图片

倒放效果:

491a8e9deb20d52fb6ba386da0d6d455.gif

正放效果:

fd4caf225be3b2221e02348d411e9024.gif 276cd5e547b14f3b6d503160d61c4fdc.gif

大家可以自己亲手去试试看,其实在学习python的过程中也是欢乐无穷呢!

d9f32cba3c6f739bfda91257bcd43b0b.gif 6529336c3b7b9314d31d4d630f77125f.gif

下面为大家带来一些实例:

浣熊被投喂VS 人类被投喂

3

835bc7c2e5c74d63854f57df08207b04.gif 5d1df538c1ef583c833d6f32d863e676.gif

修复破碎乒乓球

4

0ec5570da5041939be833fa670d3f290.gif 379311b2978114a3ca9cd7a6f0ed5453.gif

感受化学反应之美

5

7c6a24402997ac476409163a4d005c16.gif 46c703d993aeacd55b3ca03e696a33ce.gif 20ca113b33cea7b8b8f35f655737da30.png

Python学习虽然枯燥,但是却极为实用,GIF动图倒放你学会了吗?快来,我们一起开启“斗图王”的巅峰人生。

234efb3ba2614889dc915d7575b08e99.gif 234efb3ba2614889dc915d7575b08e99.gif

关注数据皮皮虾

开启沙雕斗图模式!

本期作者:文萌

本期编辑校对:张惠宁

77954fbaa41e72c045729febbe64b810.png 234efb3ba2614889dc915d7575b08e99.gif 234efb3ba2614889dc915d7575b08e99.gif
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值