美文网首页Python新世界
女朋友发了一个化妆速成的视频给我!我用Python实现了倒放!嘿

女朋友发了一个化妆速成的视频给我!我用Python实现了倒放!嘿

作者: 919b0c54458f | 来源:发表于2018-12-04 14:05 被阅读5次

    现在的各种动图层出不穷,深受大家喜欢,今天给大家介绍一个可以把gif动图倒放的python程序,先来看下效果。

    女朋友这里就不贴出来给大家看了,万一你们都喜欢我女朋友了咋办!还是得藏好!就给一个成功的例子给大家kanyix

    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:])

    进群:548377875  即可获取数十套PDF以及大量的学习教程哦!

    我们可以看到文件夹中已经有分解的静态图片了,每张图都是gif动图的某一帧,把所有的静态图按倒序连起来就是倒放的gif动图了,大家可以自己亲手去试试看,在学习python的过程中大家务必要自己亲手去敲每一行代码。

    相关文章

      网友评论

        本文标题:女朋友发了一个化妆速成的视频给我!我用Python实现了倒放!嘿

        本文链接:https://www.haomeiwen.com/subject/qqvmcqtx.html