导语

大家好,我是木子同学!

今天给大家分享一个好玩的东西

让时光倒流——当当当,其实就是让视频倒放而已

正常的视频如下

倒放原来可以这么玩(千万不要倒放)(1)

倒放视频如下

倒放原来可以这么玩(千万不要倒放)(2)

效果很赞吧,等你学会了这个,你才会发现,抖音上那些杯子里的水倒流,倒着跑步等看似

很炫酷很神秘的视频,其实就是一键倒放而已!

那么,今天小编就来探索Python代码如何实现这个倒放的功能叭~

正文

这些搞笑的gif跟小视频都是将正常的流畅通过倒放产生的效果啦

其实制作起来却非常简单,原理就是将gif图片拆分出来每一帧,再将拆分的每一帧图片反向排序

存到gif里即可,只需要十行代码

源码如下:

from PIL import Image, ImageSequence # 读取 GIF im = Image.open("1.gif") # GIF 图片流的迭代器 iter = ImageSequence.Iterator(im) index = 1 # 遍历图片流的每一帧 for frame in iter: print("image %d: mode %s, size %s" % (index, frame.mode, frame.size)) frame.save("./images/img%d.png" % index) index = 1 # 把 GIF 拆分为图片流 imgs = [frame.copy() for frame in ImageSequence.Iterator(im)] # 图片流反序 imgs.reverse() # 将反序后的所有帧图像保存下来 imgs[0].save("reverse.gif", save_all=True, append_images=imgs[1:])

效果展示:

倒放原来可以这么玩(千万不要倒放)(3)

哈哈哈,看懂这个视频了嘛!!

倒放原来可以这么玩(千万不要倒放)(4)

当遇到老人的时候应该.......

完整的一组效果——

少年触电,勇士及时救援!

倒放原来可以这么玩(千万不要倒放)(5)

去吧!皮卡丘

倒放原来可以这么玩(千万不要倒放)(6)

总结

哈哈哈哈,这些动态的倒放效果真的还挺有意思的哈~赶紧自己动手试试嘛

完整的素材等:滴滴我吖!或者点击文末自取免费拿的哈~

还有更多更多源码等你来领区啦!文章汇总——

汇总: Python文章合集 | (入门到实战、游戏、Turtle、案例等)

(文章汇总还有更多案例等你来学习啦~源码找我即可免费!)

倒放原来可以这么玩(千万不要倒放)(7)

,