【Python开发】python PIL读取图像转换为灰度图及另存为其它格式(也可批量改格式)
2024-10-18 01:21:28
例如有一幅图,文件名为“a.jpg’.
读取:
from PIL import Image #或直接import Image
im = Image.open('a.jpg')
将图片转换成灰度图
:im1 = im.convert('L')
所以
打开图片并转换成灰度图的方法是:
im = Image.open('a.jpg').convert('L)
转换图像格式:
im.save('aa.gif')
以上代码把a.jpg 打开并转换成灰度图(像素值在0-255之间),然后保存成aa.gif格式。可以把上一行代码中‘aa.gif'改成路径加文件名,就可以保存到自己想要保存的地方了。
批量转换图像格式
列表a中会把图片名无序存储 a = [ ‘aa.gif’,[..],..],全是字符串。当然以上命令不仅可以用在这里,其它地方也是一样的,获得当前路径b下边所有的内容。
下面将创建一个包含文件夹中所有图像文件名的文件名列表:
import os
def get_path(path):
'''返回目录中所有JPG图像的文件名列表'''
return [os.path.join(path,f) for f in os.listdir(path) if f endswith('.jpg')]
做其它使用,只要在上述代码稍做改动就可以。如去掉后边的if 语句,则返回所有格式的文件名。如调用
pth = [‘b/aa.gif’,[..],..]的内容,这就是path.join的作用。
然后将文件名列表pth中读取所有文件,并换成JPEG格式:
from PIL import Image
import os
for img in pth:
outfile = os.path.splitext(img)[0] + '.jpg'
if img != outfile:
try:
Image.open(img).save(outfile)
except IOError:
print 'can not convert ',img
图像不论是什么格式,除了后缀变为’jpg’,上述代码的新文件名和原文件名相同。
最新文章
- android 四大组件之---Service
- hdu 1166 敌兵布阵(树状数组)
- 使用SharePoint 2010 母版页
- 面试:浅谈tcp/udp
- Codeforces Gym 100637B B. Lunch 找规律
- webdriver介绍&;与Selenium RC的比较
- es6基础系列二:Number
- 什么是内部类? Static Nested Class 和 Inner Class 的不同。
- Python-time模块-58
- css中border画三角形
- 玩弄 python 正则表达式
- Java并发编程(2) AbstractQueuedSynchronizer的内部结构
- 内网安全监控和预警平台架构设想(OSSIM)
- html/css/javascript知识点集锦;完全小白开搞web编程
- 本人编写的一份前端vue面试题
- 移动端与PHP服务端接口通信流程设计(基础版)
- js查看对象内容
- Cmake 01
- XP右键菜单添加“打开所在文件夹”功能
- Django 之 ModelForm 组件
热门文章
- 【Winform-自定义控件】DataGridView 单元格合并和二维表头
- 字符串操作-格式化输出-Python
- Prism框架的Module(模块化)编程
- BZOJ 3073: [Pa2011]Journeys Dijkstra+线段树优化建图
- python数据分析-数据导入
- 学习andriod开发之 异步加载图片(二)--- 使用其他进度条
- Vue_(组件)实例方法
- Eclipse在线安装插件进度缓慢问题
- Linux sssd 进程 ldap 客户端配置
- linux shell 值coredump suid_dumpable和 gdb解析coredump文件