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编程中的字符串
Oct 14 Python
利用Python画ROC曲线和AUC值计算
Sep 19 Python
Python简单实现安全开关文件的两种方式
Sep 19 Python
Python利用QQ邮箱发送邮件的实现方法(分享)
Jun 09 Python
Python系统监控模块psutil功能与经典用法分析
May 24 Python
在PyCharm下使用 ipython 交互式编程的方法
Jan 17 Python
Python中按键来获取指定的值
Mar 02 Python
GitHub 热门:Python 算法大全,Star 超过 2 万
Apr 29 Python
解决Python pip 自动更新升级失败的问题
Feb 21 Python
mac在matplotlib中显示中文的操作方法
Mar 06 Python
使用Pytorch搭建模型的步骤
Nov 16 Python
python字符串拼接.join()和拆分.split()详解
Nov 23 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
摘自织梦CMS的HTTP文件下载类
2015/08/08 PHP
jquery 事件对象属性小结
2010/04/27 Javascript
ExtJS 入门
2010/10/29 Javascript
js 函数的副作用分析
2011/08/23 Javascript
javascript自启动函数的问题探讨
2013/10/05 Javascript
jquery实现的美女拼图游戏实例
2015/05/04 Javascript
移动端点击图片放大特效PhotoSwipe.js插件实现
2016/08/25 Javascript
省市区三级联动jquery实现代码
2020/04/15 Javascript
JS简单生成由字母数字组合随机字符串示例
2018/05/25 Javascript
angularJs select绑定的model取不到值的解决方法
2018/10/08 Javascript
jQuery动态操作表单示例【基于table表格】
2018/12/06 jQuery
原生js实现获取form表单数据代码实例
2019/03/27 Javascript
vue多页面项目中路由使用history模式的方法
2019/09/23 Javascript
原生js+canvas实现验证码
2020/11/29 Javascript
修改NPM全局模式的默认安装路径的方法
2020/12/15 Javascript
Element-ui 自带的两种远程搜索(模糊查询)用法讲解
2021/01/29 Javascript
[03:12]TI9战队档案 - Virtus Pro
2019/08/20 DOTA
Python re模块介绍
2014/11/30 Python
python爬取淘宝商品详情页数据
2018/02/23 Python
解决每次打开pycharm直接进入项目的问题
2018/10/28 Python
Python中dict和set的用法讲解
2019/03/28 Python
Python数据结构与算法(几种排序)小结
2019/06/22 Python
HTML5 localStorage使用总结
2017/02/22 HTML / CSS
StudentUniverse英国:学生航班、酒店和旅游
2019/08/25 全球购物
应届生财务管理求职信
2013/11/06 职场文书
公司会计岗位职责
2014/02/13 职场文书
技能比赛获奖感言
2014/02/14 职场文书
挂靠协议书范本
2014/04/22 职场文书
安全生产月演讲稿
2014/05/09 职场文书
银行党的群众路线教育实践活动对照检查材料
2014/09/25 职场文书
张家口市高新区党工委群众路线教育实践活动整改方案
2014/10/25 职场文书
联欢会开场白
2015/06/01 职场文书
预备党员入党思想汇报(范文)
2019/08/14 职场文书
JavaScript嵌入百度地图API的最详细方法
2021/04/16 Javascript
Python实现打乒乓小游戏
2021/09/25 Python
Mysql Innodb存储引擎之索引与算法
2022/02/15 MySQL