Python中怎样实现gif动图倒放的效果呢?
Admin 2022-09-13 群英技术资讯 463 次浏览
最近是有点忙,感觉好久没写博客了。但是最近看到一个有趣的就是gif动图的倒放,因为这个原理也并不是很难,而且用到的库以前也略微的看过一点点,所以要新学的东西不是很多。
开发环境 :pycharm + win10下python环境
主题思路就是将gif动图的每一帧都截取下来,将整张动图拆分成图片流,然后将图片流反序,最后将反序后的图片流重新合成成一张gif动图,下面贴上代码 :
# python下的图像处理库 from PIL import Image, ImageSequence # 系统模块 import os # 用于读取gif动图 im = Image.open("读取图片的名称") # gif图片流的迭代器 iter = ImageSequence.Iterator(im) index = 1 for frame in iter: # 每一帧图片 print("image %d: mode %s, size %s" % (index, frame.mode, frame.size)) # 若保存的路径不存在,则创建文件夹 path = "imgs" if path not in os.listdir(): os.makedirs(path) # 将每一帧图片保存到imgs文件夹下 frame.save("./imgs/frame%d.png" % index) index += 1 # 将gif拆分成图片流 imgs = [frame.copy() for frame in ImageSequence.Iterator(im)] # 输出原图 # imgs[0].save("./out.gif", save_all=True, append_images=imgs[1:]) # 将图片流反序 imgs.reverse() # 将反序后的图片流保存并输出 imgs[0].save("./reverse_out.gif", save_all=True, append_images=imgs[1:])
然后下面是拆分的图片流:
最后是效果图对比,下面是原图:
之后就是倒放的动图:
哇,貌似看起来不是很明显,但是单独看两张动图就好一点了,原图是从背到正,转换后是从正脸转身
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
质因数就是质数,质因数在数论指能整除给定正整数的质数。除1外,没有其他公共质数因子的两个正整数称为倒数质数。下面,小编就向大家介绍python中分解质因数的方法。
behave是python语言的行为驱动开发,全称:Behavior-driven development,简称BDD。BDD即行为驱动开发(Behavior Driven Development),其特点为: 通过自然语言来定义系统行为从功能使用者...
你想复制一个对象?因为在Python中,无论你把对象做为参数传递,做为函数返回值,都是引用传递的。何谓引用传递,我们来看一个C++交换两个
最近工作中读取文件时经常遇上比较复杂的情况,所以下面这篇文章主要给大家介绍了关于如何利用Python按顺序读取文件夹中文件的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
这篇文章主要介绍了pandas 如何将字符串映射为数字,具有很好的参考价值,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008