Python如何实现动态图解析,合成与倒放

  介绍

这篇文章将为大家详细讲解有关Python如何实现动态图解析,合成与倒放,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强>用到的库和模块

今天用看看如何用Python写个程序,进行动态图的解析,合成与倒放。这里我们用到的库有且只有公益诉讼。而且只用到了公益诉讼的两个模块图像和ImageSequence。顾名思义,就是图像模块和图像序列模块。动态图正好可以看作是图像序列。

<强>简单的原理和代码

所谓动态图的解析,就是把GIF格式的图片转化为图片流的过程,而动态图的合成就是把图片流重新合成GIF图片的过程。而所谓动态图倒放,就是把图片流反序之后再合成GIF了。

原理上没啥难以理解的,我们还是直接看代码。

得到PIL  import 形象,ImageSequence       #,读取GIF   我=,Image.open (“5. gif")   #,GIF图片流的迭代器   时间=iter  ImageSequence.Iterator (im)      index =1   #,遍历图片流的每一帧   for  frame  iter拷贝:   ,打印(“image  % d:, mode  % s,, size  % s", %,(指数,frame.mode,, frame.size))   ,frame.save(“。/一/% d.png"帧,%,指数)   index  +=, 1      #,frame0 [0]=,帧   #,frame0.show ()      #,把GIF拆分为图片流   时间=imgs  [frame.copy (), for  frame 拷贝ImageSequence.Iterator (im))   #,把图片流重新成成GIF动图   一个[0].save (& # 39; out.gif& # 39;,, save_all=True,, append_images=一个[1:])      #,图片流反序   imgs.reverse (),   #,将反序后的所有帧图像保存下来   一[0].save (& # 39;。/reverse_out.gif& # 39;,, save_all=True,, append_images=一个[1:])

<>强效果

以下是动图原图,效果图。

 Python如何实现动态图解析,合成与倒放

倒放的动态图

 Python如何实现动态图解析,合成与倒放

动态图解析得到的图片流:

 Python如何实现动态图解析,合成与倒放“> <br/> </p> <p class=关于“Python如何实现动态图解析,合成与倒放”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

Python如何实现动态图解析,合成与倒放