教你怎么用Python实现GIF动图的提取及合成
Python实现GIF动图的提取及合成
在开始之前,先来一个动图开头(预览)
图片转GIF动图
1、准备工作
在开始合并前,先明确要转换哪些图片,以及安装对应的Python库
这里在网上找了9张图片,并存放在img文件夹下,这9张图片一会待转换为GIF动图。
pip install imageio
通过上面的命令安装imageio库,该库功能是将多张图转为GIF。
导入相应的库
import imageio import os import os.path as osp
2.转换
读取img文件夹下的所有图片,并通过imageio读取图片内容。
转换并保存为chenge.gif
其中的duration = 1 / fps ,也就是说duration越大,动图变化越慢,当前duration是0.1,其结果如下:
当前duration是0.5,其结果如下:
GIF提取图片
1.准备工作
导入PIL库
from PIL import Image
待提取的gif(这里使用上面保存的chenge.gif)
2.提取
这里将chenge.gif提取图片,保存到gif-to-pic文件夹中,并从0.jpg开始命名
可以看到gif动图里面的图片已成功提取。
小结
本文讲解了如何将多张图片转为GIF,同时也讲解了通过一个GIF动图提取出里面的图片。为了方便大家练习,辰哥已将代码模块化。
到此这篇关于教你怎么用Python实现GIF动态的提取及合成的文章就介绍到这了,更多相关GIF的合成与提取内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
python GUI库图形界面开发之PyQt5不规则窗口实现与显示GIF动画的详细方法与实例
PyQt5不规则窗口实现动画效果实例 import sys from PyQt5.QtCore import * from PyQt5.QtGui import * from PyQt5.QtWidgets import * class ShapeWidget(QWidget): def __init__(self,parent=None): super(ShapeWidget, self).__init__(parent) self.i=1 self.mypix() self.timer=QT
-
利用Python如何制作好玩的GIF动图详解
前言 之前我们分享过用Python进行可视化的9种常见方式.其实我们还能让可视化图形逼格更高一些,今天就分享一下如何让可视化秀起来:用Python和matplotlib制作GIF图表. 假如电脑上没有安装ImageMagick,先去这里按照自己的电脑系统下载对应版本,大家也可以通过我们下载:https://www.jb51.net/softs/140766.html,如果我们想用matplotlib的save方法渲染GIF动图,就需要安装ImageMagick. 下图是我们制作的一个动图示例:
-
用Python将GIF动图分解成多张静态图片
需求 有时候你看到一张动态图片,其中的一个画面你觉得很不错,想从中提取出来.例如以下这张由多个漂亮小姐姐组成的 GIF 动态图: 实现 GIF 动态图片是由多张静态图片组合而成,按照一定的顺序和时间进行播放.基于此,能不能将 GIF 图片反向分解成一张张静态图呢?即 GIF 图片有多少帧,就有多少张静态图片.答案是肯定的! 都有现成的工具,有免费的,有付费的,有在线版的:还有些专门处理 GIF 动态图片的强大工具. 不过,作为 IT 人,不试试自己实现吗?初学编程,可以练练手:高手可 DIY 可
-
python下载卫星云图合成gif的方法示例
Python下载中央气象台卫星云图后保存为gif并播放,大致步骤: 获取URL 下载图片 合成GIF 播放GIF 1.获取URL 1.1 先下载一份网页源码看看网页结构 保存为:response.txt #http库 import requests #准备http请求头 headers = {"user-agent": "firefox"} #中央气象台卫星云图网页 url = 'http://www.nmc.cn/publish/satellite/fy2.htm
-
Python将视频或者动态图gif逐帧保存为图片的方法
本文是基于opencv将视频和动态图gif保存为图像帧.可以根据输入视频格式的不同,修改第21行. 对动图的处理不同于视频,PIL库包含对图像序列的基本支持.当打开gif图像时,自动加载第一帧.当图像读取完成时,抛出EOFError异常.我们可以使用seek()与tell()函数完成图像帧的读取. 本代码的前部分是对文件的读取.数据集文件结构如下: |--datasets |--action1 action1_1.gif action1_2.gif ...... |--action2 actio
-
Python 实现图片转字符画的示例(静态图片,gif皆可)
字符画是一种由字母.标点或其他字符组成的图画,它产生于互联网时代,在聊天软件中使用较多,本文我们看一下如何将自己喜欢的图片转成字符画. 静态图片 首先,我们来演示将静态图片转为字符画,功能实现主要用到的 Python 库为 OpenCV,安装使用 pip install opencv-python 命令即可. 功能实现的基本思路为:利用聚类将像素信息聚为 3 或 5 类,颜色最深的一类用数字密集度表示,阴影的一类用横杠(-)表示,明亮部分用空白表示. 主要代码实现如下: def img2stri
-
教你怎么用Python实现GIF动图的提取及合成
Python实现GIF动图的提取及合成 在开始之前,先来一个动图开头(预览) 图片转GIF动图 1.准备工作 在开始合并前,先明确要转换哪些图片,以及安装对应的Python库 这里在网上找了9张图片,并存放在img文件夹下,这9张图片一会待转换为GIF动图. pip install imageio 通过上面的命令安装imageio库,该库功能是将多张图转为GIF. 导入相应的库 import imageio import os import os.path as osp 2.转换 读取img文件
-
Python实现GIF动图以及视频卡通化详解
目录 前言 环境依赖 核心代码 gif动图卡通化 视频卡通化 总结 前言 参考文章:Python实现照片卡通化 我继续魔改一下,让该模型可以支持将gif动图或者视频,也做成卡通化效果.毕竟一张图可以那就带边视频也可以,没毛病.所以继给次元壁来了一拳,我在加两脚. 项目github地址:github地址 环境依赖 除了参考文章中的依赖,还需要加一些其他依赖,requirements.txt如下: 其他环境不太清楚的,可以看我前言链接地址的文章,有具体说明. 核心代码 不废话了,先上gif代码. g
-
Python代码实现动图倒放
开始分享今天的技术之前,先来看几个动图(gif) (原图1) (倒放1) (原图2) (倒放2) 上诉两个动图,可以通过几行Python代码就可以实现倒放效果. 导入库: from PIL import Image, ImageSequence Image库用于读取(加载)图片 ImageSequence 用于将GIF拆解为图片(一帧一图) # 加载本地动图 image = Image.open("cg.gif") # GIF 动图拆分器 list = ImageSequence.It
-
Python Matplotlib绘制动图平滑曲线
目录 绘制动图 FuncAnimation ArtistAnimation 使用 scipy.ndimage.gaussian_filter1d() 高斯核类绘制平滑曲线 使用 scipy.interpolate.make_interp_spline() 样条插值类绘制平滑曲线 使用 scipy.interpolate.interp1d 插值类绘制平滑曲线 拟合曲线后绘制动图 绘制动图 FuncAnimation,它的使用要求简洁且定制化程度较高.如果想将很多图片合并为一个动图,那么Artist
-
Python使用matplotlib创建Gif动图
目录 1.Matplotlib 简介 2.绘制动画正弦和余弦波 3.绘制曲面图 4.绘制回归图 1.Matplotlib 简介 数据可视化有助于更有效地讲述有关数据的故事并使其易于呈现.有时很难用静态图表来解释数据的变化,为此,我们将讨论matplotlib提供的名为“Animation”的动画库之一.以下是要涵盖的主题. 最流行的Python二维绘图库是Matplolib.大多数人从Matplotlib开始他们的探索性数据分析之旅.它可以轻松创建绘图.直方图.条形图.散点图等.与Pandas和
-
Python简单实现gif动图倒放示例
最近是有点忙,感觉好久没写博客了.但是最近看到一个有趣的就是gif动图的倒放,因为这个原理也并不是很难,而且用到的库以前也略微的看过一点点,所以要新学的东西不是很多. 开发环境 :pycharm + win10下python环境 主题思路就是将gif动图的每一帧都截取下来,将整张动图拆分成图片流,然后将图片流反序,最后将反序后的图片流重新合成成一张gif动图,下面贴上代码 : # python下的图像处理库 from PIL import Image, ImageSequence # 系统模块
-
教你如何用python爬取王者荣耀月收入流水线
前言 王者荣耀是最近几年包括现在一直都是最热销的手游,收益主要来源是游戏里面人物皮肤.今天就来爬取展示王者荣耀近一年收入流水线动图,看看王者荣耀有多赚钱(哈哈哈哈) 主要可视化内容: 一.App收入排行流水线 1.1.获取数据 数据来源于:七麦数据,里面数据都是通过异步加载,因此只需要找到异步链接,修改参数就可以直接获取到数据. 备注:需要cookie才可以获取数据. 请求链接 https://api.qimai.cn/pred/appMonthPred?analysis=eEcbRhNVVB9
-
教你如何使用Python快速爬取需要的数据
一.基础第三方库使用 1.基本使用方法 """例""" from urllib import request response = request.urlopen(r'http://bbs.pinggu.org/') #返回状态 200证明访问成功 print("返回状态码: "+str(response.status)) #读取页面信息转换文本并进行解码,如果本身是UTF-8就不要,具体看页面格式 #搜索"char
随机推荐
- 利用JS如何计算字符串所占字节数示例代码
- Linux shell知识点汇总
- JavaScript动态调整TextArea高度的代码
- 纯php打造的tab选项卡效果代码(不用js)
- Linux php 中文乱码的快速解决方法
- 理解JavaScript事件对象
- 在js文件中如何获取basePath处理js路径问题
- 关于JavaScript数组你所不知道的3件事
- sql server代理中作业执行SSIS包失败的解决办法
- js中遍历Map对象的方法
- java实现的RSA加密算法详解
- C语言实现的程序员老黄历实例
- Spring WebSocket 404错误的解决方法
- spring缓存代码详解
- Android StrictMode运行流程(推荐)
- Vue 将后台传过来的带html字段的字符串转换为 HTML
- Selenium鼠标与键盘事件常用操作方法示例
- PHP合并两个或多个数组的方法
- 易语言数据加密方法步骤
- python利用thrift服务读取hbase数据的方法