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动图的主要内容,如果未能解决你的问题,请参考以下文章