python生成GIF

Posted 随风挥手

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python生成GIF相关的知识,希望对你有一定的参考价值。

python生成给GIF的库是imageio

我们在命令行安装这个库

pip install imageio

安装完成后编写代码

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
import sys

sys.path.append(‘.‘)
__author__ = ‘1084502012@qq.com‘

import conf, os
import imageio
from pygifsicle import optimize


def compose_gif(name):
    """生成gif图片"""
    images_path = ["001.png","002.png","003.png"] # 图片路径组成的列表
    gif_images = []
    for path in images_path:
        gif_images.append(imageio.imread(path)) # 将所有的图片使用imageio.imread方法添加进数组
    
    # 使用mimsave方法生成,gif FPS=5,帧与帧之间的间隔时间为0.075
    # 该代码已在MacOS系统上测试过
    imageio.mimsave("{}.gif".format(name), gif_images, fps=5, duration=0.075)
    
   
    # optimize("{}.gif".format(name))  # pygifsicle压缩GIF的,但是颜色会显示失真
	
    # 下面这两行代码据说能提高GIF质量,但是我看不出啥区别,可能眼拙
    # 参考来源:http://cn.voidcc.com/question/p-sbtgksmg-bnp.html
    # kwargs_write = {‘fps‘: 1.0, ‘quantizer‘: ‘nq‘}
    # imageio.mimsave("{}.gif".format(name), gif_images, ‘GIF-FI‘, **kwargs_write)

if __name__ == ‘__main__‘:
    compose_gif(‘gif001‘)

  • 优化GIF大小,安装pygifsicle库

    pip install pygifsicle
    

    两种使用方法:

    optimize(gif_path, "optimized.gif") # 用于创建一个新的
    optimize(gif_path) # 用于覆盖原始的
    

使用以上代码即可使用python生成GIF。

参阅官方文档:https://imageio.readthedocs.io/en/stable/examples.html

喜欢python自动化测试或正在学习自动化测试的同学
欢迎加入我的QQ群:299524235(python自动化测试学习)

以上是关于python生成GIF的主要内容,如果未能解决你的问题,请参考以下文章

Python 批量处理图片,生成gif动图

python画灯笼并保存成gif

如何使用python生成gif

python imageio 图片生成gif

我用Python做了个动图生成器,把一千个MM生成了GIF设置桌面,只为每天愉悦心情

学习python:实例2.用PIL生成随机验证码