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

Posted

tags:

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

参考技术A 大多博客给的生成GIF图都是要手打图片名字,觉得太麻烦,整了个把所有图片放在一个文件夹里,就可以就这些图片生成GIF图的工具

# user:Yollison

# Author: Yollison

# createtime: 2021/9/23 9:41

'''

这个程序是把某个文件夹里所有图片生成GIF动图

里面的功能不包括整理图片格式,直接暴力生成,所以图片最好在保存时就整理好格式

'''

import imageio

import os

def create_gif(image_list, gif_name, duration=0.35):

frames = []

for image_namein image_list:

frames.append(imageio.imread(image_name))

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

return

def main():

image_list = []

# 自动读取文件夹里图片的名字

    for filenamein os.listdir(r"D:/results"):# 图片所在文件夹的路径

        image_list.append('D:\\results\\'+filename)# 此路径与上一条语句路径保持一致

    gif_name ='result.gif' # 保存路径在此程序这里,也可自己指定路径

    duration =0.35

    # 生成gif

    create_gif(image_list, gif_name, duration)

if __name__ =='__main__':

main()

python 动图gif 合成

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

import os
import sys
import imageio

def main(imgs_dir, gif_name):
    # imgs_dir 里的图片要排好序
    frames = []
    for image_name in os.listdir(imgs_dir):
        fullname = os.path.join(imgs_dir, image_name)
        frames.append(imageio.imread(fullname))
        print(‘fname: {0}‘.format(image_name))
    # Save them as frames into a gif
    imageio.mimsave(gif_name, frames, ‘GIF‘, duration = 0.1)


if __name__ == "__main__":
    if len(sys.argv) < 3:
        print("Usage: {0} imgs_dir out_filename".format(sys.argv[0]))
        exit(1)
    main(sys.argv[1], sys.argv[2])


以上是关于Python 批量处理图片,生成gif动图的主要内容,如果未能解决你的问题,请参考以下文章

gif动态图片生成器,多张图片组合后生成动图...

批量生成缩略图

Photoshop批量处理图片技巧

批量处理图片名,并生成txt文件

iOS【图片国际化处理】python脚本Assets.xcassets图片名称及MD5批量处理(三)

Python 批量修改图片格式和尺寸