使用python制作GIF动图

最近偶然看到一位朋友的公众号中提到了使用Python生成GIF动图。看着挺有趣的,于是尝试一下。

其实是有很多制作动图的软件,但是自己丰衣足食,使用代码来实现,想想还是挺不错的。

效果图

那我自己的图为例,首先来看动图效果:


在这里插入图片描述

代码

这个制作过程很简单,我们直接贴上代码,拿代码来说:

首先呢!安装imageio库;接着如下代码中的注释,首先读取静态图到列表,作为GIF的每一帧;接着设置输入(静态图)、输出(动态图)和一些必要参数,我们这里设置每一帧间隔时间为1.5秒,默认是1秒,之后调用miageio.mimsave函数去保存结果。

'''
Author: Solarzhou
Email: tzhou@foxmail.com
公众号:Solarzhou
'''
import imageio
def create_gif(image_list, gif_name, duration = 1.0):
    '''
    :param image_list: 这个列表用于存放生成动图的图片
    :param gif_name: 字符串,所生成gif文件名,带.gif后缀
    :param duration: 图像间隔时间
    :return:
    '''
    frames = []
    for image_name in image_list:
        frames.append(imageio.imread(image_name))

    imageio.mimsave(gif_name, frames, 'GIF', duration=duration)
    return

def main():
    #这里放上自己所需要合成的图片
    image_list = ['1.jpg', '2.jpg', '3.jpg']
    gif_name = 'new.gif'
    duration = 1.5
    create_gif(image_list, gif_name, duration)

if __name__ == '__main__':
    main()

在python中,只需要短短几行代码,便可做出如上动图。另外,通过这种方法做出的图好像是对静态图片没有限制。挺好用的。

欢迎关注我的公众号,从一名不羁的码农开始


在这里插入图片描述

推荐阅读更多精彩内容