python处理图片之PIL模块简单使用方法


Posted in Python onMay 11, 2015

本文实例讲述了python处理图片之PIL模块简单使用方法。分享给大家供大家参考。具体实现方法如下:

#!/usr/bin/env python  
#encoding: utf-8 
import Image  
class myimg: 
  def __init__(self, open_file, save_file): 
    self.img = Image.open(open_file) 
    self.save_file = save_file 
  def Change_Size(self, percent=100, height=None, width=None): 
    ''''' 
    percent:以百分比来决定大小 
    height, width:以指定的高、宽来决定大小 
    ''' 
    if not (height and width): 
      width,height = self.img.size   
    new_img = self.img.resize((width*percent/100,height*percent/100),Image.BILINEAR) 
    new_img.save(self.save_file) 
  def Rotation(self, angle): 
    ''''' 
    angle: 旋转的度数 
    ''' 
    rot_img = self.img.rotate(angle) #旋转 
    rot_img.save(self.save_file) 
  def Save_as(self, filename): 
    ''''' 
    filename: 另存为图片格式,直接根据后缀名来 
    ''' 
    self.img.save(filename)  
  def Draw_Something(self): 
    ''''' 
        利用ImageDraw来画图形 
    ''' 
    import ImageDraw 
    draw = ImageDraw.Draw(self.img) 
    width,height = self.img.size 
    draw.line(((0,0),(width-1,height-1)),fill=255) #画直线 
    draw.line(((0,height-1),(width-1,0)),fill=255) 
    draw.arc((0,0,width-1,height-1),0,360,fill=255) #画椭圆 
    self.img.save(self.save_file) 
  def Enhance_Something(self): 
    ''''' 
        利用 ImageEnhance来增强图片效果 
    ''' 
    import ImageEnhance 
    brightness = ImageEnhance.Brightness(self.img) 
    bright_img = brightness.enhance(2.0) ##亮度增强 
    bright_img.save(self.save_file) 
    sharpness = ImageEnhance.Sharpness(self.img) 
    sharp_img = sharpness.enhance(7.0) #锐度增强 
    sharp_img.save(self.save_file) 
    contrast = ImageEnhance.Contrast(self.img) #对比度增强 
    contrast_img = contrast.enhance(2.0)  
    contrast_img.save(self.save_file) 
if __name__ == "__main__": 
  file_name = r"D:\test.png" 
  save_file = r"D:\save.png" 
  saveas_file = r"D:\save_as.bmp" 
  oimg = myimg(file_name, save_file) 
  oimg.Change_Size(30) 
  oimg.Rotation(45) 
  oimg.Save_as(saveas_file) 
  oimg.Draw_Something() 
  oimg.Enhance_Something()

原图:

python处理图片之PIL模块简单使用方法

处理过的画图:(锐化过的)

python处理图片之PIL模块简单使用方法

PS:此外还有另一个比较常用的模块,image模块。

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
深入理解Python装饰器
Jul 27 Python
对python读取CT医学图像的实例详解
Jan 24 Python
python如何获取当前文件夹下所有文件名详解
Jan 25 Python
python 利用文件锁单例执行脚本的方法
Feb 19 Python
详解解决Python memory error的问题(四种解决方案)
Aug 08 Python
Django xadmin开启搜索功能的实现
Nov 15 Python
Python列表list操作相关知识小结
Jan 29 Python
使用Python求解带约束的最优化问题详解
Feb 11 Python
python调用API接口实现登陆短信验证
May 10 Python
浅谈TensorFlow之稀疏张量表示
Jun 30 Python
Python基础 括号()[]{}的详解
Nov 07 Python
使用python创建股票的时间序列可视化分析
Mar 03 Python
python自定义解析简单xml格式文件的方法
May 11 #Python
python引用DLL文件的方法
May 11 #Python
深入解析Python中的WSGI接口
May 11 #Python
详细解析Python中__init__()方法的高级应用
May 11 #Python
从Python的源码来解析Python下的freeblock
May 11 #Python
详解Python的Django框架中的templates设置
May 11 #Python
Python素数检测的方法
May 11 #Python
You might like
PHP网页游戏学习之Xnova(ogame)源码解读(十二)
2014/06/25 PHP
使用ob系列函数实现PHP网站页面静态化
2014/08/13 PHP
PHPExcel导出2003和2007的excel文档功能示例
2017/01/04 PHP
微信公众号开发之获取位置信息php代码
2018/06/13 PHP
总结PHP中初始化空数组的最佳方法
2019/02/13 PHP
jquery.ui.progressbar 中文文档
2009/11/26 Javascript
jQuery1.3.2 升级到jQuery1.4.4需要修改的地方
2011/01/06 Javascript
jquery+CSS3模拟Path2.0动画菜单效果代码
2015/08/31 Javascript
使用bootstrap typeahead插件实现输入框自动补全之问题及解决办法
2016/07/07 Javascript
使用jsonp实现跨域获取数据实例讲解
2016/12/25 Javascript
JS实现的表头列头固定页面功能示例
2017/01/10 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
vue实现点击图片放大效果
2017/08/15 Javascript
Vue+mui实现图片的本地缓存示例代码
2018/05/24 Javascript
详解.vue文件解析的实现
2018/06/11 Javascript
详解Element-UI中上传的文件前端处理
2019/08/07 Javascript
[47:03]完美世界DOTA2联赛PWL S3 Galaxy Racer vs Phoenix 第二场 12.10
2020/12/13 DOTA
python绘图库Matplotlib的安装
2014/07/03 Python
Python中几种导入模块的方式总结
2017/04/27 Python
基于Python对象引用、可变性和垃圾回收详解
2017/08/21 Python
Python爬取十篇新闻统计TF-IDF
2018/01/03 Python
100行Python代码实现自动抢火车票(附源码)
2018/01/11 Python
python安装twisted的问题解析
2018/08/21 Python
Python 格式化打印json数据方法(展开状态)
2020/02/27 Python
部署Django到阿里云服务器教程示例
2020/06/03 Python
Python利用myqr库创建自己的二维码
2020/11/24 Python
用HTML5制作一个简单的弹力球游戏
2015/05/12 HTML / CSS
GAP欧盟网上商店:GAP EU
2016/09/13 全球购物
Myprotein瑞士官方网站:运动营养和健身网上商店
2019/09/25 全球购物
德国净水壶和滤芯品牌:波尔德PearlCo(家用净水器)
2020/04/29 全球购物
英语翻译系毕业生求职信
2013/09/29 职场文书
茶叶店创业计划书范文
2014/01/19 职场文书
演讲比赛的活动方案
2014/08/28 职场文书
开发房地产协议书
2014/09/14 职场文书
《家》读后感:万惜拯救,冷暖自知
2019/09/25 职场文书
简述python四种分词工具,盘点哪个更好用?
2021/04/13 Python