python PIL库的使用
)PIL可以做很多和图像处理相关的事情:
- 图像归档(Image Archives)。PIL非常适合于图像归档以及图像的批处理任务。你可以使用PIL创建缩略图,转换图像格式,打印图像等等。
- 图像展示(Image Display)。PIL较新的版本支持包括Tk PhotoImage,BitmapImage还有Windows DIB等接口。PIL支持众多的GUI框架接口,可以用于图像展示。
- 图像处理(Image Processing)。PIL包括了基础的图像处理函数,包括对点的处理,使用众多的卷积核(convolution kernels)做过滤(filter),还有颜色空间的转换。PIL库同样支持图像的大小转换,图像旋转,以及任意的仿射变换。PIL还有一些直方图的方法,允许你展示图像的一些统计特性。这个可以用来实现图像的自动对比度增强,还有全局的统计分析等。
)PIL库Image类介绍
Image类中的函数
1. open(filename) : 根据参数加载图像文件。建议采用文件的全路径,如下面的文件位于d盘中
|
2. new(mode,size,color): 这个函数创建一幅给定模式(mode)和尺寸(size)的图片,如果省略color参数,则创建的图片被黑色填充满,如果 color 参数是 None 值,则图片还没初始化。
3. open(StringIO.StringIO(buffer)): 从字符串中获取图像。
4.frombytes(mode,size,data):根据像素点(data)创建图像
5.verify :对图像文件完整性进行检查,返回异常。
Image类的常用属性
1.format:识别图像格式或来源,如果图像不是从文件中读取,值为none
2.mode:图像的色彩模式,'L'为灰色图像,'RGB'为真彩色图像,"CMYk"为出版图像。
3.size:图像宽度和高度,单位是像素,返回值为二元元组。
4.palette:调色板属性,返回一个ImagePalette类型
查看已读取的图像文件的属性如下:
print(im.format,im.size,im.mode) JPEG (900,598),RGB |
Image类的方法
1.seek(frame): 跳转并返回图像中的指定帧
2.tell():返回当前帧的序号
3.save(filename,format):将图像保存为filename文件名,format是图片格式
4.convert(mode):使用不同的参数,转换图像为新的模式
5.thumbnail(size):创建图像的缩略图,size是缩略图尺寸的二元元祖
6.resize(size):按size大小调整图像,生成副本。
7.rotate(angle):按angle角度旋转角度,生成副本。
8.point(func):根据函数func的功能对每个元素进行运算,返回图像副本、
9.split(): 提取RGB图像的每个颜色通道,返回图像副本、
10.merge(mode,bands):合并通道,其中mode表示色彩,bands表示新的色彩通道。
11.blend(im1,im2,alpha): 将两幅图片im1和im2按照如下公式插值后生成新的图im3,im1*(1.0-alpha)+im2*alpha
我做的一个实例:
from PIL import Image from PIL import ImageFilter from PIL import ImageEnhance im=Image.open("d:\\十二星座.png") om=im.filter(ImageFilter.CONTOUR) om=ImageEnhance.Contrast(im) om.enhance(120).save("d:\\十二星座.png") |
一开始的图片是
使用Image类后
2.对一张图片生成缩略图
from PIL import Image
from PIL import ImageFilter
from PIL import ImageEnhance
im=Image.open("d:\\猴猴厚.png")
im.thumbnail((128,128))
im.save("d:\\猴猴厚.png","png")
两张图做对比:
python PIL库的使用的更多相关文章
- Python PIL 库的应用
PIL (Python Image Library) 库是Python 语言的一个第三方库,PIL库支持图像存储.显示和处理,能够处理几乎所有格式的图片. 一.PIL库简介 1. PIL库主要有2个方 ...
- Python PIL库学习笔记
1.PIL简介 Python Imaging Library(缩写为PIL)(在新的版本中被称为Pillow)是Python编程语言的开源库,它增加了对打开,操作和保存许多不同图像文件格式的支持.它适 ...
- 使用Python PIL库中的Image.thumbnail函数裁剪图片
今天,是我来到博客园的第五天,发现自己还没有头像,想着上传ubuntu系统中我很喜欢的一个背景图片来当头像,但是因为图片过大,上传失败了.那么,我们如何使用python中强大的PIL库来进行图片裁剪呢 ...
- python PIL 库处理文件
通过PIL库提供的API接口可以很方便的处理图像,功能十分强大: 最近有一个替换png背景色的需求,替换背景色的同时又不能够覆盖原来的文字,之前利用perl 的CD 模块一直没能够正确处理,最终用PI ...
- Python PIL库之Image注解(API)
http://blog.csdn.net/xiezhiyong3621/article/details/8499543 class Image Methods defined here: __geta ...
- 基于Python PIL实现简单图片格式转化器
基于Python PIL实现简单图片格式转化器 目录 基于Python PIL实现简单图片格式转化器 1.简介 2.前期资料准备 2.1.1如何实现图片格式转换? 2.1.2如何保存需要大小的图片? ...
- Python 之 使用 PIL 库做图像处理
http://www.cnblogs.com/way_testlife/archive/2011/04/17/2019013.html Python 之 使用 PIL 库做图像处理 1. 简介. 图像 ...
- 关于python下安装PIL库遇到的问题及解决办法
关于python下安装PIL库遇到的问题及解决办法 关于python下安装PIL库遇到的问题及解决办法 :在下面这个网址下载pipllow(a replacement for PIL) www.lfd ...
- 一秒钟带你走进P图世界-----(python)PIL库的使用
python-----PIL库的使用 一.什么是PIL库 1.PIL(Python Image Library)库是python语言的第三方库,具有强大的图像处理能力,不仅包含了丰富的像素.色彩操作功 ...
随机推荐
- Mysql设计索引的原则
内容来自书籍<深入浅出MySQL++数据库开发.优化与管理维护+第2版+唐汉明> 设计索引的原则1. 搜索的索引列,不一定是所要选择的列.换句话说,最适合索引的列是出现在 WHERE 子句 ...
- javascript总结19:javascript 使用概述
1 JS作用 1.验证表单(以前的网速慢)`` 2.页面特效(PC端的网页效果) 3.移动端(移动web和app) 4.异步和服务器交互(AJAX) 5.服务端开发(nodejs) 2 浏览器的主要构 ...
- 编写高质量代码改善C#程序的157个建议——建议157:从写第一个界面开始,就进行自动化测试
建议157:从写第一个界面开始,就进行自动化测试 如果说单元测试是白盒测试,那么自动化测试就是黑盒测试.黑盒测试要求捕捉界面上的控件句柄,并对其进行编码,以达到模拟人工操作的目的.具体的自动化测试请学 ...
- Getting Started with Node.js on Heroku
NodeJS应用托管平台 https://devcenter.heroku.com/articles/getting-started-with-nodejs#dyno-sleeping-and-sca ...
- makeword()
MAKEWORD(学习之用,转载) MAKEWORD 宏 平台:SDK 这个宏创建一个被指定变量连接而成的WORD变量.返回一个WORD变量. (注:typedef unsigned short WO ...
- 第六周—Alpha阶段项目复审(五饭来了吗)
第六周--Alpha阶段项目复审(五饭来了吗) 以下部分排名只是个人观点: 小组 优点 缺点,bug报告 名次 中午吃啥队 较完整的团体结构,可提供给商家和用户 感觉界面再优化一下就很棒了 1 天冷记 ...
- [Erlang03]Erlang有哪些好用的静态分析工具?
1. dialyzer Dialyzer starts its analysis from either debug-compiled BEAM bytecode or from Erlang sou ...
- MVVM ICommand.CanExecute parameter is null
CommandParameter="{Binding}" 改为 CommandParameter="{Binding DataContext,RelativeSource ...
- [C#]C#中字符串的操作
1.Replace(替换字符):public string Replace(char oldChar,char newChar);在对象中寻找oldChar,如果寻找到,就用newChar将oldCh ...
- asp.net mvc+webuploader大文件分片上传
首先是前端: var GUID = WebUploader.Base.guid();//一个GUID uploadereditsVideo = WebUploader.create({ // swf文 ...