PIL(Python Image Library)是python的第三方图像处理库,PIL的功能非常的强大,几乎被认定是Python的官方图像处理库了。

由于PIL仅支持到python2.7于是一群志愿者在PIL的基础上创建了兼容的版本,名字叫Pillow,支持最新的python3,而且扩容了很多特性,所以在python3我们可以直接安装Pillow。

我们可以去官网查看它的资料:http://effbot.org/

它可以做的事情:

  • 图像归档(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模块                                    

Image模块是PIL库基本的核心类,该模块提供了很多工厂功能,比如加载图像和创建新图像。以下介绍它的一些基本用法

open(filename,mode):打开一张图像

from PIL import Image

img = Image.open(r'D:\workspace\pachong\ceshi\timg.jpg', 'r')
print(img,type(img))

可以看到:

# 获得图像的高和宽
h, w = img.size
# 获得图像的格式
geshi = img.format
# 获得图像的模式
mo = img.mode
# 将文件重新保存为time.png
img.save('time', 'png')
# 创建缩略图
img.thumbnail((50,50),resample=Image.BICUBIC)
img.show()
# 保存与图像数据相关的字典
dic = img.info
# 验证文件是否损坏,如果损坏回报异常
img.verify()
# 翻转图像
new_img = img.transpose(Image.FLIP_LEFT_RIGHT)
new_img.show()

可以是下面几种方法:FLIP_LEFT_RIGHT, FLIP_TOP_BOTTOM,ROTATE_90,ROTATE_180或 ROTATE_270。

# 显示图像
new_img.show()
# 两张图片混合,两个图像必须具有相同的大小和模式
Image.blend(image1,image2,alpha) ⇒图像
# 如果alpha为0.0,则返回第一个图像的副本。如果alpha为1.0,则返回第二个图像的副本。alpha值没有限制。
如有必要,剪切结果以适应允许的输出范围。
Image.eval(图像,功能) ⇒图像
# 将函数(应该采用一个参数)应用于给定图像中的每个像素
# 色素分离
r, g, b = img.split()
r.show()
g.show()
b.show()
# 旋转图像90度
img1 = img.rotate(90)
img1.show()
# 调整大小
img1 = img.resize((100, 100))
img1.show()
# 将一张图像粘贴到指定位置
im.paste(图像,方框)
# 调为映像分配存储并从文件(或从源,从延迟操作)加载它
pix = img.load
print(pix)
# 返回图像的直方图
img_lst = img.histogram()
im.copy() ⇒图像
#复制图像。如果您希望将内容粘贴到图像中,但仍保留原始图像,请使用此方法。

先简单总结到这里,Image模块单独使用率是比较低的,以后再总结PIL的其他模块。

python之PIL库(Image模块)的更多相关文章

  1. 一秒钟带你走进P图世界-----(python)PIL库的使用

    python-----PIL库的使用 一.什么是PIL库 1.PIL(Python Image Library)库是python语言的第三方库,具有强大的图像处理能力,不仅包含了丰富的像素.色彩操作功 ...

  2. Python关于PIL库的学习总结与成果展示

    一.关于PIL库的学习总结 PIL(Python Image Library)库是Python语言的第三方库,需要通过pip工具安装.安装PIL库的方法如下,需要注意,安装库的名字是pillow. : ...

  3. ❤️【Python从入门到精通】(二十六)用Python的PIL库(Pillow)处理图像真的得心应手❤️

    您好,我是码农飞哥,感谢您阅读本文,欢迎一键三连哦. 本篇重点介绍Python处理图像的标准库PIL库,处理图像真的的很方便. 干货满满,建议收藏,需要用到时常看看. 小伙伴们如有问题及需要,欢迎踊跃 ...

  4. Python之PIL库的运用、GIF处理

    一.PIL库简介 PIL(Python Image Library)库是Python语言的第三方库,它支持图像存储.显示和处理,它能够处理几乎所有图片格式,可以完成对图像的缩放.剪裁.折叠以及像图片添 ...

  5. Python之PIL库的运用、GIF处理h

    一.PIL库简介 PIL(Python Image Library)库是Python语言的第三方库,它支持图像存储.显示和处理,它能够处理几乎所有图片格式,可以完成对图像的缩放.剪裁.折叠以及像图片添 ...

  6. Python之PIL库

    Python PIL PIL (Python Image Library) 库是Python 语言的一个第三方库,PIL库支持图像存储.显示和处理,能够处理几乎所有格式的图片. 一.PIL库简介 1. ...

  7. python 利用PIL库进行更改图片大小的操作

    python 是可以利用PIL库进行更改图片大小的操作的,当然一般情况下是不需要的,但是在一些特殊的利用场合,是需要改变图片的灰度或是大小等的操作的,其实用python更改图片的大小还是蛮简单的,只需 ...

  8. python中PIL库的使用

    API参考 打开dos窗口,安装库: pip install pillow 很明显,图片有点大,咱们缩略一下: from PIL import Image im = Image.open(" ...

  9. python,pil库的小应用

    <pre>#euraxluo 5.15 #obj_1#跳一跳的外挂 from PIL import Image import subprocess import time import r ...

随机推荐

  1. ***CodeIgniter框架集成支付宝即时到账支付SDK

    本文为CI集成支付宝即时到账支付接口 1.下载支付宝官方demo ;即时到账交易接口(create_direct_pay_by_user)(DEMO下载) 原文地址:https://doc.open. ...

  2. Apache 80端口被占用

    前段时间停止了Apache,结果在打开的时候发现无法打开,80端口被占用,于是win+r 运行cmd 输入netstat -ano 可以看到80端口被PID4占用,于是打开任务管理器-进程-查看,选择 ...

  3. Linux 高阶命令进阶(一)

    Linux 高阶命令进阶 (一)输出重定向 1. > :正确覆盖输出,会覆盖掉原先的文件内容 把文本写入文档中                # vim test                 ...

  4. 网站发布出现“未能找到路径“path\bin\roslyn\csc.exe”....“和拒绝访问的解决办法

    最近在2017上新建了一个MVC项目,发布是出现了各种奇怪的问题,其中一个错误是: 未能找到路径“path\bin\roslyn\csc.exe”.... 经过网上搜寻资料发现罪魁祸首就是NUGET里 ...

  5. 浅谈Java反射

    什么是反射? JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属性:这种动态获取信息以及动态调用对象方法的功能称为java语 ...

  6. ImCash:币圈英文术语大全

    近年来随着数字货币的火热,在全世界范围内涌现出了一群数字货币的“发烧友”和忠实投资者,他们形成了自己的圈子“币圈”,并且有了自己的文化和语言,今天就让我们一起来了解一下外国币圈有哪些有意思的英文“专用 ...

  7. idea:程序包javax.servlet.http不存在

    原因:IntelliJ IDEA 缺少servlet-api.jar 这个.jar包 解决方法:由于tomcat的lib自带servlet-api.jar,可以直接导入tomcat中的jar包 1.F ...

  8. BigDecimal.valueOf

    Those are two separate questions: "What should I use for BigDecimal?" and "What do I ...

  9. linux中sogou输入法崩溃重启

    经常在linux中搜狗输入法用着用着就崩溃了,无法输入中文,又不想重启电脑,照着下面在终端输入命令可以重启输入法: 1.先关闭fcitx(小企鹅输入法,提供了良好的中文输入法环境) # killall ...

  10. wsl 子系统 用户目录位置

    C:\Users\DELL\AppData\Local\Packages\CanonicalGroupLimited.Ubuntu18.04onWindows_79rhkp1fndgsc\LocalS ...