个人笔记-python生成gif

使用文件的修改时间戳进行排序

import os
import re
import imageio# 设置图片所在的文件夹路径
folder_path = '/home/czy/ACode/AMAW_20240219/9.3.x(Discrete_time_marching)/9.3.17.11.1(Disc_concessive_CH_ZJ)/current_figures'  # 文件夹路径;linux用pwd获取路径# # 获取文件夹内所有图片的文件名列表,并按顺序排序
image_files = sorted([f for f in os.listdir(folder_path) if f.endswith('.png')])# 获取每个文件的完整路径
file_paths = [os.path.join(folder_path, f) for f in image_files]# 使用文件的修改时间戳进行排序
sorted_file_paths = sorted(file_paths, key=os.path.getmtime)# 提取排序后的文件名
sorted_filenames = [os.path.basename(p) for p in sorted_file_paths]# 打印排序后的文件名以验证结果
for filename in sorted_filenames:print(filename)# 创建一个空的GIF图片列表
images = []# 遍历图片文件,并添加到GIF图片列表中
for filename in sorted_filenames:filepath = os.path.join(folder_path, filename)images.append(imageio.imread(filepath))# 设置GIF的保存路径和持续时间(每个图片的显示时间)
gif_path = os.path.join(folder_path, 'animation.gif')
duration = 0.1  # 每个图片显示0.1秒# 使用imageio的mimsave函数保存GIF动画
imageio.mimsave(gif_path, images, 'GIF', duration=duration)print(f'GIF animation saved to {gif_path}')

0.1-4.9

假如gif太大,可使用以下代码改小

