python3 pil

梦馨娴 3周前 8浏览 0评论

Python3 PIL(Python Imaging Library)是Python编程语言的图像处理库。它需要使用pip安装,可以在Python3的Windows、Linux和MacOSX操作系统中使用。Pillow是PIL的分支,是一个友好且易于使用的库,它与PIL具有相同的接口。

Python3 PIL可用于打开、编辑、保存各种类型的图像。可以使用它进行图像缩放、裁剪、旋转、反转、拷贝和粘贴等操作。此外,可以使用Python3 PIL进行图像过滤、图像增强和生成缩略图等操作。Pillow库能够支持的图像文件格式包括JPEG、PNG、BMP、GIF、EPS、PCX、PDF、PSD、TIFF和XBM等。

#安装Pillow:
pip install Pillow

#打开和显示图像:
from PIL import Image

img = Image.open('picture.jpg')
img.show()

当出现下面的错误时表示Pillow库无法支持打开的图像格式:

OSError: [Errno 26] Text file busy: 'picture.jpg'

这种情况下,可以使用以下代码来打开图像:

#打开和显示图像:
from PIL import Image

with open('picture.jpg', 'rb') as f:
    img = Image.open(f)
    img.show()

如果需要进行图像缩放、裁剪等操作,那么可以使用以下代码:

#进行图像缩放、裁剪等操作:
from PIL import Image

img = Image.open('picture.jpg')

#缩放:
img_resized = img.resize((600, 400))
img_resized.show()

#裁剪:
box = (100, 100, 500, 300) #(左,上,右,下) 
img_crop = img.crop(box)
img_crop.show()

使用Python3 PIL进行图像旋转时可以使用以下代码:

#进行图像旋转:
from PIL import Image

img = Image.open('picture.jpg')

#顺时针90°:
img_rotate = img.rotate(90)
img_rotate.show()

如果需要反转图像,可以使用以下代码:

#进行水平和垂直反转:
from PIL import ImageOps

img = Image.open('picture.jpg')

#水平翻转:
img_flip_horizontal = ImageOps.mirror(img)
img_flip_horizontal.show()

#垂直翻转:
img_flip_vertical = ImageOps.flip(img)
img_flip_vertical.show()

如果需要加入给定尺寸和颜色模式的背景颜色,请使用以下代码:

#加入背景颜色并保存:
from PIL import Image

img = Image.open('picture.jpg')

#定义背景颜色:
size = (600, 400)
background_color = (255, 255, 255)

#打开尺寸为(600,400),颜色模式为RGB,背景色为White的新图片:
img_background = Image.new('RGB', size, background_color)
img_background.paste(img, (100, 100)) #(100,100)为中心的图片

#保存图片:
img_background.save('picture_background.jpg')

最后,如果需要在Python3中使用Pillow库生成图像缩略图,可以使用以下代码:

#生成缩略图并保存:
from PIL import Image

img = Image.open('picture.jpg')

#生成尺寸为(200,200)的缩略图:
img_thumbnail = img.thumbnail((200,200))

#保存缩略图:
img_thumbnail.save('picture_thumbnail.jpg')