Python Pillow教程,为了显示图像,Pillow库中使用了一个图像类。Pillow包内的图像模块包含一些重要的内置功能,如加载图像或创建新图像等。
Pillow 打开、旋转和显示一个图像
为了加载图像,我们只需从Pillow中导入图像模块,并调用Image.open(),传递图像文件名。
我们将不调用Pillow模块,而是调用PIL模块,以使其向后兼容一个名为Python Imaging Library (PIL)的旧模块。这就是为什么我们的代码以"from PIL import Image "而不是"from Pillow import Image "开始。
接下来,我们要通过调用Image.open()函数来加载图像,它返回一个Image对象数据类型的值。我们对图像对象所做的任何修改都可以用save()方法保存到一个图像文件中。我们用Image.open()收到的图像对象,以后可以用来调整大小、裁剪、绘制或对这个图像对象进行其他的图像处理方法调用。
Pillow 示例
下面的例子演示了使用Python Pillow旋转图像的过程 —
from PIL import Image
#使用Image模块打开图像
im = Image.open("images/cuba.jpg")
#显示实际的图像
im.show()
#显示旋转的图像
im = im.rotate(45)
im.show()
Pillow 输出
如果你将上述程序保存为Example.py并执行,它将使用标准的PNG显示工具显示原始和旋转的图像,如下所示
实际的图像
旋转的图像(45度)
Pillow Image模块的属性
图像类的实例有一些属性。
Image.filename
这个函数是用来获取图像的文件名或路径的。
>>>image = Image.open('beach1.jpg')
>>> image.filename
'beach1.jpg'
Image.format
这个函数返回图像文件的文件格式,如’JPEG’、’BMP’、’PNG’等。
>>> image = Image.open('beach1.jpg')
>>>
>>> image.format
'JPEG'。
Image.mode
它用于获取图像所使用的像素格式。典型的值是 "1"、"L"、"RGB "或 "CMYK"。
>>> image.mode
'RGB
Image.size
它返回由图像的高度和重量组成的元组。
>>> Image.size
(1280, 721)
Image.width
它只返回图像的宽度。
>>> image.width
1280
Image.height
它只返回图像的高度。
>>> image.height
721
Image.info
它返回一个持有与图像相关的数据的字典。
>>> image.info
{'jfif': 257, 'jfif_version': (1, 1), 'dpi': (300, 300), 'jfif_unit': 1, 'jfif_density': (300, 300), 'exif': b "Exif\x00\x00MM\x00*\x00\x00\x00
....
....
\xeb\x00\x00'\x10\x00\x00\xd7\xb3\x00\x00\x03\xe8"}
Image.palette
它返回调色板表,如果有的话。
>>> image.palette