from PIL import Image
from PIL import ImageSequence
import os# 设置工作目录到指定的路径(改成自己的)
os.chdir('/home/czy/ACode/AMAW_20240219/9.3.x(Discrete_time_marching)/9.3.17.11.1(Disc_concessive_CH_ZJ)/current_col_pt') im = Image.open('./animation.gif')
resize_frames= [frame.resize((frame.width // 2, frame.height // 2)) for frame in ImageSequence.Iterator(im)]  # 这里的2可改成任意数字,即比原来的改小一半,也可以直接改成数字(800,600)这种
resize_frames[0].save("animation_resize.gif", save_all=True, append_images=resize_frames[1:])
print("Done!")

在这里插入图片描述

使用文件名数字排序(如果文件名包括很多数字的话,排序会出错)

import os  
import imageio  # 设置图片所在的文件夹路径  
folder_path = '/home/czy/ACode/AMAW_20240219/9.3.x(Discrete_time_marching)/9.3.17.11.1(Disc_concessive_CH_ZJ)/current_figures' # 获取文件夹内所有图片的文件名列表,并按顺序排序  
image_files = sorted([f for f in os.listdir(folder_path) if f.endswith('.png')])  # 创建一个空的GIF图片列表  
images = []  # 遍历图片文件,并添加到GIF图片列表中  
for filename in image_files:  filepath = os.path.join(folder_path, filename)  images.append(imageio.imread(filepath))  # 设置GIF的保存路径和持续时间(每个图片的显示时间)  
gif_path = os.path.join(folder_path, 'animation.gif')  
duration = 0.1  # 每个图片显示0.1秒  # 使用imageio的mimsave函数保存GIF动画  
imageio.mimsave(gif_path, images, 'GIF', duration=duration)  print(f'GIF animation saved to {gif_path}')

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/23296.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

电商核心技术系列58:电商平台的智能数据分析与业务洞察

相关系列文章 电商技术揭秘相关系列文章合集(1) 电商技术揭秘相关系列文章合集(2) 电商技术揭秘相关系列文章合集(3) 电商核心技术揭秘56:客户关系管理与忠诚度提升 电商核心技术揭秘57:数…

【Python系列】Python 方法变量参数详解

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

白酒:茅台镇白酒的醇厚口感与细腻层次

茅台镇,中国白酒的璀璨明珠,以其与众不同的自然环境和杰出的酿造技艺,孕育出了无数上好白酒。云仓酒庄豪迈白酒作为茅台镇的杰出品牌,以其醇厚口感和细腻层次,赢得了无数消费者的喜爱。 茅台镇地处赤水河畔&#xff0c…

训练集和测试集的分布一致性分析

规律一致性分析的实际作用   在实际建模过程中,规律一致性分析是非常重要但又经常容易被忽视的一个环节。通过规律一致性分析,我们可以得出非常多的可用于后续指导后续建模的关键性意见。通常我们可以根据规律一致性分析得出以下基本结论: …

ai写作神器app有哪些?好用的智能写作APP推荐

ai写作神器app有哪些?AI写作神器app在现代写作领域正迅速崭露头角,它们不仅极大提升了创作效率,而且通过集成前沿的人工智能技术,为创作者们提供了前所未有的便利。这些app能够智能分析写作需求,快速生成高质量的内容&…

十五、【源码】动态Sql

源码地址:https://github.com/mybatis/mybatis-3/ 仓库地址:https://gitcode.net/qq_42665745/mybatis/-/tree/15-dynamic-sql 动态Sql 解析动态Sql分为两部分 1.解析XML中Sql的时候,要将其解析成不同的SqlNode节点,但是不进行…

Jenkins的jdk和maven配置

目录 传送门前言一、概念二、JDK的配置三、Maven配置四、环境变量配置五、坑 传送门 SpringMVC的源码解析(精品) Spring6的源码解析(精品) SpringBoot3框架(精品) MyBatis框架(精品&#xff09…

「51媒体」媒体发布会如何做媒体邀约

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体发布会的媒体邀约是一个需要精心策划和准备的过程。 策划与准备阶段: 明确目标:明确发布会的目标、核心议题、举办日期、时间和地点。 准备资料&#xff1a…

体验式营销+旅行文化:品牌海外推广的创新之路

在全球化的时代背景下,体验式营销作为一种新兴的营销方式,以其独特的参与性、互动性和情感共鸣,成为品牌与消费者建立深层次联系的有效手段。而将体验式营销与旅行文化相结合,能够为海外消费者提供独特的品牌体验。本文Nox聚星将和…

GD32单片机开发--点亮第一盏灯

知不足而奋进 望远山而前行 目录 系列文章目录 文章目录 前言 目标 内容 开发流程 需求分析 项目新建 代码编写 GPIO初始化 完整代码 程序编译 程序烧录 烧录扩展(熟悉) 官方烧录器烧录(熟悉) 总结 前言 在本次项…

C#操作MySQL从入门到精通(11)——对查询数据使用正则表达式过滤

前言 对于之前提到的使用匹配、比较、通配符等过滤方式能解决大部分的项目问题,但是有时候也会遇到一些比较复杂的过滤需求,这时候就需要正则表达式来实现了,正则表达式使用regexp这个关键字来实现。 本次测试的数据库表的内容如下: 1、基本字符匹配(包含某些字符) 匹…

嵌入式之存储基本知识

系列文章目录 嵌入式之存储基本知识 嵌入式之存储基本知识 系列文章目录一、RAM与ROM二、DRAM和SRAM三、SDRAM(DRAM的一种)四、DDR 一、RAM与ROM RAM(随机存取存储器)和ROM(只读存储器)是两种不同类型的计…

揭秘VVIC API:开启高效数据交互的密钥,你的项目就差这一步

VVIC API接口概述 VVIC API提供了对VVIC服务的数据访问和操作功能。通过此API,开发者可以集成VVIC服务到他们的应用程序中,实现数据同步、用户认证、资源管理等功能。 点击获取key和secret API端点示例 用户认证 方法:POSTURL:/…

Nvidia Jetson/Orin +FPGA+AI大算力边缘计算盒子:无人机自主飞行软件平台

案例简介 北京泛化智能科技有限公司(gi)所主导开发的 Generalized Autonomy Aviation System (GAAS) 是为无人机以及城市空中交通 (UAM, Urban Air Mobility) 所设计的开源无人机自主飞行框架。通过 SLAM、路径规划和 Global Optimization Graph 等功能…

【Linux】(三)—— 文件管理和软件安装

文件管理 Linux的文件管理是系统管理中的核心部分,它涉及到如何组织、访问、修改和保护文件及目录结构。 目录 文件管理基本概念常用命令查看和切换目录创建文件和目录删除文件和目录文件拷贝移动和重命名文件文件查看cat文件查看more查找文件查找文本 数据流和管道…

redsystems教程的基本使用之重置密码(忘记密码解决方法)

前言: 相信很多人都有疑惑,要是我不记得密码怎么办?如果你登录了,点击更改密码后,还是要你填写登录密码才能修改。为了解决这问题,博主通过了钻研成功搞出来了!!!&#…

DS:数与二叉树的相关概念

欢迎来到Harper.Lee的学习世界!博主主页传送门:Harper.Lee的博客主页想要一起进步的uu可以来后台找我哦! 一、树的概念及其结构 1.1 树的概念亲缘关系 树是一种非线性的数据结构,它是由n(n>0)个有限节点…

Marvelous Designer中一些棉质布料预设

Marvelous Designer中一些棉质布料预设的解释: Cotton_14_Wale_Corduroy:14条细鲸鱼纹的灯芯绒,适合制作温暖且有质感的服装。Cotton_40s_Chambray:40支精梳针织的府绸布,通常用于制作休闲衬衫。Cotton_40s_Poplin&am…

Face Forgery Detection by 3D Decomposition

文章目录 Face Forgery Detection by 3D Decomposition研究背景研究目标创新点方法提出问题研究过程技术贡献实验结果未来工作Face Forgery Detection by 3D Decomposition 会议:CVPR2021 作者: 研究背景 面部伪造引发关注传统面部伪造检测主要关注原始RGB图像

学Python,看一篇就够

学Python,看一篇就够 python基础注释变量标识符命名规则使用变量认识bugDebug工具打断点 数据类型输出转义字符输入输入语法输入的特点 转换数据类型pycharm交互运算符的分类赋值运算符复合赋值运算符比较运算符逻辑运算符拓展 条件语句单分支语法多分支语法拓展 if…