python-----PIL库的使用
一、什么是PIL库
1.PIL(Python Image Library)库是python语言的第三方库,具有强大的图像处理能力,不仅包含了丰富的像素、色彩操作功能,还可以用于图像的归档和批量处理能力。
2.PIL库主要有2个方面的功能:
(1) 图像归档:对图像进行批处理、生产图像预览、图像格式转换等。
(2) 图像处理:图像基本处理、像素处理、颜色处理等。
根据功能的不同,PIL库包括21个与图片相关的类,这些类可以被看作是子库或PIL库中的模块,例如:
Image,ImageChops,Imagecolor,ImageCrackCode,ImageDraw等等
二、PIL库的安装
注意:PIL库的名字是pillow,下载时用的是pillow,而不是PIL
在命令行中输入pip install pillow,就会自动下载
命令行快捷键win键+R键
按下确定键,就会出现命令行
三、PIL库的Image类解析
1.PIL库的引用(调用)
>>>from PIL import Image
2.Image类图像读取和创建方法
3.Image类的常用属性
4.Image类的序列图像操作方法
5. Image类的图像旋转和缩放方法
6.Image类的图像转换和保存方法
from PIL import Image
xiaogou=Image.open("C:\\Users\Administrator\Desktop\Python\\小狗.jpg")
xiaogou.thumbnail((128,128))
xiaogou.save("C:\\Users\Administrator\Desktop\Python\suoluetu","JPEG")
xiaogou1=xiaogou.filter(ImageFilter.CONTOUR)
7.Image类的图像像素和通道处理方法
四、图像过滤(ImageFilter子库)
1.调用ImageFilter类
from PIL import ImageFilter
2.ImageFilter类预定义图像过滤方法
from PIL import Image
from PIL import ImageFilter
xiaogou=Image.open("C:\\Users\Administrator\Desktop\Python\小狗.jpg")
xiaogou1=xiaogou.filter(ImageFilter.CONTOUR)
xiaogou1.save('C:\\Users\Administrator\Desktop\Python\guolvtu.jpg')
五、图像增强(ImageEnhance子库)
1.调用ImageEnhance
2.ImageEnhance类图像增强与滤镜方法
from PIL import Image
from PIL import ImageEnhance
xg = Image.open("C:\\Users\Administrator\Desktop\Python\pp1.jpg")
xg1 = ImageEnhance.Brightness(xg) #选择亮度
xg1.enhance(2).save("C:\\Users\Administrator\Desktop\Python\pp2.jpg")
六、制作动态图(GIF图)
import imageio
savename = "C:\\Users\Administrator\Desktop\Python\动态图.GIF"
#准备制作的图像名称
filenames = ["C:\\Users\Administrator\Desktop\Python\p1.jpg","C:\\Users\Administrator\Desktop\Python\p2.jpg","C:\\Users\Administrator\Desktop\Python\p3.jpg"]
frames = []
for name in filenames:
frames.append(imageio.imread(name))
imageio.mimsave(savename,frames,'GIF',duration=1)
此处已完结,谢谢!
一秒钟带你走进P图世界-----(python)PIL库的使用的更多相关文章
-
小丁带你走进git的世界三-撤销修改
一.撤销指令 git checkout还原工作区的功能 git reset 还原暂存区的功能 git clean 还没有被添加进暂存区的文件也就是git还没有跟踪的文件可以使用这个命令清除他们 g ...
-
小丁带你走进git的世界二-工作区暂存区分支
小丁带你走进git的世界二-工作区暂存区分支 一.Git基本工作流程 1.初始化一个仓库 git init git clone git仓库分为两种情况: 第一种是在现有项目或目录下导入所有文件到 ...
-
小丁带你走进git的世界三-撤销修改(转)
一.撤销指令 git checkout还原工作区的功能 git reset 还原暂存区的功能 git clean 还没有被添加进暂存区的文件也就是git还没有跟踪的文件可以使用这个命令清除他们 g ...
-
带你走进rsync的世界
导读 Rsync(remote synchronize)是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件,也可以使用 Rsync 同步本地硬盘中的不同目录.rsync共有3种使用方 ...
-
人人都可以写的一个Python可视化小程序,带你走进编程的世界
当年的PHP号称是最好的编程语言,今天的Python就是最简单的编程语言,一个小小的程序,寥寥几行代码,带你体验一下编程的乐趣. 最简单的编程语言 今天要介绍的小工具是Python环境安装好之后,自带 ...
-
小丁带你走进git的世界四-重写历史记录
一.git对象文件创建 开篇先补充一个知识点,就是比如我建立一个文件之后,使用git add就会生成一个git对象,但是git对象生成后可以在.git/objects里面对应,首先我们来初始化一个仓库 ...
-
Java第一天,带你走进编程的世界,我的第一个程序
要想彻底了解Java是什么,我就得首先了解编程语言的发展史.编程语言最初的形势是"0101......"数据编程,也就是机器语言.机器语言可以说是一种几乎没有人能够看懂的编程语言, ...
-
瞄一眼,带你走进SparkSQL的世界
本文由 网易云发布. 作者:范欣欣(本篇文章仅限知乎内部分享,如需转载,请取得作者同意授权.) 最近想来,大数据相关技术与传统型数据库技术很多都是相互融合.互相借鉴的.传统型数据库强势在于其久经考验 ...
-
具体解释C++引用——带你走进引用的世界
一.介绍引用 首先说引用是什么,大家能够记住,引用就是一个别名,比方小王有个绰号叫小狗.他的妈妈喊小狗回家吃饭.那就是在喊小王回家吃饭. 接下来我们用两行代码来声明一个引用(就拿小王和小狗来说吧 ...
随机推荐
-
通过挂载系统光盘搭建本地yum仓库
1,配置本地yum源: 把系统光盘挂载到文件夹aaa(aaa为自己创建的文件夹). [root@localhost /]# mount dev/cdrom /aaa 2,修改yum配置文件: yum的 ...
-
jQuery triger与trigerHandler的区别
trigger(event, [data]) 与 triggerHandler(event, [data]) 都是用于触发一个事件. 其两者的区别在于,如果触发的事件是有浏览器默认行为的,trigge ...
-
79. 212. Word Search *HARD* -- 字符矩阵中查找单词
79. Word Search Given a 2D board and a word, find if the word exists in the grid. The word can be co ...
-
MongoDB 权限认证
MongoDB已经使用很长一段时间了,基于MongoDB的数据存储也一直没有使用到权限访问(MongoDB默认设置为无权限访问限制),因为考虑到数据安全的原因特地花了一点时间研究了一下,网上搜出来的解 ...
-
典型的团队VS优秀团队
如果做不了优秀的团队,那么就做一个典型的团队,公司需要这么一个神话,需要这么一个领头羊. 我在进入某公司后,第一个项目用的是"敏捷开发方法".而公司的理念恰恰是:开发.协作性强.扁 ...
-
kenlm的使用
1.训练模型 install_path/bin/lmplz -o -S % -T /temp <text >text.arpa -o 表示n_gram 中的n(必选) -S 内存使用( ...
-
我看到的最棒的Twisted入门教程!
http://www.douban.com/note/232204441/ http://www.cnblogs.com/sevenyuan/archive/2010/11/18/1880681.ht ...
-
将bmp文件转换为jpg文件
procedure TForm1.Button1Click(Sender: TObject);(*压缩MBP为JPEG;但是没有提供压缩比可选项凑合用吧,大概1/3 ^_^:Note:必须加上JPEG ...
- 常用SEO优化
-
HttpServletResponse对象(二)之常见应用
---恢复内容开始--- 1. 使用HttpServletResponse对象实现文件下载 文件下载功能是web开发中经常使用到的功能,使用HttpServletResponse对象就可以实现文件的下 ...