Python3中Pillow(PIL)介绍

Posted fengbingchun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python3中Pillow(PIL)介绍相关的知识,希望对你有一定的参考价值。

      PIL全称为Python Imaging Library,是Python中的免费开源图像处理库。PIL的最新版本为1.1.7,于2009年9月发布,支持Python的最高版本到2.7。原始的PIL开发于2011年停止。随后,一个名为Pillow的后续项目fork了PIL的repository并增加了对Python 3.x的支持。它已被采用作为Linux发行版中原始PIL的替代品

      Pillow代码在 https://github.com/python-pillow/Pillow ,最新发布版本为8.4.0,于2021年10月15号发布,它的license为HPND。Pillow和PIL不能共存于同一个环境中,在安装Pillow前,需要先卸载PIL。它支持Windows、Linux、macOS平台,可通过pip或conda安装,可使用以下命令通过conda安装指定的版本(注:安装conda后,pillow会被默认安装,只是版本可能会有些低或不是你需要的版本):

conda install pillow=8.4

      以下为测试代码:

from PIL import Image, ImageFilter

img = Image.open("../../test_data/lena.png") # 加载图像
width, height = img.size # 获得图像宽、高
print("src image size: %dx%d" % (width, height))

img2 = img.resize((128, 64))
print("dst image size: %dx%d" % (img2.size[0], img2.size[1]))
img2.save("../../test_data/resize.jpg", "jpeg") # 将缩放后的图像保存成jpeg格式

img3 = img.filter(ImageFilter.BLUR) # 图像模糊
img3.save("../../test_data/blur.png", "png") # 将模糊后的图像保存成png格式

gray = img.convert("L") # 图像转换: 转为灰度图
gray.save("../../test_data/gray.bmp", "bmp") # 将灰度图保存成bmp格式

quantize = gray.quantize(colors=16, kmeans=5) # 图像量化
quantize.save("../../test_data/quantize.png", "png")

crop = img.crop((64, 64, 248, 248)) # 图像剪切
crop.save("../../test_data/crop.png", "png")

pixel = img.getpixel((128, 64)) # 获取像素值
print("pixel value:", pixel)

rotate = img.rotate(90) # 图像旋转
rotate.save("../../test_data/rotate.png", "png")
rotate.show() # 显示图像
print("color mode:", rotate.mode) # get color mode: RGB
print("image format:", img.format) # get image format: PNG

print("test finish")

      GitHubhttps://github.com/fengbingchun/Python_Test

以上是关于Python3中Pillow(PIL)介绍的主要内容,如果未能解决你的问题,请参考以下文章

Pillow

Pillow处理图像模块

python pil 怎么安装

如何为 Python 3.6 安装 PIL/Pillow?

爬虫(十三):PIL模块

PIL和pillow