基于python压缩gif图片大小。
使用PIL、imageio,将gif拆帧、压缩、合成。博主使用的是PyCharm工具。
1、安装imageio。File-->Settings-->Project:pro-->Project Interpreter-->点击 右上角的“+”搜索“imageio”安装。
2、提取gif每一帧并保存jpg格式,这里使用.convert('RGB')是因为frame.save不能保存png格式的图片,下同。
def getFrames(im):#非动画if False == im.is_animated :return;index = 1for frame in ImageSequence.Iterator(im):frame = frame.convert('RGB')frame.save("g%d.jpg" % index)compressImg('g%d.jpg'% index)index = index + 1return index
3、压缩图片。
def compressImg(ImgName):im = Image.open(ImgName)im.convert('RGB')if max(im.size[0], im.size[1]) > 128:im.thumbnail((128, 128))im.save('f-'+ImgName, quality=50)return 'OK'
4、将之前拆开的jpg文件合成gif。
def compressGif(ind,dur):images = []for i in range(1, ind):images.append(imageio.imread('f-g%d.jpg' % i))imageio.mimsave('c001.gif', images, duration = dur)
5、计算帧之间的频率,获取到的是毫秒,duration是秒,所以除以1000。
def calDuration(im):return (im.info)['duration']/1000
6、移除图片。
def removeImg(ind):for i in range(1,ind):af = 'f-g' + str(i) + '.jpg'f = 'g' + str(i) + '.jpg'if os.path.exists(af):os.remove(af)if os.path.exists(f):os.remove(f)
7、压缩之前的图片。
8、压缩之后的图片
基于python压缩gif图片大小。相关推荐
- thinkcmf5调用指定分类的二级_Tengine快速上手系列教程amp;视频:基于Python API的图片分类应用入门丨附彩蛋...
前言:近期,Tengine团队加班加点,好消息接踵而来,OpenCV 4.3.0发布,OPEN AI LAB AIoT智能开发平台Tengine与OpenCV合作共同加速边缘智能,Tengine再获业 ...
- 如何压缩动态图片大小?gif图太大了怎么压缩?
对于新媒体行业人员来说,平时在工作中需要存非常多的素材,这些素材中有很多就是gif格式的,随着积累的素材越来越多,这些素材会占用大量的储存空间,那么遇到这种情况应该怎么办呢?应该如何压缩动态图片大小? ...
- 怎么压缩gif图片大小?如何压缩gif又不影响画质
上传平台或传输gif动图时,经常遇到gif图片过大无法使用的情况.有没有一个办法既能缩小gif图片大小还能保持画质不受影响呢?推荐大家一款gif压缩工具-压缩啦,一键即可在线压缩gif图片大小. 1. ...
- 怎样在线压缩JPEG图片大小?
在日常生活工作中,大家保存图片的时候,都会看到有JPG.JPEG.png等文件名格式,JPG和png格式相信大家都非常熟悉了,和JPG相似JPEG是什么格式呢,它也是一种最常用的图像文件格式,那碰到J ...
- python 人像素描_基于python实现把图片转换成素描
这篇文章主要介绍了基于python实现把图片转换成素描,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 导语: 你是否还在为当时年少时没有选择自己的梦 ...
- python画素描画_基于python实现把图片转换成素描
这篇文章主要介绍了基于python实现把图片转换成素描,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 导语: 你是否还在为当时年少时没有选择自己的梦 ...
- 如何压缩jpg图片大小?怎么在线jpg图片压缩?
如何压缩jpg图片大小?使用压缩图的jpg图片压缩(https://www.yasuotu.com/jpg)功能,无需下载任何软件完成jpg压缩大小,方便又快捷,一起来看看具体步骤吧. 1.使用浏览器 ...
- 如何压缩png图片大小?
png这种图片格式大家应该都熟悉吧?,跟jpg格式有着同样高的使用率.只不过png图片偏于专业化,而jpg更具平常性.举个不恰当的例子Jpg格式就好比相当于口语,而png格式相当于比较正式的书面用语的 ...
- python 批量修改图片大小
python 批量修改图片大小 一个文件夹下面有好多图片格式是jpg大小是19201080,把它们处理成1280720并按原先图片的名保存在另一路径下 这里首先要找到给定路径下所有的图片文件,然后在修 ...
最新文章
- ux和ui_使用UX设计师为Amazon的Alexa学习会话式UI的基础
- python画图遇到复数值数据时应该用numpy.abs()函数还是numpy.real()函数
- dijkstra邻接表_[力扣743] 带权邻接表的单源最短路
- 读写分离无效的大坑(新使用数据库读写分离的同学可以参考)
- mybatis的javaType和ofType
- cadence SPB17.4 - 保存和恢复颜色配置
- c语言中计算熵的函数,如何用c++编程实现各种信源熵的计算
- CUDA优化之PReLU性能调优
- 115网盘如何打开php文件格式,opensuse安装115网盘客户端
- Androidx介绍及迁移
- 天使投资人杨宁:百度轻应用让移动时代很多不可能成为可能
- LeetCode | 521. Longest Uncommon Subsequence I
- Win10无法调节亮度解决方法
- oracle创建表空间及查看表空间和使用情况
- 使用pandas库读取数据
- 守护进程(Daemon)
- 个人资料转移设置工具 1.17┊个人资料转移/系统清理等等┊简体中文绿色免费版...
- 江苏大学计算机专业江苏排名,江苏大学专业排名情况
- 详解交换两个数的五种思路
- 系统启动和内核管理 加密和安全