例如有一幅图,文件名为“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’,上述代码的新文件名和原文件名相同。

最新文章

  1. android 四大组件之---Service
  2. hdu 1166 敌兵布阵(树状数组)
  3. 使用SharePoint 2010 母版页
  4. 面试:浅谈tcp/udp
  5. Codeforces Gym 100637B B. Lunch 找规律
  6. webdriver介绍&与Selenium RC的比较
  7. es6基础系列二:Number
  8. 什么是内部类? Static Nested Class 和 Inner Class 的不同。
  9. Python-time模块-58
  10. css中border画三角形
  11. 玩弄 python 正则表达式
  12. Java并发编程(2) AbstractQueuedSynchronizer的内部结构
  13. 内网安全监控和预警平台架构设想(OSSIM)
  14. html/css/javascript知识点集锦;完全小白开搞web编程
  15. 本人编写的一份前端vue面试题
  16. 移动端与PHP服务端接口通信流程设计(基础版)
  17. js查看对象内容
  18. Cmake 01
  19. XP右键菜单添加“打开所在文件夹”功能
  20. Django 之 ModelForm 组件

热门文章

  1. 【Winform-自定义控件】DataGridView 单元格合并和二维表头
  2. 字符串操作-格式化输出-Python
  3. Prism框架的Module(模块化)编程
  4. BZOJ 3073: [Pa2011]Journeys Dijkstra+线段树优化建图
  5. python数据分析-数据导入
  6. 学习andriod开发之 异步加载图片(二)--- 使用其他进度条
  7. Vue_(组件)实例方法
  8. Eclipse在线安装插件进度缓慢问题
  9. Linux sssd 进程 ldap 客户端配置
  10. linux shell 值coredump suid_dumpable和 gdb解析coredump文件