现在网络平台上各种有很多倒放视频和倒放gif,其中有些非常的有意思,例如以下图片,慎点,笑死人行哥不偿命
例如
又例如
双例如
又双例如
这些搞笑的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:])
最后图片制作的结果如下
原图.gif
点击查看倒放.gif
推荐阅读